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