@wagmi/core 0.3.4 → 0.3.7

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 (42) hide show
  1. package/chains/dist/wagmi-core-chains.cjs.dev.js +1 -1
  2. package/chains/dist/wagmi-core-chains.cjs.prod.js +1 -1
  3. package/chains/dist/wagmi-core-chains.esm.js +1 -1
  4. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +33 -11
  5. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +33 -11
  6. package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +33 -11
  7. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.dev.js +11 -9
  8. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.prod.js +11 -9
  9. package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.esm.js +11 -9
  10. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +20 -7
  11. package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +20 -7
  12. package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +20 -7
  13. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +29 -6
  14. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +29 -6
  15. package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +29 -6
  16. package/dist/{base-321ac87a.cjs.dev.js → base-147e77ca.cjs.dev.js} +6 -4
  17. package/dist/{base-6841ebe0.cjs.prod.js → base-f5e9d7e7.cjs.prod.js} +6 -4
  18. package/dist/{base-41fb6637.esm.js → base-f818d190.esm.js} +7 -5
  19. package/dist/{chains-0dd661ab.cjs.prod.js → chains-01801dff.cjs.prod.js} +4 -0
  20. package/dist/{chains-98e2e613.cjs.dev.js → chains-1b1bdb4e.cjs.dev.js} +4 -0
  21. package/dist/{chains-a0a80d94.esm.js → chains-541a65cc.esm.js} +4 -0
  22. package/dist/{client-4172f963.cjs.dev.js → client-b9a38d26.cjs.dev.js} +71 -14
  23. package/dist/{client-87c1ff8b.esm.js → client-ba0c162e.esm.js} +71 -14
  24. package/dist/{client-a06c45f3.cjs.prod.js → client-d8761bad.cjs.prod.js} +71 -14
  25. package/dist/declarations/src/actions/accounts/connect.d.ts +3 -1
  26. package/dist/declarations/src/actions/network-status/fetchFeeData.d.ts +3 -3
  27. package/dist/declarations/src/client.d.ts +2 -1
  28. package/dist/declarations/src/connectors/base.d.ts +7 -2
  29. package/dist/declarations/src/connectors/coinbaseWallet.d.ts +4 -2
  30. package/dist/declarations/src/connectors/injected.d.ts +9 -1
  31. package/dist/declarations/src/connectors/metaMask.d.ts +2 -2
  32. package/dist/declarations/src/connectors/mock/connector.d.ts +6 -2
  33. package/dist/declarations/src/connectors/mock/provider.d.ts +1 -1
  34. package/dist/declarations/src/connectors/walletConnect.d.ts +7 -2
  35. package/dist/declarations/src/types/index.d.ts +2 -0
  36. package/dist/wagmi-core.cjs.dev.js +23 -12
  37. package/dist/wagmi-core.cjs.prod.js +23 -12
  38. package/dist/wagmi-core.esm.js +26 -15
  39. package/package.json +3 -3
  40. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.dev.js +1 -0
  41. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.prod.js +1 -0
  42. package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.esm.js +1 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var chains = require('../../dist/chains-98e2e613.cjs.dev.js');
5
+ var chains = require('../../dist/chains-1b1bdb4e.cjs.dev.js');
6
6
  require('../../dist/rpcs-9c4eb960.cjs.dev.js');
7
7
 
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var chains = require('../../dist/chains-0dd661ab.cjs.prod.js');
5
+ var chains = require('../../dist/chains-01801dff.cjs.prod.js');
6
6
  require('../../dist/rpcs-b3c52116.cjs.prod.js');
7
7
 
8
8
 
@@ -1,2 +1,2 @@
1
- export { g as arbitrum, h as arbitrumRinkeby, i as goerli, j as hardhat, k as kovan, l as localhost, m as mainnet, o as optimism, n as optimismKovan, p as polygon, q as polygonMumbai, r as rinkeby, s as ropsten } from '../../dist/chains-a0a80d94.esm.js';
1
+ export { g as arbitrum, h as arbitrumRinkeby, i as goerli, j as hardhat, k as kovan, l as localhost, m as mainnet, o as optimism, n as optimismKovan, p as polygon, q as polygonMumbai, r as rinkeby, s as ropsten } from '../../dist/chains-541a65cc.esm.js';
2
2
  import '../../dist/rpcs-7cfbd91c.esm.js';
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-321ac87a.cjs.dev.js');
5
+ var base = require('../../../dist/base-147e77ca.cjs.dev.js');
6
6
  var ethers = require('ethers');
7
7
  var utils = require('ethers/lib/utils');
8
- var chains = require('../../../dist/chains-98e2e613.cjs.dev.js');
8
+ var chains = require('../../../dist/chains-1b1bdb4e.cjs.dev.js');
9
9
  require('eventemitter3');
10
10
  require('../../../dist/rpcs-9c4eb960.cjs.dev.js');
11
11
 
@@ -34,8 +34,18 @@ var _provider = /*#__PURE__*/new WeakMap();
34
34
  var _isUserRejectedRequestError = /*#__PURE__*/new WeakSet();
35
35
 
36
36
  class CoinbaseWalletConnector extends base.Connector {
37
- constructor(config) {
38
- super(config);
37
+ constructor(_ref) {
38
+ let {
39
+ chains,
40
+ options
41
+ } = _ref;
42
+ super({
43
+ chains,
44
+ options: {
45
+ reloadOnDisconnect: false,
46
+ ...options
47
+ }
48
+ });
39
49
 
40
50
  base._classPrivateMethodInitSpec(this, _isUserRejectedRequestError);
41
51
 
@@ -78,6 +88,10 @@ class CoinbaseWalletConnector extends base.Connector {
78
88
  }
79
89
 
80
90
  async connect() {
91
+ let {
92
+ chainId
93
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
94
+
81
95
  try {
82
96
  const provider = await this.getProvider();
83
97
  provider.on('accountsChanged', this.onAccountsChanged);
@@ -87,9 +101,17 @@ class CoinbaseWalletConnector extends base.Connector {
87
101
  type: 'connecting'
88
102
  });
89
103
  const accounts = await provider.enable();
90
- const account = utils.getAddress(accounts[0]);
91
- const id = await this.getChainId();
92
- const unsupported = this.isChainUnsupported(id);
104
+ const account = utils.getAddress(accounts[0]); // Switch to chain if provided
105
+
106
+ let id = await this.getChainId();
107
+ let unsupported = this.isChainUnsupported(id);
108
+
109
+ if (chainId && id !== chainId) {
110
+ const chain = await this.switchChain(chainId);
111
+ id = chain.id;
112
+ unsupported = this.isChainUnsupported(id);
113
+ }
114
+
93
115
  return {
94
116
  account,
95
117
  chain: {
@@ -132,8 +154,8 @@ class CoinbaseWalletConnector extends base.Connector {
132
154
  async getProvider() {
133
155
  if (!base._classPrivateFieldGet(this, _provider)) {
134
156
  const chain = this.chains.find(chain => chain.id === this.options.chainId) || this.chains[0];
135
- const chainId = this.options.chainId || chain.id;
136
- const jsonRpcUrl = this.options.jsonRpcUrl || chain.rpcUrls.default;
157
+ const chainId = this.options.chainId || (chain === null || chain === void 0 ? void 0 : chain.id);
158
+ const jsonRpcUrl = this.options.jsonRpcUrl || (chain === null || chain === void 0 ? void 0 : chain.rpcUrls.default);
137
159
  let CoinbaseWalletSDK = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); })).default; // Workaround for Vite dev import errors
138
160
  // https://github.com/vitejs/vite/issues/7112
139
161
 
@@ -211,13 +233,13 @@ class CoinbaseWalletConnector extends base.Connector {
211
233
  }
212
234
  }
213
235
 
214
- async watchAsset(_ref) {
236
+ async watchAsset(_ref2) {
215
237
  let {
216
238
  address,
217
239
  decimals = 18,
218
240
  image,
219
241
  symbol
220
- } = _ref;
242
+ } = _ref2;
221
243
  const provider = await this.getProvider();
222
244
  return await provider.request({
223
245
  method: 'wallet_watchAsset',
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-6841ebe0.cjs.prod.js');
5
+ var base = require('../../../dist/base-f5e9d7e7.cjs.prod.js');
6
6
  var ethers = require('ethers');
7
7
  var utils = require('ethers/lib/utils');
8
- var chains = require('../../../dist/chains-0dd661ab.cjs.prod.js');
8
+ var chains = require('../../../dist/chains-01801dff.cjs.prod.js');
9
9
  require('eventemitter3');
10
10
  require('../../../dist/rpcs-b3c52116.cjs.prod.js');
11
11
 
@@ -34,8 +34,18 @@ var _provider = /*#__PURE__*/new WeakMap();
34
34
  var _isUserRejectedRequestError = /*#__PURE__*/new WeakSet();
35
35
 
36
36
  class CoinbaseWalletConnector extends base.Connector {
37
- constructor(config) {
38
- super(config);
37
+ constructor(_ref) {
38
+ let {
39
+ chains,
40
+ options
41
+ } = _ref;
42
+ super({
43
+ chains,
44
+ options: {
45
+ reloadOnDisconnect: false,
46
+ ...options
47
+ }
48
+ });
39
49
 
40
50
  base._classPrivateMethodInitSpec(this, _isUserRejectedRequestError);
41
51
 
@@ -78,6 +88,10 @@ class CoinbaseWalletConnector extends base.Connector {
78
88
  }
79
89
 
80
90
  async connect() {
91
+ let {
92
+ chainId
93
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
94
+
81
95
  try {
82
96
  const provider = await this.getProvider();
83
97
  provider.on('accountsChanged', this.onAccountsChanged);
@@ -87,9 +101,17 @@ class CoinbaseWalletConnector extends base.Connector {
87
101
  type: 'connecting'
88
102
  });
89
103
  const accounts = await provider.enable();
90
- const account = utils.getAddress(accounts[0]);
91
- const id = await this.getChainId();
92
- const unsupported = this.isChainUnsupported(id);
104
+ const account = utils.getAddress(accounts[0]); // Switch to chain if provided
105
+
106
+ let id = await this.getChainId();
107
+ let unsupported = this.isChainUnsupported(id);
108
+
109
+ if (chainId && id !== chainId) {
110
+ const chain = await this.switchChain(chainId);
111
+ id = chain.id;
112
+ unsupported = this.isChainUnsupported(id);
113
+ }
114
+
93
115
  return {
94
116
  account,
95
117
  chain: {
@@ -132,8 +154,8 @@ class CoinbaseWalletConnector extends base.Connector {
132
154
  async getProvider() {
133
155
  if (!base._classPrivateFieldGet(this, _provider)) {
134
156
  const chain = this.chains.find(chain => chain.id === this.options.chainId) || this.chains[0];
135
- const chainId = this.options.chainId || chain.id;
136
- const jsonRpcUrl = this.options.jsonRpcUrl || chain.rpcUrls.default;
157
+ const chainId = this.options.chainId || (chain === null || chain === void 0 ? void 0 : chain.id);
158
+ const jsonRpcUrl = this.options.jsonRpcUrl || (chain === null || chain === void 0 ? void 0 : chain.rpcUrls.default);
137
159
  let CoinbaseWalletSDK = (await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); })).default; // Workaround for Vite dev import errors
138
160
  // https://github.com/vitejs/vite/issues/7112
139
161
 
@@ -211,13 +233,13 @@ class CoinbaseWalletConnector extends base.Connector {
211
233
  }
212
234
  }
213
235
 
214
- async watchAsset(_ref) {
236
+ async watchAsset(_ref2) {
215
237
  let {
216
238
  address,
217
239
  decimals = 18,
218
240
  image,
219
241
  symbol
220
- } = _ref;
242
+ } = _ref2;
221
243
  const provider = await this.getProvider();
222
244
  return await provider.request({
223
245
  method: 'wallet_watchAsset',
@@ -1,7 +1,7 @@
1
- import { b as Connector, _ as _classPrivateMethodInitSpec, f as _defineProperty, g as _classPrivateFieldInitSpec, n as normalizeChainId, U as UserRejectedRequestError, j as _classPrivateFieldGet, i as _classPrivateFieldSet, c as ChainNotConfiguredError, h as _classPrivateMethodGet, A as AddChainError, e as SwitchChainError } from '../../../dist/base-41fb6637.esm.js';
1
+ import { b as Connector, _ as _classPrivateMethodInitSpec, f as _defineProperty, g as _classPrivateFieldInitSpec, n as normalizeChainId, U as UserRejectedRequestError, h as _classPrivateFieldGet, i as _classPrivateFieldSet, c as ChainNotConfiguredError, j as _classPrivateMethodGet, A as AddChainError, e as SwitchChainError } from '../../../dist/base-f818d190.esm.js';
2
2
  import { providers } from 'ethers';
3
3
  import { getAddress, hexValue } from 'ethers/lib/utils';
4
- import { a as allChains } from '../../../dist/chains-a0a80d94.esm.js';
4
+ import { a as allChains } from '../../../dist/chains-541a65cc.esm.js';
5
5
  import 'eventemitter3';
6
6
  import '../../../dist/rpcs-7cfbd91c.esm.js';
7
7
 
@@ -12,8 +12,18 @@ var _provider = /*#__PURE__*/new WeakMap();
12
12
  var _isUserRejectedRequestError = /*#__PURE__*/new WeakSet();
13
13
 
14
14
  class CoinbaseWalletConnector extends Connector {
15
- constructor(config) {
16
- super(config);
15
+ constructor(_ref) {
16
+ let {
17
+ chains,
18
+ options
19
+ } = _ref;
20
+ super({
21
+ chains,
22
+ options: {
23
+ reloadOnDisconnect: false,
24
+ ...options
25
+ }
26
+ });
17
27
 
18
28
  _classPrivateMethodInitSpec(this, _isUserRejectedRequestError);
19
29
 
@@ -56,6 +66,10 @@ class CoinbaseWalletConnector extends Connector {
56
66
  }
57
67
 
58
68
  async connect() {
69
+ let {
70
+ chainId
71
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
72
+
59
73
  try {
60
74
  const provider = await this.getProvider();
61
75
  provider.on('accountsChanged', this.onAccountsChanged);
@@ -65,9 +79,17 @@ class CoinbaseWalletConnector extends Connector {
65
79
  type: 'connecting'
66
80
  });
67
81
  const accounts = await provider.enable();
68
- const account = getAddress(accounts[0]);
69
- const id = await this.getChainId();
70
- const unsupported = this.isChainUnsupported(id);
82
+ const account = getAddress(accounts[0]); // Switch to chain if provided
83
+
84
+ let id = await this.getChainId();
85
+ let unsupported = this.isChainUnsupported(id);
86
+
87
+ if (chainId && id !== chainId) {
88
+ const chain = await this.switchChain(chainId);
89
+ id = chain.id;
90
+ unsupported = this.isChainUnsupported(id);
91
+ }
92
+
71
93
  return {
72
94
  account,
73
95
  chain: {
@@ -110,8 +132,8 @@ class CoinbaseWalletConnector extends Connector {
110
132
  async getProvider() {
111
133
  if (!_classPrivateFieldGet(this, _provider)) {
112
134
  const chain = this.chains.find(chain => chain.id === this.options.chainId) || this.chains[0];
113
- const chainId = this.options.chainId || chain.id;
114
- const jsonRpcUrl = this.options.jsonRpcUrl || chain.rpcUrls.default;
135
+ const chainId = this.options.chainId || (chain === null || chain === void 0 ? void 0 : chain.id);
136
+ const jsonRpcUrl = this.options.jsonRpcUrl || (chain === null || chain === void 0 ? void 0 : chain.rpcUrls.default);
115
137
  let CoinbaseWalletSDK = (await import('@coinbase/wallet-sdk')).default; // Workaround for Vite dev import errors
116
138
  // https://github.com/vitejs/vite/issues/7112
117
139
 
@@ -189,13 +211,13 @@ class CoinbaseWalletConnector extends Connector {
189
211
  }
190
212
  }
191
213
 
192
- async watchAsset(_ref) {
214
+ async watchAsset(_ref2) {
193
215
  let {
194
216
  address,
195
217
  decimals = 18,
196
218
  image,
197
219
  symbol
198
- } = _ref;
220
+ } = _ref2;
199
221
  const provider = await this.getProvider();
200
222
  return await provider.request({
201
223
  method: 'wallet_watchAsset',
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-321ac87a.cjs.dev.js');
6
- var client = require('../../../dist/client-4172f963.cjs.dev.js');
5
+ var base = require('../../../dist/base-147e77ca.cjs.dev.js');
6
+ var client = require('../../../dist/client-b9a38d26.cjs.dev.js');
7
7
  require('eventemitter3');
8
- require('../../../dist/chains-98e2e613.cjs.dev.js');
8
+ require('../../../dist/chains-1b1bdb4e.cjs.dev.js');
9
9
  require('../../../dist/rpcs-9c4eb960.cjs.dev.js');
10
10
  require('ethers');
11
11
  require('zustand/vanilla');
@@ -22,15 +22,17 @@ class MetaMaskConnector extends client.InjectedConnector {
22
22
  constructor() {
23
23
  let {
24
24
  chains,
25
- options
25
+ options: options_
26
26
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
27
+ const options = {
28
+ name: 'MetaMask',
29
+ shimDisconnect: true,
30
+ shimChainChangedDisconnect: true,
31
+ ...options_
32
+ };
27
33
  super({
28
34
  chains,
29
- options: {
30
- name: 'MetaMask',
31
- shimDisconnect: true,
32
- ...options
33
- }
35
+ options
34
36
  });
35
37
 
36
38
  base._classPrivateMethodInitSpec(this, _findProvider);
@@ -2,10 +2,10 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-6841ebe0.cjs.prod.js');
6
- var client = require('../../../dist/client-a06c45f3.cjs.prod.js');
5
+ var base = require('../../../dist/base-f5e9d7e7.cjs.prod.js');
6
+ var client = require('../../../dist/client-d8761bad.cjs.prod.js');
7
7
  require('eventemitter3');
8
- require('../../../dist/chains-0dd661ab.cjs.prod.js');
8
+ require('../../../dist/chains-01801dff.cjs.prod.js');
9
9
  require('../../../dist/rpcs-b3c52116.cjs.prod.js');
10
10
  require('ethers');
11
11
  require('zustand/vanilla');
@@ -22,15 +22,17 @@ class MetaMaskConnector extends client.InjectedConnector {
22
22
  constructor() {
23
23
  let {
24
24
  chains,
25
- options
25
+ options: options_
26
26
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
27
+ const options = {
28
+ name: 'MetaMask',
29
+ shimDisconnect: true,
30
+ shimChainChangedDisconnect: true,
31
+ ...options_
32
+ };
27
33
  super({
28
34
  chains,
29
- options: {
30
- name: 'MetaMask',
31
- shimDisconnect: true,
32
- ...options
33
- }
35
+ options
34
36
  });
35
37
 
36
38
  base._classPrivateMethodInitSpec(this, _findProvider);
@@ -1,7 +1,7 @@
1
- import { _ as _classPrivateMethodInitSpec, f as _defineProperty, h as _classPrivateMethodGet, g as _classPrivateFieldInitSpec, i as _classPrivateFieldSet, j as _classPrivateFieldGet } from '../../../dist/base-41fb6637.esm.js';
2
- import { I as InjectedConnector } from '../../../dist/client-87c1ff8b.esm.js';
1
+ import { _ as _classPrivateMethodInitSpec, f as _defineProperty, j as _classPrivateMethodGet, g as _classPrivateFieldInitSpec, i as _classPrivateFieldSet, h as _classPrivateFieldGet } from '../../../dist/base-f818d190.esm.js';
2
+ import { I as InjectedConnector } from '../../../dist/client-ba0c162e.esm.js';
3
3
  import 'eventemitter3';
4
- import '../../../dist/chains-a0a80d94.esm.js';
4
+ import '../../../dist/chains-541a65cc.esm.js';
5
5
  import '../../../dist/rpcs-7cfbd91c.esm.js';
6
6
  import 'ethers';
7
7
  import 'zustand/vanilla';
@@ -18,15 +18,17 @@ class MetaMaskConnector extends InjectedConnector {
18
18
  constructor() {
19
19
  let {
20
20
  chains,
21
- options
21
+ options: options_
22
22
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
23
+ const options = {
24
+ name: 'MetaMask',
25
+ shimDisconnect: true,
26
+ shimChainChangedDisconnect: true,
27
+ ...options_
28
+ };
23
29
  super({
24
30
  chains,
25
- options: {
26
- name: 'MetaMask',
27
- shimDisconnect: true,
28
- ...options
29
- }
31
+ options
30
32
  });
31
33
 
32
34
  _classPrivateMethodInitSpec(this, _findProvider);
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-321ac87a.cjs.dev.js');
5
+ var base = require('../../../dist/base-147e77ca.cjs.dev.js');
6
6
  var utils = require('ethers/lib/utils');
7
7
  var EventEmitter = require('eventemitter3');
8
8
  var ethers = require('ethers');
9
- var chains = require('../../../dist/chains-98e2e613.cjs.dev.js');
9
+ var chains = require('../../../dist/chains-1b1bdb4e.cjs.dev.js');
10
10
  require('../../../dist/rpcs-9c4eb960.cjs.dev.js');
11
11
 
12
12
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
@@ -19,9 +19,12 @@ var _signer = /*#__PURE__*/new WeakMap();
19
19
 
20
20
  class MockProvider extends ethers.providers.BaseProvider {
21
21
  constructor(options) {
22
- var _options$network;
22
+ var _options$chainId;
23
23
 
24
- super((_options$network = options.network) !== null && _options$network !== void 0 ? _options$network : 1);
24
+ super({
25
+ name: 'Network',
26
+ chainId: (_options$chainId = options.chainId) !== null && _options$chainId !== void 0 ? _options$chainId : 1
27
+ });
25
28
 
26
29
  base._defineProperty(this, "events", new EventEmitter__default["default"]());
27
30
 
@@ -73,7 +76,7 @@ class MockProvider extends ethers.providers.BaseProvider {
73
76
  var _classPrivateFieldGet4;
74
77
 
75
78
  if ((_classPrivateFieldGet4 = base._classPrivateFieldGet(this, _options).flags) !== null && _classPrivateFieldGet4 !== void 0 && _classPrivateFieldGet4.failSwitchChain) throw new base.UserRejectedRequestError(new Error('Failed to switch chain'));
76
- base._classPrivateFieldGet(this, _options).network = chainId;
79
+ base._classPrivateFieldGet(this, _options).chainId = chainId;
77
80
  this.network.chainId = chainId;
78
81
  this.events.emit('chainChanged', chainId);
79
82
  }
@@ -154,7 +157,12 @@ class MockConnector extends base.Connector {
154
157
  async connect() {
155
158
  var _this$options$flags;
156
159
 
157
- const provider = await this.getProvider();
160
+ let {
161
+ chainId
162
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
163
+ const provider = await this.getProvider({
164
+ chainId
165
+ });
158
166
  provider.on('accountsChanged', this.onAccountsChanged);
159
167
  provider.on('chainChanged', this.onChainChanged);
160
168
  provider.on('disconnect', this.onDisconnect);
@@ -200,7 +208,12 @@ class MockConnector extends base.Connector {
200
208
  }
201
209
 
202
210
  async getProvider() {
203
- if (!base._classPrivateFieldGet(this, _provider)) base._classPrivateFieldSet(this, _provider, new MockProvider(this.options));
211
+ let {
212
+ chainId
213
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
214
+ if (!base._classPrivateFieldGet(this, _provider) || chainId) base._classPrivateFieldSet(this, _provider, new MockProvider({ ...this.options,
215
+ chainId
216
+ }));
204
217
  return base._classPrivateFieldGet(this, _provider);
205
218
  }
206
219
 
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-6841ebe0.cjs.prod.js');
5
+ var base = require('../../../dist/base-f5e9d7e7.cjs.prod.js');
6
6
  var utils = require('ethers/lib/utils');
7
7
  var EventEmitter = require('eventemitter3');
8
8
  var ethers = require('ethers');
9
- var chains = require('../../../dist/chains-0dd661ab.cjs.prod.js');
9
+ var chains = require('../../../dist/chains-01801dff.cjs.prod.js');
10
10
  require('../../../dist/rpcs-b3c52116.cjs.prod.js');
11
11
 
12
12
  function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
@@ -19,9 +19,12 @@ var _signer = /*#__PURE__*/new WeakMap();
19
19
 
20
20
  class MockProvider extends ethers.providers.BaseProvider {
21
21
  constructor(options) {
22
- var _options$network;
22
+ var _options$chainId;
23
23
 
24
- super((_options$network = options.network) !== null && _options$network !== void 0 ? _options$network : 1);
24
+ super({
25
+ name: 'Network',
26
+ chainId: (_options$chainId = options.chainId) !== null && _options$chainId !== void 0 ? _options$chainId : 1
27
+ });
25
28
 
26
29
  base._defineProperty(this, "events", new EventEmitter__default["default"]());
27
30
 
@@ -73,7 +76,7 @@ class MockProvider extends ethers.providers.BaseProvider {
73
76
  var _classPrivateFieldGet4;
74
77
 
75
78
  if ((_classPrivateFieldGet4 = base._classPrivateFieldGet(this, _options).flags) !== null && _classPrivateFieldGet4 !== void 0 && _classPrivateFieldGet4.failSwitchChain) throw new base.UserRejectedRequestError(new Error('Failed to switch chain'));
76
- base._classPrivateFieldGet(this, _options).network = chainId;
79
+ base._classPrivateFieldGet(this, _options).chainId = chainId;
77
80
  this.network.chainId = chainId;
78
81
  this.events.emit('chainChanged', chainId);
79
82
  }
@@ -154,7 +157,12 @@ class MockConnector extends base.Connector {
154
157
  async connect() {
155
158
  var _this$options$flags;
156
159
 
157
- const provider = await this.getProvider();
160
+ let {
161
+ chainId
162
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
163
+ const provider = await this.getProvider({
164
+ chainId
165
+ });
158
166
  provider.on('accountsChanged', this.onAccountsChanged);
159
167
  provider.on('chainChanged', this.onChainChanged);
160
168
  provider.on('disconnect', this.onDisconnect);
@@ -200,7 +208,12 @@ class MockConnector extends base.Connector {
200
208
  }
201
209
 
202
210
  async getProvider() {
203
- if (!base._classPrivateFieldGet(this, _provider)) base._classPrivateFieldSet(this, _provider, new MockProvider(this.options));
211
+ let {
212
+ chainId
213
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
214
+ if (!base._classPrivateFieldGet(this, _provider) || chainId) base._classPrivateFieldSet(this, _provider, new MockProvider({ ...this.options,
215
+ chainId
216
+ }));
204
217
  return base._classPrivateFieldGet(this, _provider);
205
218
  }
206
219
 
@@ -1,8 +1,8 @@
1
- import { f as _defineProperty, g as _classPrivateFieldInitSpec, i as _classPrivateFieldSet, j as _classPrivateFieldGet, U as UserRejectedRequestError, b as Connector, _ as _classPrivateMethodInitSpec, n as normalizeChainId, h as _classPrivateMethodGet } from '../../../dist/base-41fb6637.esm.js';
1
+ import { f as _defineProperty, g as _classPrivateFieldInitSpec, i as _classPrivateFieldSet, h as _classPrivateFieldGet, U as UserRejectedRequestError, b as Connector, _ as _classPrivateMethodInitSpec, n as normalizeChainId, j as _classPrivateMethodGet } from '../../../dist/base-f818d190.esm.js';
2
2
  import { getAddress } from 'ethers/lib/utils';
3
3
  import EventEmitter from 'eventemitter3';
4
4
  import { providers } from 'ethers';
5
- import { a as allChains } from '../../../dist/chains-a0a80d94.esm.js';
5
+ import { a as allChains } from '../../../dist/chains-541a65cc.esm.js';
6
6
  import '../../../dist/rpcs-7cfbd91c.esm.js';
7
7
 
8
8
  var _options = /*#__PURE__*/new WeakMap();
@@ -11,9 +11,12 @@ var _signer = /*#__PURE__*/new WeakMap();
11
11
 
12
12
  class MockProvider extends providers.BaseProvider {
13
13
  constructor(options) {
14
- var _options$network;
14
+ var _options$chainId;
15
15
 
16
- super((_options$network = options.network) !== null && _options$network !== void 0 ? _options$network : 1);
16
+ super({
17
+ name: 'Network',
18
+ chainId: (_options$chainId = options.chainId) !== null && _options$chainId !== void 0 ? _options$chainId : 1
19
+ });
17
20
 
18
21
  _defineProperty(this, "events", new EventEmitter());
19
22
 
@@ -65,7 +68,7 @@ class MockProvider extends providers.BaseProvider {
65
68
  var _classPrivateFieldGet4;
66
69
 
67
70
  if ((_classPrivateFieldGet4 = _classPrivateFieldGet(this, _options).flags) !== null && _classPrivateFieldGet4 !== void 0 && _classPrivateFieldGet4.failSwitchChain) throw new UserRejectedRequestError(new Error('Failed to switch chain'));
68
- _classPrivateFieldGet(this, _options).network = chainId;
71
+ _classPrivateFieldGet(this, _options).chainId = chainId;
69
72
  this.network.chainId = chainId;
70
73
  this.events.emit('chainChanged', chainId);
71
74
  }
@@ -146,7 +149,12 @@ class MockConnector extends Connector {
146
149
  async connect() {
147
150
  var _this$options$flags;
148
151
 
149
- const provider = await this.getProvider();
152
+ let {
153
+ chainId
154
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
155
+ const provider = await this.getProvider({
156
+ chainId
157
+ });
150
158
  provider.on('accountsChanged', this.onAccountsChanged);
151
159
  provider.on('chainChanged', this.onChainChanged);
152
160
  provider.on('disconnect', this.onDisconnect);
@@ -192,7 +200,12 @@ class MockConnector extends Connector {
192
200
  }
193
201
 
194
202
  async getProvider() {
195
- if (!_classPrivateFieldGet(this, _provider)) _classPrivateFieldSet(this, _provider, new MockProvider(this.options));
203
+ let {
204
+ chainId
205
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
206
+ if (!_classPrivateFieldGet(this, _provider) || chainId) _classPrivateFieldSet(this, _provider, new MockProvider({ ...this.options,
207
+ chainId
208
+ }));
196
209
  return _classPrivateFieldGet(this, _provider);
197
210
  }
198
211
 
@@ -2,11 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var base = require('../../../dist/base-321ac87a.cjs.dev.js');
5
+ var base = require('../../../dist/base-147e77ca.cjs.dev.js');
6
6
  var ethers = require('ethers');
7
7
  var utils = require('ethers/lib/utils');
8
- var chains = require('../../../dist/chains-98e2e613.cjs.dev.js');
8
+ var client = require('../../../dist/client-b9a38d26.cjs.dev.js');
9
+ var chains = require('../../../dist/chains-1b1bdb4e.cjs.dev.js');
9
10
  require('eventemitter3');
11
+ require('zustand/vanilla');
12
+ require('zustand/middleware');
10
13
  require('../../../dist/rpcs-9c4eb960.cjs.dev.js');
11
14
 
12
15
  function _interopNamespace(e) {
@@ -80,10 +83,24 @@ class WalletConnectConnector extends base.Connector {
80
83
  }
81
84
 
82
85
  async connect() {
86
+ let {
87
+ chainId
88
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
89
+
83
90
  try {
84
91
  var _provider$connector$p, _provider$connector, _provider$connector$p2;
85
92
 
86
- const provider = await this.getProvider(true);
93
+ let targetChainId = chainId;
94
+
95
+ if (!targetChainId) {
96
+ const lastUsedChainId = client.getClient().lastUsedChainId;
97
+ if (lastUsedChainId && !this.isChainUnsupported(lastUsedChainId)) targetChainId = lastUsedChainId;
98
+ }
99
+
100
+ const provider = await this.getProvider({
101
+ chainId: targetChainId,
102
+ create: true
103
+ });
87
104
  provider.on('accountsChanged', this.onAccountsChanged);
88
105
  provider.on('chainChanged', this.onChainChanged);
89
106
  provider.on('disconnect', this.onDisconnect); // Defer message to the next tick to ensure wallet connect data (provided by `.enable()`) is available
@@ -135,11 +152,17 @@ class WalletConnectConnector extends base.Connector {
135
152
  return chainId;
136
153
  }
137
154
 
138
- async getProvider(create) {
155
+ async getProvider() {
156
+ var _this$options, _this$chains$;
157
+
158
+ let {
159
+ chainId = ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.chainId) || ((_this$chains$ = this.chains[0]) === null || _this$chains$ === void 0 ? void 0 : _this$chains$.id),
160
+ create = false
161
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
162
+
139
163
  if (!base._classPrivateFieldGet(this, _provider) || create) {
140
- var _this$options, _this$options2, _this$options3;
164
+ var _this$options2, _this$options3;
141
165
 
142
- const chainId = ((_this$options = this.options) === null || _this$options === void 0 ? void 0 : _this$options.chainId) || this.chains[0].id;
143
166
  const rpc = !((_this$options2 = this.options) !== null && _this$options2 !== void 0 && _this$options2.infuraId) ? this.chains.reduce((rpc, chain) => ({ ...rpc,
144
167
  [chain.id]: chain.rpcUrls.default
145
168
  }), {}) : {};