@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.
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +135 -151
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +135 -151
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +136 -152
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +96 -153
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +96 -153
- package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +96 -153
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +91 -124
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +91 -124
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +91 -124
- package/dist/base-37097073.esm.js +516 -0
- package/dist/base-85d1eb89.cjs.dev.js +543 -0
- package/dist/base-d3563329.cjs.prod.js +543 -0
- package/dist/{classPrivateMethodGet-38b54c7a.cjs.dev.js → classPrivateMethodGet-3f47cf74.cjs.dev.js} +1 -1
- package/dist/{classPrivateMethodGet-0e9a7925.cjs.prod.js → classPrivateMethodGet-a763c0df.cjs.prod.js} +1 -1
- package/dist/{classPrivateMethodGet-c9db96d6.esm.js → classPrivateMethodGet-b3ba7c1d.esm.js} +1 -1
- package/dist/declarations/src/actions/accounts/connect.d.ts +14 -5
- package/dist/declarations/src/actions/accounts/getAccount.d.ts +5 -4
- package/dist/declarations/src/actions/accounts/index.d.ts +1 -1
- 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/index.d.ts +1 -1
- package/dist/declarations/src/actions/providers/getProvider.d.ts +2 -2
- package/dist/declarations/src/actions/providers/getWebSocketProvider.d.ts +2 -2
- package/dist/declarations/src/actions/providers/watchProvider.d.ts +3 -2
- package/dist/declarations/src/actions/providers/watchWebSocketProvider.d.ts +3 -2
- package/dist/declarations/src/client.d.ts +26 -23
- package/dist/declarations/src/connectors/base.d.ts +7 -1
- package/dist/declarations/src/connectors/coinbaseWallet.d.ts +9 -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/keys.d.ts +2 -0
- package/dist/declarations/src/constants/rpcs.d.ts +7 -0
- package/dist/declarations/src/index.d.ts +8 -5
- package/dist/declarations/src/types/index.d.ts +10 -5
- package/dist/wagmi-core.cjs.dev.js +577 -1067
- package/dist/wagmi-core.cjs.prod.js +577 -1067
- package/dist/wagmi-core.esm.js +574 -1068
- package/package.json +2 -3
- 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/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
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
var
|
|
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
|
-
|
|
19
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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(
|
|
300
|
-
options:
|
|
301
|
-
shimDisconnect: true
|
|
302
|
-
|
|
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
|
-
|
|
324
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
92
|
+
const provider = await this.getProvider();
|
|
93
|
+
if (!provider) throw new base.ConnectorNotFoundError();
|
|
365
94
|
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
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
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
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
|
-
|
|
398
|
-
var
|
|
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
|
-
|
|
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
|
-
|
|
412
|
-
|
|
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
|
|
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
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
return
|
|
427
|
-
|
|
428
|
-
|
|
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
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
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
|
-
|
|
439
|
-
|
|
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
|
-
|
|
161
|
+
async isAuthorized() {
|
|
162
|
+
try {
|
|
163
|
+
var _this$options4, _client$storage4;
|
|
445
164
|
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
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
|
-
|
|
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
|
-
|
|
468
|
-
var
|
|
469
|
-
if (!provider) throw new base.ConnectorNotFoundError();
|
|
470
|
-
var id = utils.hexValue(chainId);
|
|
183
|
+
try {
|
|
184
|
+
var _chains$find;
|
|
471
185
|
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
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
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
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
|
-
|
|
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
|
-
|
|
255
|
+
let {
|
|
551
256
|
storage,
|
|
552
257
|
key: prefix = 'wagmi'
|
|
553
258
|
} = _ref;
|
|
554
|
-
return
|
|
555
|
-
getItem: function
|
|
556
|
-
|
|
557
|
-
|
|
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
|
-
|
|
607
|
-
|
|
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
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
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
|
-
|
|
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
|
-
|
|
641
|
-
|
|
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
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
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:
|
|
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
|
-
|
|
667
|
-
|
|
668
|
-
|
|
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
|
-
|
|
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 =>
|
|
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
|
|
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
|
-
|
|
735
|
-
|
|
736
|
-
|
|
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
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
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
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
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
|
-
|
|
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
|
-
|
|
791
|
-
|
|
792
|
-
|
|
485
|
+
const onChange = data => {
|
|
486
|
+
this.setState(x => ({ ...x,
|
|
487
|
+
data: { ...x.data,
|
|
488
|
+
...data
|
|
489
|
+
}
|
|
490
|
+
}));
|
|
491
|
+
};
|
|
793
492
|
|
|
794
|
-
|
|
493
|
+
const onDisconnect = () => {
|
|
494
|
+
this.clearState();
|
|
495
|
+
};
|
|
795
496
|
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
497
|
+
const onError = error => {
|
|
498
|
+
this.setState(x => ({ ...x,
|
|
499
|
+
error
|
|
500
|
+
}));
|
|
501
|
+
};
|
|
799
502
|
|
|
800
|
-
this.store.subscribe(
|
|
801
|
-
|
|
503
|
+
this.store.subscribe(_ref => {
|
|
504
|
+
let {
|
|
802
505
|
connector
|
|
803
|
-
} =
|
|
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
|
-
|
|
519
|
+
const {
|
|
817
520
|
connectors,
|
|
818
521
|
provider,
|
|
819
522
|
webSocketProvider
|
|
820
523
|
} = this.config;
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
if (subscribeConnectors || subscribeProvider || subscribeWebSocketProvider) this.store.subscribe(
|
|
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
|
-
|
|
530
|
+
let {
|
|
828
531
|
data
|
|
829
|
-
} =
|
|
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 =>
|
|
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
|
-
|
|
549
|
+
let client;
|
|
847
550
|
function createClient(config) {
|
|
848
|
-
|
|
551
|
+
const client_ = new Client(config);
|
|
849
552
|
client = client_;
|
|
850
553
|
return client_;
|
|
851
554
|
}
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
return _connect.apply(this, arguments);
|
|
555
|
+
function getClient() {
|
|
556
|
+
return client;
|
|
855
557
|
}
|
|
856
558
|
|
|
857
|
-
function
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
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
|
|
890
|
-
|
|
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
|
|
894
|
-
|
|
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
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
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
|
-
|
|
916
|
-
|
|
917
|
-
|
|
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
|
|
597
|
+
decimals,
|
|
920
598
|
formatted: utils.formatUnits(value, unit),
|
|
921
|
-
symbol
|
|
599
|
+
symbol,
|
|
922
600
|
unit,
|
|
923
601
|
value
|
|
924
602
|
};
|
|
925
|
-
}
|
|
926
|
-
return _fetchBalance.apply(this, arguments);
|
|
927
|
-
}
|
|
603
|
+
}
|
|
928
604
|
|
|
929
|
-
|
|
930
|
-
|
|
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
|
|
934
|
-
|
|
935
|
-
var _client$connector, _client$connector$get;
|
|
617
|
+
async function fetchSigner() {
|
|
618
|
+
var _client$connector, _client$connector$get;
|
|
936
619
|
|
|
937
|
-
|
|
938
|
-
|
|
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
|
-
|
|
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,
|
|
636
|
+
var _data$chain, _data$chain2, _find;
|
|
956
637
|
|
|
957
|
-
|
|
958
|
-
|
|
638
|
+
const {
|
|
639
|
+
chains,
|
|
959
640
|
data
|
|
960
641
|
} = client;
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
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 ?
|
|
653
|
+
chain: chainId ? { ...activeChain,
|
|
971
654
|
id: chainId,
|
|
972
655
|
unsupported
|
|
973
|
-
}
|
|
656
|
+
} : undefined,
|
|
974
657
|
chains: activeChains
|
|
975
658
|
};
|
|
976
659
|
}
|
|
977
660
|
|
|
978
|
-
function signMessage(
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
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
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
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
|
-
|
|
1018
|
-
|
|
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
|
|
1022
|
-
|
|
1023
|
-
var _client$connector;
|
|
686
|
+
async function switchNetwork(_ref) {
|
|
687
|
+
var _client$connector;
|
|
1024
688
|
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
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
|
-
|
|
698
|
+
const handleChange = () => callback(getAccount());
|
|
1034
699
|
|
|
1035
|
-
|
|
1036
|
-
|
|
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
|
-
|
|
1052
|
-
var _ref = base._asyncToGenerator(function* () {
|
|
1053
|
-
return callback(yield fetchBalance(args));
|
|
1054
|
-
});
|
|
716
|
+
const handleChange = async () => callback(await fetchBalance(args));
|
|
1055
717
|
|
|
1056
|
-
|
|
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
|
-
|
|
721
|
+
let {
|
|
1065
722
|
data
|
|
1066
|
-
} =
|
|
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
|
-
|
|
735
|
+
const handleChange = () => callback(getNetwork());
|
|
1079
736
|
|
|
1080
|
-
|
|
737
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1081
738
|
var _data$chain;
|
|
1082
739
|
|
|
1083
|
-
|
|
740
|
+
let {
|
|
1084
741
|
data,
|
|
1085
|
-
|
|
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
|
-
|
|
746
|
+
chains
|
|
1090
747
|
};
|
|
1091
748
|
}, handleChange, {
|
|
1092
|
-
equalityFn: (selected, previous) => selected.chainId === previous.chainId && selected.
|
|
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
|
-
|
|
1099
|
-
var _ref = base._asyncToGenerator(function* () {
|
|
1100
|
-
return callback(yield fetchSigner());
|
|
1101
|
-
});
|
|
755
|
+
const handleChange = async () => callback(await fetchSigner());
|
|
1102
756
|
|
|
1103
|
-
|
|
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
|
-
|
|
760
|
+
let {
|
|
1112
761
|
data,
|
|
1113
762
|
connector
|
|
1114
|
-
} =
|
|
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
|
-
|
|
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(
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
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
|
-
|
|
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
|
-
|
|
806
|
+
let {
|
|
1164
807
|
once
|
|
1165
808
|
} = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
1166
|
-
|
|
809
|
+
let contract;
|
|
1167
810
|
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
var _contract;
|
|
811
|
+
const watchEvent = async () => {
|
|
812
|
+
if (contract) {
|
|
813
|
+
var _contract;
|
|
1172
814
|
|
|
1173
|
-
|
|
1174
|
-
|
|
815
|
+
(_contract = contract) === null || _contract === void 0 ? void 0 : _contract.off(eventName, callback);
|
|
816
|
+
}
|
|
1175
817
|
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1189
|
-
|
|
826
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
827
|
+
let {
|
|
1190
828
|
provider,
|
|
1191
829
|
webSocketProvider
|
|
1192
|
-
} =
|
|
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
|
-
|
|
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
|
-
|
|
852
|
+
let prevProvider;
|
|
1222
853
|
|
|
1223
|
-
|
|
1224
|
-
|
|
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
|
-
|
|
869
|
+
const {
|
|
1239
870
|
provider,
|
|
1240
871
|
webSocketProvider
|
|
1241
872
|
} = client;
|
|
1242
|
-
|
|
873
|
+
const provider_ = webSocketProvider !== null && webSocketProvider !== void 0 ? webSocketProvider : provider;
|
|
1243
874
|
if (args.listen) createListener(provider_);
|
|
1244
|
-
|
|
1245
|
-
|
|
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
|
-
},
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
|
|
1258
|
-
|
|
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
|
-
|
|
1266
|
-
|
|
891
|
+
if (args.listen && provider_) {
|
|
892
|
+
createListener(provider_);
|
|
893
|
+
}
|
|
1267
894
|
|
|
1268
|
-
|
|
1269
|
-
|
|
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
|
-
|
|
1281
|
-
|
|
905
|
+
let config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
906
|
+
let callback = arguments.length > 3 ? arguments[3] : undefined;
|
|
1282
907
|
|
|
1283
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1297
|
-
|
|
913
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
914
|
+
let {
|
|
1298
915
|
provider
|
|
1299
|
-
} =
|
|
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(
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
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
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
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
|
-
|
|
1377
|
-
|
|
955
|
+
try {
|
|
956
|
+
return address ? utils.getAddress(address) : null;
|
|
957
|
+
} catch (_error) {
|
|
958
|
+
return null;
|
|
959
|
+
}
|
|
1378
960
|
}
|
|
1379
961
|
|
|
1380
|
-
function
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
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
|
|
1392
|
-
|
|
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
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1418
|
-
|
|
991
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
992
|
+
let {
|
|
1419
993
|
provider
|
|
1420
|
-
} =
|
|
994
|
+
} = _ref;
|
|
1421
995
|
return provider;
|
|
1422
996
|
}, handleChange);
|
|
1423
997
|
return unsubscribe;
|
|
1424
998
|
}
|
|
1425
999
|
|
|
1426
1000
|
function watchEnsAvatar(args, callback) {
|
|
1427
|
-
|
|
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
|
-
|
|
1438
|
-
|
|
1003
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1004
|
+
let {
|
|
1439
1005
|
provider
|
|
1440
|
-
} =
|
|
1006
|
+
} = _ref;
|
|
1441
1007
|
return provider;
|
|
1442
1008
|
}, handleChange);
|
|
1443
1009
|
return unsubscribe;
|
|
1444
1010
|
}
|
|
1445
1011
|
|
|
1446
1012
|
function watchEnsName(args, callback) {
|
|
1447
|
-
|
|
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
|
-
|
|
1458
|
-
|
|
1015
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1016
|
+
let {
|
|
1459
1017
|
provider
|
|
1460
|
-
} =
|
|
1018
|
+
} = _ref;
|
|
1461
1019
|
return provider;
|
|
1462
1020
|
}, handleChange);
|
|
1463
1021
|
return unsubscribe;
|
|
1464
1022
|
}
|
|
1465
1023
|
|
|
1466
1024
|
function watchEnsResolver(args, callback) {
|
|
1467
|
-
|
|
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
|
-
|
|
1478
|
-
|
|
1027
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1028
|
+
let {
|
|
1479
1029
|
provider
|
|
1480
|
-
} =
|
|
1030
|
+
} = _ref;
|
|
1481
1031
|
return provider;
|
|
1482
1032
|
}, handleChange);
|
|
1483
1033
|
return unsubscribe;
|
|
1484
1034
|
}
|
|
1485
1035
|
|
|
1486
|
-
function fetchFeeData() {
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
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
|
-
|
|
1510
|
-
var _ref = base._asyncToGenerator(function* () {
|
|
1511
|
-
return callback(yield fetchFeeData(args));
|
|
1512
|
-
});
|
|
1052
|
+
const handleChange = async () => callback(await fetchFeeData(args));
|
|
1513
1053
|
|
|
1514
|
-
|
|
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
|
-
|
|
1523
|
-
|
|
1057
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1058
|
+
let {
|
|
1524
1059
|
provider
|
|
1525
|
-
} =
|
|
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
|
|
1070
|
+
return getClient().provider;
|
|
1536
1071
|
}
|
|
1537
1072
|
|
|
1538
1073
|
function getWebSocketProvider() {
|
|
1539
|
-
return
|
|
1540
|
-
}
|
|
1541
|
-
|
|
1542
|
-
function fetchToken(_x) {
|
|
1543
|
-
return _fetchToken.apply(this, arguments);
|
|
1074
|
+
return getClient().provider;
|
|
1544
1075
|
}
|
|
1545
1076
|
|
|
1546
|
-
function
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1563
|
-
|
|
1564
|
-
|
|
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
|
-
|
|
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
|
-
|
|
1584
|
-
|
|
1103
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
1104
|
+
let {
|
|
1585
1105
|
provider
|
|
1586
|
-
} =
|
|
1106
|
+
} = _ref;
|
|
1587
1107
|
return provider;
|
|
1588
1108
|
}, handleChange);
|
|
1589
1109
|
return unsubscribe;
|
|
1590
1110
|
}
|
|
1591
1111
|
|
|
1592
|
-
function sendTransaction(
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
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
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
|
|
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
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
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;
|