@wagmi/core 0.2.0-next.4 → 0.2.0-next.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.
@@ -82,6 +82,11 @@ class CoinbaseWalletConnector extends base.Connector {
82
82
  provider.on('accountsChanged', _this.onAccountsChanged);
83
83
  provider.on('chainChanged', _this.onChainChanged);
84
84
  provider.on('disconnect', _this.onDisconnect);
85
+
86
+ _this.emit('message', {
87
+ type: 'connecting'
88
+ });
89
+
85
90
  var accounts = yield provider.enable();
86
91
  var account = utils.getAddress(accounts[0]);
87
92
  var id = yield _this.getChainId();
@@ -82,6 +82,11 @@ class CoinbaseWalletConnector extends base.Connector {
82
82
  provider.on('accountsChanged', _this.onAccountsChanged);
83
83
  provider.on('chainChanged', _this.onChainChanged);
84
84
  provider.on('disconnect', _this.onDisconnect);
85
+
86
+ _this.emit('message', {
87
+ type: 'connecting'
88
+ });
89
+
85
90
  var accounts = yield provider.enable();
86
91
  var account = utils.getAddress(accounts[0]);
87
92
  var id = yield _this.getChainId();
@@ -60,6 +60,11 @@ class CoinbaseWalletConnector extends Connector {
60
60
  provider.on('accountsChanged', _this.onAccountsChanged);
61
61
  provider.on('chainChanged', _this.onChainChanged);
62
62
  provider.on('disconnect', _this.onDisconnect);
63
+
64
+ _this.emit('message', {
65
+ type: 'connecting'
66
+ });
67
+
63
68
  var accounts = yield provider.enable();
64
69
  var account = getAddress(accounts[0]);
65
70
  var id = yield _this.getChainId();
@@ -81,7 +81,11 @@ class WalletConnectConnector extends base.Connector {
81
81
  var provider = yield _this.getProvider(true);
82
82
  provider.on('accountsChanged', _this.onAccountsChanged);
83
83
  provider.on('chainChanged', _this.onChainChanged);
84
- provider.on('disconnect', _this.onDisconnect);
84
+ provider.on('disconnect', _this.onDisconnect); // Defer message to the next tick to ensure wallet connect data (provided by `.enable()`) is available
85
+
86
+ setTimeout(() => _this.emit('message', {
87
+ type: 'connecting'
88
+ }), 0);
85
89
  var accounts = yield provider.enable();
86
90
  var account = utils.getAddress(accounts[0]);
87
91
  var id = yield _this.getChainId();
@@ -81,7 +81,11 @@ class WalletConnectConnector extends base.Connector {
81
81
  var provider = yield _this.getProvider(true);
82
82
  provider.on('accountsChanged', _this.onAccountsChanged);
83
83
  provider.on('chainChanged', _this.onChainChanged);
84
- provider.on('disconnect', _this.onDisconnect);
84
+ provider.on('disconnect', _this.onDisconnect); // Defer message to the next tick to ensure wallet connect data (provided by `.enable()`) is available
85
+
86
+ setTimeout(() => _this.emit('message', {
87
+ type: 'connecting'
88
+ }), 0);
85
89
  var accounts = yield provider.enable();
86
90
  var account = utils.getAddress(accounts[0]);
87
91
  var id = yield _this.getChainId();
@@ -59,7 +59,11 @@ class WalletConnectConnector extends Connector {
59
59
  var provider = yield _this.getProvider(true);
60
60
  provider.on('accountsChanged', _this.onAccountsChanged);
61
61
  provider.on('chainChanged', _this.onChainChanged);
62
- provider.on('disconnect', _this.onDisconnect);
62
+ provider.on('disconnect', _this.onDisconnect); // Defer message to the next tick to ensure wallet connect data (provided by `.enable()`) is available
63
+
64
+ setTimeout(() => _this.emit('message', {
65
+ type: 'connecting'
66
+ }), 0);
63
67
  var accounts = yield provider.enable();
64
68
  var account = getAddress(accounts[0]);
65
69
  var id = yield _this.getChainId();
@@ -61,7 +61,7 @@ export declare class Client {
61
61
  get data(): Data | undefined;
62
62
  get error(): Error | undefined;
63
63
  get provider(): BaseProvider;
64
- get status(): "connected" | "connecting" | "reconnecting" | "disconnected";
64
+ get status(): "connecting" | "connected" | "reconnecting" | "disconnected";
65
65
  get subscribe(): {
66
66
  (listener: (selectedState: State, previousSelectedState: State) => void): () => void;
67
67
  <U>(selector: (state: State) => U, listener: (selectedState: U, previousSelectedState: U) => void, options?: {
@@ -12,6 +12,10 @@ export declare type ConnectorData<Provider = any> = {
12
12
  export interface ConnectorEvents<Provider = any> {
13
13
  change(data: ConnectorData<Provider>): void;
14
14
  connect(data: ConnectorData<Provider>): void;
15
+ message({ type, data }: {
16
+ type: string;
17
+ data?: unknown;
18
+ }): void;
15
19
  disconnect(): void;
16
20
  error(error: Error): void;
17
21
  }
@@ -358,6 +358,10 @@ class InjectedConnector extends base.Connector {
358
358
  provider.on('disconnect', _this.onDisconnect);
359
359
  }
360
360
 
361
+ _this.emit('message', {
362
+ type: 'connecting'
363
+ });
364
+
361
365
  var account = yield _this.getAccount();
362
366
  var id = yield _this.getChainId();
363
367
 
@@ -660,13 +664,14 @@ class Client {
660
664
  partialize: state => {
661
665
  var _state$data, _state$data2;
662
666
 
663
- return {
667
+ return _objectSpread2(_objectSpread2({}, this.config.autoConnect && {
664
668
  data: {
665
669
  account: state === null || state === void 0 ? void 0 : (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.account,
666
670
  chain: state === null || state === void 0 ? void 0 : (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.chain
667
- },
671
+ }
672
+ }), {}, {
668
673
  chains: state === null || state === void 0 ? void 0 : state.chains
669
- };
674
+ });
670
675
  }
671
676
  })));
672
677
  this.storage = storage;
@@ -358,6 +358,10 @@ class InjectedConnector extends base.Connector {
358
358
  provider.on('disconnect', _this.onDisconnect);
359
359
  }
360
360
 
361
+ _this.emit('message', {
362
+ type: 'connecting'
363
+ });
364
+
361
365
  var account = yield _this.getAccount();
362
366
  var id = yield _this.getChainId();
363
367
 
@@ -660,13 +664,14 @@ class Client {
660
664
  partialize: state => {
661
665
  var _state$data, _state$data2;
662
666
 
663
- return {
667
+ return _objectSpread2(_objectSpread2({}, this.config.autoConnect && {
664
668
  data: {
665
669
  account: state === null || state === void 0 ? void 0 : (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.account,
666
670
  chain: state === null || state === void 0 ? void 0 : (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.chain
667
- },
671
+ }
672
+ }), {}, {
668
673
  chains: state === null || state === void 0 ? void 0 : state.chains
669
- };
674
+ });
670
675
  }
671
676
  })));
672
677
  this.storage = storage;
@@ -351,6 +351,10 @@ class InjectedConnector extends Connector {
351
351
  provider.on('disconnect', _this.onDisconnect);
352
352
  }
353
353
 
354
+ _this.emit('message', {
355
+ type: 'connecting'
356
+ });
357
+
354
358
  var account = yield _this.getAccount();
355
359
  var id = yield _this.getChainId();
356
360
 
@@ -653,13 +657,14 @@ class Client {
653
657
  partialize: state => {
654
658
  var _state$data, _state$data2;
655
659
 
656
- return {
660
+ return _objectSpread2(_objectSpread2({}, this.config.autoConnect && {
657
661
  data: {
658
662
  account: state === null || state === void 0 ? void 0 : (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data.account,
659
663
  chain: state === null || state === void 0 ? void 0 : (_state$data2 = state.data) === null || _state$data2 === void 0 ? void 0 : _state$data2.chain
660
- },
664
+ }
665
+ }), {}, {
661
666
  chains: state === null || state === void 0 ? void 0 : state.chains
662
- };
667
+ });
663
668
  }
664
669
  })));
665
670
  this.storage = storage;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@wagmi/core",
3
3
  "description": "JavaScript library for Ethereum",
4
4
  "license": "MIT",
5
- "version": "0.2.0-next.4",
5
+ "version": "0.2.0-next.7",
6
6
  "ethereum": "awkweb.eth",
7
7
  "repository": "tmm/wagmi",
8
8
  "sideEffects": false,