@wagmi/core 0.2.0-next.7 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +2 -2
- package/README.md +30 -0
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +135 -154
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +135 -154
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +136 -155
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +98 -152
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +98 -152
- package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +98 -152
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +91 -126
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +91 -126
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +91 -126
- package/dist/base-30d4fad4.cjs.prod.js +544 -0
- package/dist/base-a0d63eb0.cjs.dev.js +544 -0
- package/dist/base-f0102d32.esm.js +517 -0
- package/dist/{classPrivateMethodGet-0e9a7925.cjs.prod.js → classPrivateMethodGet-656c08a7.cjs.prod.js} +1 -1
- package/dist/{classPrivateMethodGet-38b54c7a.cjs.dev.js → classPrivateMethodGet-9b9cd39b.cjs.dev.js} +1 -1
- package/dist/{classPrivateMethodGet-c9db96d6.esm.js → classPrivateMethodGet-e0eaacfc.esm.js} +1 -1
- package/dist/declarations/src/actions/accounts/connect.d.ts +14 -5
- package/dist/declarations/src/actions/accounts/fetchBalance.d.ts +3 -1
- package/dist/declarations/src/actions/accounts/fetchSigner.d.ts +1 -1
- package/dist/declarations/src/actions/accounts/getAccount.d.ts +5 -4
- package/dist/declarations/src/actions/accounts/index.d.ts +1 -2
- package/dist/declarations/src/actions/accounts/switchNetwork.d.ts +1 -1
- package/dist/declarations/src/actions/accounts/watchAccount.d.ts +3 -2
- package/dist/declarations/src/actions/contracts/readContract.d.ts +4 -1
- package/dist/declarations/src/actions/contracts/watchContractEvent.d.ts +3 -1
- package/dist/declarations/src/actions/ens/fetchEnsAddress.d.ts +3 -1
- package/dist/declarations/src/actions/ens/fetchEnsAvatar.d.ts +3 -1
- package/dist/declarations/src/actions/ens/fetchEnsName.d.ts +3 -1
- package/dist/declarations/src/actions/ens/fetchEnsResolver.d.ts +3 -1
- package/dist/declarations/src/actions/ens/index.d.ts +0 -4
- package/dist/declarations/src/actions/index.d.ts +5 -5
- package/dist/declarations/src/actions/network-status/fetchBlockNumber.d.ts +4 -1
- package/dist/declarations/src/actions/network-status/fetchFeeData.d.ts +3 -1
- package/dist/declarations/src/actions/network-status/index.d.ts +1 -2
- package/dist/declarations/src/actions/providers/getProvider.d.ts +6 -2
- package/dist/declarations/src/actions/providers/getWebSocketProvider.d.ts +6 -2
- package/dist/declarations/src/actions/providers/index.d.ts +2 -2
- package/dist/declarations/src/actions/providers/watchProvider.d.ts +4 -3
- package/dist/declarations/src/actions/providers/watchWebSocketProvider.d.ts +4 -3
- package/dist/declarations/src/actions/tokens/fetchToken.d.ts +6 -10
- package/dist/declarations/src/actions/tokens/index.d.ts +0 -1
- package/dist/declarations/src/actions/transactions/waitForTransaction.d.ts +3 -1
- package/dist/declarations/src/client.d.ts +23 -22
- package/dist/declarations/src/connectors/base.d.ts +3 -1
- package/dist/declarations/src/connectors/coinbaseWallet.d.ts +9 -0
- package/dist/declarations/src/connectors/injected.d.ts +2 -10
- package/dist/declarations/src/connectors/mock/connector.d.ts +1 -1
- package/dist/declarations/src/connectors/mock/provider.d.ts +2 -0
- package/dist/declarations/src/constants/abis.d.ts +2 -0
- package/dist/declarations/src/constants/blockExplorers.d.ts +9 -0
- package/dist/declarations/src/constants/chains.d.ts +17 -6
- package/dist/declarations/src/constants/index.d.ts +6 -2
- package/dist/declarations/src/constants/rpcs.d.ts +9 -0
- package/dist/declarations/src/index.d.ts +9 -6
- package/dist/declarations/src/types/index.d.ts +77 -6
- package/dist/declarations/src/utils/getInjectedName.d.ts +1 -1
- package/dist/wagmi-core.cjs.dev.js +658 -1153
- package/dist/wagmi-core.cjs.prod.js +658 -1153
- package/dist/wagmi-core.esm.js +653 -1147
- package/package.json +17 -9
- package/dist/base-09a653f3.cjs.dev.js +0 -453
- package/dist/base-824c3b6d.esm.js +0 -430
- package/dist/base-d8123d5f.cjs.prod.js +0 -453
- package/dist/declarations/src/actions/accounts/watchBalance.d.ts +0 -3
- package/dist/declarations/src/actions/ens/watchEnsAddress.d.ts +0 -3
- package/dist/declarations/src/actions/ens/watchEnsAvatar.d.ts +0 -3
- package/dist/declarations/src/actions/ens/watchEnsName.d.ts +0 -3
- package/dist/declarations/src/actions/ens/watchEnsResolver.d.ts +0 -3
- package/dist/declarations/src/actions/network-status/watchFeeData.d.ts +0 -7
- package/dist/declarations/src/actions/tokens/watchToken.d.ts +0 -3
- package/dist/declarations/src/constants/abis/erc1155.d.ts +0 -17
- package/dist/declarations/src/constants/abis/erc20.d.ts +0 -38
- package/dist/declarations/src/constants/abis/erc721.d.ts +0 -15
- package/dist/declarations/src/constants/abis/index.d.ts +0 -3
- package/dist/declarations/src/types/declarations.d.ts +0 -52
package/LICENSE
CHANGED
package/README.md
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# @wagmi/core
|
|
2
|
+
|
|
3
|
+
## Documentation
|
|
4
|
+
|
|
5
|
+
For full documentation and examples, visit [wagmi.sh](https://wagmi.sh).
|
|
6
|
+
|
|
7
|
+
## Installation
|
|
8
|
+
|
|
9
|
+
Install wagmi and its ethers peer dependency.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install @wagmi/core ethers
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Community
|
|
16
|
+
|
|
17
|
+
Check out the following places for more wagmi-related content:
|
|
18
|
+
|
|
19
|
+
- Join the [discussions on GitHub](https://github.com/tmm/wagmi/discussions)
|
|
20
|
+
- Follow [@awkweb](https://twitter.com/awkweb) on Twitter for project updates
|
|
21
|
+
- Sign the [guestbook](https://github.com/tmm/wagmi/discussions/2)
|
|
22
|
+
- Share [your project/organization](https://github.com/tmm/wagmi/discussions/201) using wagmi
|
|
23
|
+
|
|
24
|
+
## Support
|
|
25
|
+
|
|
26
|
+
If you find wagmi useful, please consider supporting development. Thank you 🙏
|
|
27
|
+
|
|
28
|
+
- [awkweb.eth](https://etherscan.io/enslookup-search?search=awkweb.eth)
|
|
29
|
+
- [GitHub Sponsors](https://github.com/sponsors/tmm?metadata_campaign=readme_core)
|
|
30
|
+
- [Gitcoin Grant](https://gitcoin.co/grants/4493/wagmi-react-hooks-library-for-ethereum)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var base = require('../../../dist/base-
|
|
5
|
+
var base = require('../../../dist/base-a0d63eb0.cjs.dev.js');
|
|
6
6
|
var ethers = require('ethers');
|
|
7
7
|
var utils = require('ethers/lib/utils');
|
|
8
8
|
require('eventemitter3');
|
|
@@ -58,8 +58,8 @@ class CoinbaseWalletConnector extends base.Connector {
|
|
|
58
58
|
});
|
|
59
59
|
|
|
60
60
|
base._defineProperty(this, "onChainChanged", chainId => {
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
const id = base.normalizeChainId(chainId);
|
|
62
|
+
const unsupported = this.isChainUnsupported(id);
|
|
63
63
|
this.emit('change', {
|
|
64
64
|
chain: {
|
|
65
65
|
id,
|
|
@@ -73,181 +73,162 @@ class CoinbaseWalletConnector extends base.Connector {
|
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
-
connect() {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
},
|
|
102
|
-
provider: new ethers.providers.Web3Provider(provider)
|
|
103
|
-
};
|
|
104
|
-
} catch (error) {
|
|
105
|
-
if (/user closed modal/i.test(error.message)) throw new base.UserRejectedRequestError();
|
|
106
|
-
throw error;
|
|
107
|
-
}
|
|
108
|
-
})();
|
|
76
|
+
async connect() {
|
|
77
|
+
try {
|
|
78
|
+
const provider = await this.getProvider();
|
|
79
|
+
provider.on('accountsChanged', this.onAccountsChanged);
|
|
80
|
+
provider.on('chainChanged', this.onChainChanged);
|
|
81
|
+
provider.on('disconnect', this.onDisconnect);
|
|
82
|
+
this.emit('message', {
|
|
83
|
+
type: 'connecting'
|
|
84
|
+
});
|
|
85
|
+
const accounts = await provider.enable();
|
|
86
|
+
const account = utils.getAddress(accounts[0]);
|
|
87
|
+
const id = await this.getChainId();
|
|
88
|
+
const unsupported = this.isChainUnsupported(id);
|
|
89
|
+
return {
|
|
90
|
+
account,
|
|
91
|
+
chain: {
|
|
92
|
+
id,
|
|
93
|
+
unsupported
|
|
94
|
+
},
|
|
95
|
+
provider: new ethers.providers.Web3Provider(provider)
|
|
96
|
+
};
|
|
97
|
+
} catch (error) {
|
|
98
|
+
if (/user closed modal/i.test(error.message)) throw new base.UserRejectedRequestError();
|
|
99
|
+
throw error;
|
|
100
|
+
}
|
|
109
101
|
}
|
|
110
102
|
|
|
111
|
-
disconnect() {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if (!key) continue;
|
|
129
|
-
if (!/-walletlink/.test(key)) continue;
|
|
130
|
-
localStorage.removeItem(key);
|
|
131
|
-
}
|
|
103
|
+
async disconnect() {
|
|
104
|
+
if (!base._classPrivateFieldGet(this, _provider)) return;
|
|
105
|
+
const provider = await this.getProvider();
|
|
106
|
+
provider.removeListener('accountsChanged', this.onAccountsChanged);
|
|
107
|
+
provider.removeListener('chainChanged', this.onChainChanged);
|
|
108
|
+
provider.removeListener('disconnect', this.onDisconnect);
|
|
109
|
+
provider.disconnect();
|
|
110
|
+
provider.close();
|
|
111
|
+
|
|
112
|
+
if (typeof localStorage !== 'undefined') {
|
|
113
|
+
let n = localStorage.length;
|
|
114
|
+
|
|
115
|
+
while (n--) {
|
|
116
|
+
const key = localStorage.key(n);
|
|
117
|
+
if (!key) continue;
|
|
118
|
+
if (!/-walletlink/.test(key)) continue;
|
|
119
|
+
localStorage.removeItem(key);
|
|
132
120
|
}
|
|
133
|
-
}
|
|
121
|
+
}
|
|
134
122
|
}
|
|
135
123
|
|
|
136
|
-
getAccount() {
|
|
137
|
-
|
|
124
|
+
async getAccount() {
|
|
125
|
+
const provider = await this.getProvider();
|
|
126
|
+
const accounts = await provider.request({
|
|
127
|
+
method: 'eth_accounts'
|
|
128
|
+
}); // return checksum address
|
|
138
129
|
|
|
139
|
-
return
|
|
140
|
-
var provider = yield _this3.getProvider();
|
|
141
|
-
var accounts = yield provider.request({
|
|
142
|
-
method: 'eth_accounts'
|
|
143
|
-
}); // return checksum address
|
|
144
|
-
|
|
145
|
-
return utils.getAddress(accounts[0]);
|
|
146
|
-
})();
|
|
130
|
+
return utils.getAddress(accounts[0]);
|
|
147
131
|
}
|
|
148
132
|
|
|
149
|
-
getChainId() {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
return
|
|
153
|
-
var provider = yield _this4.getProvider();
|
|
154
|
-
var chainId = base.normalizeChainId(provider.chainId);
|
|
155
|
-
return chainId;
|
|
156
|
-
})();
|
|
133
|
+
async getChainId() {
|
|
134
|
+
const provider = await this.getProvider();
|
|
135
|
+
const chainId = base.normalizeChainId(provider.chainId);
|
|
136
|
+
return chainId;
|
|
157
137
|
}
|
|
158
138
|
|
|
159
|
-
getProvider() {
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
var {
|
|
165
|
-
CoinbaseWalletSDK
|
|
166
|
-
} = yield Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); });
|
|
139
|
+
async getProvider() {
|
|
140
|
+
if (!base._classPrivateFieldGet(this, _provider)) {
|
|
141
|
+
const {
|
|
142
|
+
CoinbaseWalletSDK
|
|
143
|
+
} = await Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@coinbase/wallet-sdk')); });
|
|
167
144
|
|
|
168
|
-
|
|
145
|
+
base._classPrivateFieldSet(this, _client, new CoinbaseWalletSDK(this.options));
|
|
169
146
|
|
|
170
|
-
|
|
171
|
-
|
|
147
|
+
base._classPrivateFieldSet(this, _provider, base._classPrivateFieldGet(this, _client).makeWeb3Provider(this.options.jsonRpcUrl, this.options.chainId));
|
|
148
|
+
}
|
|
172
149
|
|
|
173
|
-
|
|
174
|
-
})();
|
|
150
|
+
return base._classPrivateFieldGet(this, _provider);
|
|
175
151
|
}
|
|
176
152
|
|
|
177
|
-
getSigner() {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
return base._asyncToGenerator(function* () {
|
|
181
|
-
var [provider, account] = yield Promise.all([_this6.getProvider(), _this6.getAccount()]);
|
|
182
|
-
return new ethers.providers.Web3Provider(provider).getSigner(account);
|
|
183
|
-
})();
|
|
153
|
+
async getSigner() {
|
|
154
|
+
const [provider, account] = await Promise.all([this.getProvider(), this.getAccount()]);
|
|
155
|
+
return new ethers.providers.Web3Provider(provider).getSigner(account);
|
|
184
156
|
}
|
|
185
157
|
|
|
186
|
-
isAuthorized() {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
} catch (_unused) {
|
|
194
|
-
return false;
|
|
195
|
-
}
|
|
196
|
-
})();
|
|
158
|
+
async isAuthorized() {
|
|
159
|
+
try {
|
|
160
|
+
const account = await this.getAccount();
|
|
161
|
+
return !!account;
|
|
162
|
+
} catch {
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
197
165
|
}
|
|
198
166
|
|
|
199
|
-
switchChain(chainId) {
|
|
200
|
-
|
|
167
|
+
async switchChain(chainId) {
|
|
168
|
+
const provider = await this.getProvider();
|
|
169
|
+
const id = utils.hexValue(chainId);
|
|
201
170
|
|
|
202
|
-
|
|
203
|
-
var
|
|
204
|
-
var id = utils.hexValue(chainId);
|
|
171
|
+
try {
|
|
172
|
+
var _chains$find;
|
|
205
173
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
174
|
+
await provider.request({
|
|
175
|
+
method: 'wallet_switchEthereumChain',
|
|
176
|
+
params: [{
|
|
177
|
+
chainId: id
|
|
178
|
+
}]
|
|
179
|
+
});
|
|
180
|
+
const chains = [...this.chains, ...base.allChains];
|
|
181
|
+
return (_chains$find = chains.find(x => x.id === chainId)) !== null && _chains$find !== void 0 ? _chains$find : {
|
|
182
|
+
id: chainId,
|
|
183
|
+
name: "Chain ".concat(id),
|
|
184
|
+
rpcUrls: {
|
|
185
|
+
default: ''
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
} catch (error) {
|
|
189
|
+
// Indicates chain is not added to provider
|
|
190
|
+
if (error.code === 4902) {
|
|
191
|
+
try {
|
|
192
|
+
const chain = this.chains.find(x => x.id === chainId);
|
|
193
|
+
if (!chain) throw new base.ChainNotConfiguredError();
|
|
194
|
+
await provider.request({
|
|
195
|
+
method: 'wallet_addEthereumChain',
|
|
196
|
+
params: [{
|
|
197
|
+
chainId: id,
|
|
198
|
+
chainName: chain.name,
|
|
199
|
+
nativeCurrency: chain.nativeCurrency,
|
|
200
|
+
rpcUrls: this.getRpcUrls(chain),
|
|
201
|
+
blockExplorerUrls: this.getBlockExplorerUrls(chain)
|
|
202
|
+
}]
|
|
203
|
+
});
|
|
204
|
+
return chain;
|
|
205
|
+
} catch (addError) {
|
|
206
|
+
throw new base.AddChainError();
|
|
207
|
+
}
|
|
208
|
+
} else if (error.code === 4001) throw new base.UserRejectedRequestError();else throw new base.SwitchChainError();
|
|
209
|
+
}
|
|
225
210
|
}
|
|
226
211
|
|
|
227
|
-
watchAsset(_ref) {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
decimals,
|
|
245
|
-
image,
|
|
246
|
-
symbol
|
|
247
|
-
}
|
|
212
|
+
async watchAsset(_ref) {
|
|
213
|
+
let {
|
|
214
|
+
address,
|
|
215
|
+
decimals = 18,
|
|
216
|
+
image,
|
|
217
|
+
symbol
|
|
218
|
+
} = _ref;
|
|
219
|
+
const provider = await this.getProvider();
|
|
220
|
+
return await provider.request({
|
|
221
|
+
method: 'wallet_watchAsset',
|
|
222
|
+
params: {
|
|
223
|
+
type: 'ERC20',
|
|
224
|
+
options: {
|
|
225
|
+
address,
|
|
226
|
+
decimals,
|
|
227
|
+
image,
|
|
228
|
+
symbol
|
|
248
229
|
}
|
|
249
|
-
}
|
|
250
|
-
})
|
|
230
|
+
}
|
|
231
|
+
});
|
|
251
232
|
}
|
|
252
233
|
|
|
253
234
|
}
|