@wagmi/core 0.4.8 → 0.5.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/README.md +5 -5
- package/chains/dist/wagmi-core-chains.cjs.dev.js +2 -2
- package/chains/dist/wagmi-core-chains.cjs.prod.js +2 -2
- package/chains/dist/wagmi-core-chains.esm.js +2 -2
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.dev.js +28 -26
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.cjs.prod.js +28 -26
- package/connectors/coinbaseWallet/dist/wagmi-core-connectors-coinbaseWallet.esm.js +5 -3
- package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.dev.js +22 -23
- package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.cjs.prod.js +22 -23
- package/connectors/metaMask/dist/wagmi-core-connectors-metaMask.esm.js +7 -8
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.dev.js +33 -31
- package/connectors/mock/dist/wagmi-core-connectors-mock.cjs.prod.js +33 -31
- package/connectors/mock/dist/wagmi-core-connectors-mock.esm.js +6 -4
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.dev.js +24 -25
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.cjs.prod.js +24 -25
- package/connectors/walletConnect/dist/wagmi-core-connectors-walletConnect.esm.js +5 -6
- package/dist/{chains-7e6dc59c.cjs.dev.js → chains-13baf029.cjs.prod.js} +4 -4
- package/dist/{chains-fd2c546c.esm.js → chains-4b1a6cf8.esm.js} +4 -4
- package/dist/{chains-f7bb3211.cjs.prod.js → chains-a1aae67e.cjs.dev.js} +4 -4
- package/dist/declarations/src/actions/accounts/fetchBalance.d.ts +0 -1
- package/dist/declarations/src/actions/accounts/fetchSigner.d.ts +3 -3
- package/dist/declarations/src/actions/contracts/deprecatedWriteContract.d.ts +16 -0
- package/dist/declarations/src/actions/{tokens → contracts}/fetchToken.d.ts +1 -0
- package/dist/declarations/src/actions/contracts/index.d.ts +4 -1
- package/dist/declarations/src/actions/contracts/prepareWriteContract.d.ts +37 -0
- package/dist/declarations/src/actions/contracts/writeContract.d.ts +44 -8
- package/dist/declarations/src/actions/ens/fetchEnsAddress.d.ts +2 -1
- package/dist/declarations/src/actions/index.d.ts +2 -3
- package/dist/declarations/src/actions/transactions/deprecatedSendTransaction.d.ts +12 -0
- package/dist/declarations/src/actions/transactions/fetchTransaction.d.ts +21 -0
- package/dist/declarations/src/actions/transactions/index.d.ts +4 -1
- package/dist/declarations/src/actions/transactions/prepareSendTransaction.d.ts +36 -0
- package/dist/declarations/src/actions/transactions/sendTransaction.d.ts +43 -8
- package/dist/declarations/src/client.d.ts +3 -3
- package/dist/declarations/src/connectors/base.d.ts +1 -2
- package/dist/declarations/src/connectors/coinbaseWallet.d.ts +2 -2
- package/dist/declarations/src/connectors/index.d.ts +1 -1
- package/dist/declarations/src/connectors/injected.d.ts +4 -4
- package/dist/declarations/src/connectors/metaMask.d.ts +1 -1
- package/dist/declarations/src/connectors/mock/provider.d.ts +3 -2
- package/dist/declarations/src/connectors/walletConnect.d.ts +3 -2
- package/dist/declarations/src/constants/index.d.ts +1 -1
- package/dist/declarations/src/constants/rpcs.d.ts +2 -2
- package/dist/declarations/src/errors.d.ts +10 -3
- package/dist/declarations/src/index.d.ts +5 -5
- package/dist/declarations/src/providers/alchemy.d.ts +2 -3
- package/dist/declarations/src/providers/infura.d.ts +2 -3
- package/dist/declarations/src/providers/jsonRpc.d.ts +1 -2
- package/dist/declarations/src/providers/public.d.ts +2 -4
- package/dist/declarations/src/types/index.d.ts +133 -129
- package/dist/declarations/src/utils/configureChains.d.ts +3 -1
- package/dist/declarations/src/utils/getInjectedName.d.ts +2 -1
- package/dist/{client-a6e61429.cjs.prod.js → getProvider-5b369460.cjs.prod.js} +449 -56
- package/dist/{client-a05fd511.esm.js → getProvider-dda5b21b.esm.js} +383 -14
- package/dist/{client-71ece661.cjs.dev.js → getProvider-e4848469.cjs.dev.js} +449 -56
- package/dist/{rpcs-1fd0a12f.cjs.prod.js → rpcs-3d4e8104.cjs.dev.js} +9 -9
- package/dist/{rpcs-f1d24f0e.cjs.dev.js → rpcs-4b3a7778.cjs.prod.js} +9 -9
- package/dist/{rpcs-b73a8f60.esm.js → rpcs-5dc0ea1f.esm.js} +8 -8
- package/dist/wagmi-core.cjs.dev.js +591 -298
- package/dist/wagmi-core.cjs.prod.js +591 -298
- package/dist/wagmi-core.esm.js +499 -213
- package/package.json +8 -4
- package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.dev.js +5 -7
- package/providers/alchemy/dist/wagmi-core-providers-alchemy.cjs.prod.js +5 -7
- package/providers/alchemy/dist/wagmi-core-providers-alchemy.esm.js +5 -7
- package/providers/infura/dist/wagmi-core-providers-infura.cjs.dev.js +5 -7
- package/providers/infura/dist/wagmi-core-providers-infura.cjs.prod.js +5 -7
- package/providers/infura/dist/wagmi-core-providers-infura.esm.js +5 -7
- package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.dev.js +0 -2
- package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.cjs.prod.js +0 -2
- package/providers/jsonRpc/dist/wagmi-core-providers-jsonRpc.esm.js +0 -2
- package/providers/public/dist/wagmi-core-providers-public.cjs.dev.js +0 -2
- package/providers/public/dist/wagmi-core-providers-public.cjs.prod.js +0 -2
- package/providers/public/dist/wagmi-core-providers-public.esm.js +0 -2
- package/dist/base-797ad073.cjs.prod.js +0 -343
- package/dist/base-90b7f3e4.cjs.dev.js +0 -343
- package/dist/base-b565d5d4.esm.js +0 -316
- package/dist/declarations/src/actions/tokens/index.d.ts +0 -1
|
@@ -2,16 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
var
|
|
5
|
+
var getProvider = require('./getProvider-e4848469.cjs.dev.js');
|
|
6
|
+
var ethers = require('ethers');
|
|
7
7
|
var ethers$1 = require('ethers/lib/ethers');
|
|
8
8
|
var utils = require('ethers/lib/utils');
|
|
9
|
-
var ethers = require('ethers');
|
|
10
9
|
var shallow = require('zustand/shallow');
|
|
11
|
-
var rpcs = require('./rpcs-
|
|
12
|
-
var chains = require('./chains-
|
|
13
|
-
require('zustand/vanilla');
|
|
10
|
+
var rpcs = require('./rpcs-3d4e8104.cjs.dev.js');
|
|
11
|
+
var chains = require('./chains-a1aae67e.cjs.dev.js');
|
|
14
12
|
require('zustand/middleware');
|
|
13
|
+
require('zustand/vanilla');
|
|
15
14
|
require('eventemitter3');
|
|
16
15
|
|
|
17
16
|
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
@@ -21,6 +20,7 @@ var shallow__default = /*#__PURE__*/_interopDefault(shallow);
|
|
|
21
20
|
function configureChains(defaultChains, providers) {
|
|
22
21
|
let {
|
|
23
22
|
minQuorum = 1,
|
|
23
|
+
pollingInterval = 4000,
|
|
24
24
|
targetQuorum = 1,
|
|
25
25
|
stallTimeout
|
|
26
26
|
} = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
@@ -66,21 +66,27 @@ function configureChains(defaultChains, providers) {
|
|
|
66
66
|
return {
|
|
67
67
|
chains,
|
|
68
68
|
provider: _ref2 => {
|
|
69
|
-
var _defaultChains
|
|
69
|
+
var _defaultChains$;
|
|
70
70
|
|
|
71
71
|
let {
|
|
72
72
|
chainId
|
|
73
73
|
} = _ref2;
|
|
74
74
|
const activeChainId = chainId && chains.some(x => x.id === chainId) ? chainId : (_defaultChains$ = defaultChains[0]) === null || _defaultChains$ === void 0 ? void 0 : _defaultChains$.id;
|
|
75
75
|
const chainProviders = providers_[activeChainId];
|
|
76
|
-
if (!chainProviders) throw new Error("No providers configured for chain \"".concat(activeChainId, "\""));
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
if (!chainProviders || !chainProviders[0]) throw new Error("No providers configured for chain \"".concat(activeChainId, "\""));
|
|
77
|
+
|
|
78
|
+
if (chainProviders.length === 1) {
|
|
79
|
+
return Object.assign(chainProviders[0](), {
|
|
80
|
+
chains,
|
|
81
|
+
pollingInterval
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
80
85
|
return Object.assign(fallbackProvider(targetQuorum, minQuorum, chainProviders, {
|
|
81
86
|
stallTimeout
|
|
82
87
|
}), {
|
|
83
|
-
chains
|
|
88
|
+
chains,
|
|
89
|
+
pollingInterval
|
|
84
90
|
});
|
|
85
91
|
},
|
|
86
92
|
webSocketProvider: _ref3 => {
|
|
@@ -247,41 +253,44 @@ async function connect(_ref) {
|
|
|
247
253
|
chainId,
|
|
248
254
|
connector
|
|
249
255
|
} = _ref;
|
|
250
|
-
const client
|
|
251
|
-
const activeConnector = client
|
|
252
|
-
if (connector.id === (activeConnector === null || activeConnector === void 0 ? void 0 : activeConnector.id)) throw new
|
|
256
|
+
const client = getProvider.getClient();
|
|
257
|
+
const activeConnector = client.connector;
|
|
258
|
+
if (connector.id === (activeConnector === null || activeConnector === void 0 ? void 0 : activeConnector.id)) throw new getProvider.ConnectorAlreadyConnectedError();
|
|
253
259
|
|
|
254
260
|
try {
|
|
255
|
-
client
|
|
261
|
+
client.setState(x => ({ ...x,
|
|
256
262
|
status: 'connecting'
|
|
257
263
|
}));
|
|
258
264
|
const data = await connector.connect({
|
|
259
265
|
chainId
|
|
260
266
|
});
|
|
261
|
-
client
|
|
262
|
-
client
|
|
267
|
+
client.setLastUsedConnector(connector.id);
|
|
268
|
+
client.setState(x => ({ ...x,
|
|
263
269
|
connector,
|
|
264
270
|
chains: connector === null || connector === void 0 ? void 0 : connector.chains,
|
|
265
271
|
data,
|
|
266
272
|
status: 'connected'
|
|
267
273
|
}));
|
|
268
|
-
client
|
|
274
|
+
client.storage.setItem('connected', true);
|
|
269
275
|
return { ...data,
|
|
270
276
|
connector
|
|
271
277
|
};
|
|
272
278
|
} catch (err) {
|
|
273
|
-
client
|
|
274
|
-
|
|
275
|
-
|
|
279
|
+
client.setState(x => {
|
|
280
|
+
return { ...x,
|
|
281
|
+
// Keep existing connector connected in case of error
|
|
282
|
+
status: x.connector ? 'connected' : 'disconnected'
|
|
283
|
+
};
|
|
284
|
+
});
|
|
276
285
|
throw err;
|
|
277
286
|
}
|
|
278
287
|
}
|
|
279
288
|
|
|
280
289
|
async function disconnect() {
|
|
281
|
-
const client
|
|
282
|
-
if (client
|
|
283
|
-
client
|
|
284
|
-
client
|
|
290
|
+
const client = getProvider.getClient();
|
|
291
|
+
if (client.connector) await client.connector.disconnect();
|
|
292
|
+
client.clearState();
|
|
293
|
+
client.storage.removeItem('connected');
|
|
285
294
|
}
|
|
286
295
|
|
|
287
296
|
function getContract(_ref) {
|
|
@@ -293,34 +302,170 @@ function getContract(_ref) {
|
|
|
293
302
|
return new ethers.Contract(addressOrName, contractInterface, signerOrProvider);
|
|
294
303
|
}
|
|
295
304
|
|
|
296
|
-
function
|
|
305
|
+
async function deprecatedWriteContract(_ref) {
|
|
297
306
|
let {
|
|
307
|
+
addressOrName,
|
|
308
|
+
args,
|
|
309
|
+
chainId,
|
|
310
|
+
contractInterface,
|
|
311
|
+
functionName,
|
|
312
|
+
overrides,
|
|
313
|
+
signerOrProvider
|
|
314
|
+
} = _ref;
|
|
315
|
+
const {
|
|
316
|
+
connector
|
|
317
|
+
} = getProvider.getClient();
|
|
318
|
+
if (!connector) throw new getProvider.ConnectorNotFoundError();
|
|
319
|
+
const params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
|
|
320
|
+
|
|
321
|
+
try {
|
|
322
|
+
var _chain;
|
|
323
|
+
|
|
324
|
+
let chain;
|
|
325
|
+
|
|
326
|
+
if (chainId) {
|
|
327
|
+
const activeChainId = await connector.getChainId(); // Try to switch chain to provided `chainId`
|
|
328
|
+
|
|
329
|
+
if (chainId !== activeChainId) {
|
|
330
|
+
var _connector$chains$fin, _connector$chains$fin2, _connector$chains$fin3, _connector$chains$fin4;
|
|
331
|
+
|
|
332
|
+
if (connector.switchChain) chain = await connector.switchChain(chainId);else throw new getProvider.ChainMismatchError({
|
|
333
|
+
activeChain: (_connector$chains$fin = (_connector$chains$fin2 = connector.chains.find(x => x.id === activeChainId)) === null || _connector$chains$fin2 === void 0 ? void 0 : _connector$chains$fin2.name) !== null && _connector$chains$fin !== void 0 ? _connector$chains$fin : "Chain ".concat(activeChainId),
|
|
334
|
+
targetChain: (_connector$chains$fin3 = (_connector$chains$fin4 = connector.chains.find(x => x.id === chainId)) === null || _connector$chains$fin4 === void 0 ? void 0 : _connector$chains$fin4.name) !== null && _connector$chains$fin3 !== void 0 ? _connector$chains$fin3 : "Chain ".concat(chainId)
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
const signer = await connector.getSigner({
|
|
340
|
+
chainId: (_chain = chain) === null || _chain === void 0 ? void 0 : _chain.id
|
|
341
|
+
});
|
|
342
|
+
const contract = getContract({
|
|
343
|
+
addressOrName,
|
|
344
|
+
contractInterface,
|
|
345
|
+
signerOrProvider
|
|
346
|
+
});
|
|
347
|
+
const contractWithSigner = contract.connect(signer);
|
|
348
|
+
const contractFunction = contractWithSigner[functionName];
|
|
349
|
+
if (!contractFunction) console.warn("\"".concat(functionName, "\" does not exist in interface for contract \"").concat(addressOrName, "\""));
|
|
350
|
+
return await contractFunction(...params);
|
|
351
|
+
} catch (error) {
|
|
352
|
+
if (error.code === 4001) throw new getProvider.UserRejectedRequestError(error);
|
|
353
|
+
throw error;
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
async function fetchToken(_ref) {
|
|
358
|
+
let {
|
|
359
|
+
address,
|
|
360
|
+
chainId,
|
|
361
|
+
formatUnits: units = 'ether'
|
|
362
|
+
} = _ref;
|
|
363
|
+
const erc20Config = {
|
|
364
|
+
addressOrName: address,
|
|
365
|
+
contractInterface: erc20ABI,
|
|
298
366
|
chainId
|
|
299
|
-
}
|
|
300
|
-
const
|
|
301
|
-
|
|
302
|
-
|
|
367
|
+
};
|
|
368
|
+
const [decimals, name, symbol, totalSupply] = await readContracts({
|
|
369
|
+
allowFailure: false,
|
|
370
|
+
contracts: [{ ...erc20Config,
|
|
371
|
+
functionName: 'decimals'
|
|
372
|
+
}, { ...erc20Config,
|
|
373
|
+
functionName: 'name'
|
|
374
|
+
}, { ...erc20Config,
|
|
375
|
+
functionName: 'symbol'
|
|
376
|
+
}, { ...erc20Config,
|
|
377
|
+
functionName: 'totalSupply'
|
|
378
|
+
}]
|
|
379
|
+
});
|
|
380
|
+
return {
|
|
381
|
+
address,
|
|
382
|
+
decimals,
|
|
383
|
+
name,
|
|
384
|
+
symbol,
|
|
385
|
+
totalSupply: {
|
|
386
|
+
formatted: utils.formatUnits(totalSupply, units),
|
|
387
|
+
value: totalSupply
|
|
388
|
+
}
|
|
389
|
+
};
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
/**
|
|
393
|
+
* @description Prepares the parameters required for a contract write transaction.
|
|
394
|
+
*
|
|
395
|
+
* Returns config to be passed through to `writeContract`.
|
|
396
|
+
*
|
|
397
|
+
* @example
|
|
398
|
+
* import { prepareWriteContract, writeContract } from '@wagmi/core'
|
|
399
|
+
*
|
|
400
|
+
* const config = await prepareWriteContract({
|
|
401
|
+
* addressOrName: '0x...',
|
|
402
|
+
* contractInterface: wagmiAbi,
|
|
403
|
+
* functionName: 'mint',
|
|
404
|
+
* })
|
|
405
|
+
* const result = await writeContract(config)
|
|
406
|
+
*/
|
|
407
|
+
async function prepareWriteContract(_ref) {
|
|
408
|
+
let {
|
|
409
|
+
addressOrName,
|
|
410
|
+
args,
|
|
411
|
+
chainId,
|
|
412
|
+
contractInterface,
|
|
413
|
+
functionName,
|
|
414
|
+
overrides,
|
|
415
|
+
signer: signer_
|
|
416
|
+
} = _ref;
|
|
417
|
+
const signer = signer_ !== null && signer_ !== void 0 ? signer_ : await fetchSigner();
|
|
418
|
+
if (!signer) throw new getProvider.ConnectorNotFoundError();
|
|
419
|
+
const contract = getContract({
|
|
420
|
+
addressOrName,
|
|
421
|
+
contractInterface,
|
|
422
|
+
signerOrProvider: signer
|
|
303
423
|
});
|
|
304
|
-
|
|
424
|
+
const populateTransactionFn = contract.populateTransaction[functionName];
|
|
425
|
+
|
|
426
|
+
if (!populateTransactionFn) {
|
|
427
|
+
throw new getProvider.ContractMethodDoesNotExistError({
|
|
428
|
+
addressOrName,
|
|
429
|
+
functionName
|
|
430
|
+
});
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
const params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
|
|
434
|
+
const unsignedTransaction = await populateTransactionFn(...params);
|
|
435
|
+
const gasLimit = unsignedTransaction.gasLimit || (await signer.estimateGas(unsignedTransaction));
|
|
436
|
+
return {
|
|
437
|
+
addressOrName,
|
|
438
|
+
args,
|
|
439
|
+
...(chainId ? {
|
|
440
|
+
chainId
|
|
441
|
+
} : {}),
|
|
442
|
+
contractInterface,
|
|
443
|
+
functionName,
|
|
444
|
+
overrides,
|
|
445
|
+
request: { ...unsignedTransaction,
|
|
446
|
+
gasLimit
|
|
447
|
+
},
|
|
448
|
+
mode: 'prepared'
|
|
449
|
+
};
|
|
305
450
|
}
|
|
306
451
|
|
|
307
452
|
function getWebSocketProvider() {
|
|
308
453
|
let {
|
|
309
454
|
chainId
|
|
310
455
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
311
|
-
const client
|
|
312
|
-
if (chainId && typeof client
|
|
456
|
+
const client = getProvider.getClient();
|
|
457
|
+
if (chainId && typeof client.config.webSocketProvider === 'function') return client.config.webSocketProvider({
|
|
313
458
|
chainId
|
|
314
459
|
});
|
|
315
|
-
return client
|
|
460
|
+
return client.webSocketProvider;
|
|
316
461
|
}
|
|
317
462
|
|
|
318
463
|
function watchProvider(args, callback) {
|
|
319
|
-
const client
|
|
464
|
+
const client = getProvider.getClient();
|
|
320
465
|
|
|
321
|
-
const handleChange = async () => callback(getProvider(args));
|
|
466
|
+
const handleChange = async () => callback(getProvider.getProvider(args));
|
|
322
467
|
|
|
323
|
-
const unsubscribe = client
|
|
468
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
324
469
|
let {
|
|
325
470
|
provider
|
|
326
471
|
} = _ref;
|
|
@@ -330,11 +475,11 @@ function watchProvider(args, callback) {
|
|
|
330
475
|
}
|
|
331
476
|
|
|
332
477
|
function watchWebSocketProvider(args, callback) {
|
|
333
|
-
const client
|
|
478
|
+
const client = getProvider.getClient();
|
|
334
479
|
|
|
335
480
|
const handleChange = async () => callback(getWebSocketProvider(args));
|
|
336
481
|
|
|
337
|
-
const unsubscribe = client
|
|
482
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
338
483
|
let {
|
|
339
484
|
webSocketProvider
|
|
340
485
|
} = _ref;
|
|
@@ -352,7 +497,7 @@ async function readContract(_ref) {
|
|
|
352
497
|
functionName,
|
|
353
498
|
overrides
|
|
354
499
|
} = _ref;
|
|
355
|
-
const provider = getProvider({
|
|
500
|
+
const provider = getProvider.getProvider({
|
|
356
501
|
chainId
|
|
357
502
|
});
|
|
358
503
|
const contract = getContract({
|
|
@@ -374,16 +519,16 @@ async function multicall(_ref) {
|
|
|
374
519
|
contracts,
|
|
375
520
|
overrides
|
|
376
521
|
} = _ref;
|
|
377
|
-
const provider = getProvider({
|
|
522
|
+
const provider = getProvider.getProvider({
|
|
378
523
|
chainId
|
|
379
524
|
});
|
|
380
|
-
if (!provider.chains) throw new
|
|
525
|
+
if (!provider.chains) throw new getProvider.ProviderChainsNotFound();
|
|
381
526
|
const chain = provider.chains.find(chain => chain.id === chainId) || provider.chains[0];
|
|
382
|
-
if (!chain) throw new
|
|
383
|
-
if (!(chain !== null && chain !== void 0 && chain.multicall)) throw new
|
|
527
|
+
if (!chain) throw new getProvider.ProviderChainsNotFound();
|
|
528
|
+
if (!(chain !== null && chain !== void 0 && chain.multicall)) throw new getProvider.ChainDoesNotSupportMulticallError({
|
|
384
529
|
chain
|
|
385
530
|
});
|
|
386
|
-
if (typeof (overrides === null || overrides === void 0 ? void 0 : overrides.blockTag) === 'number' && (overrides === null || overrides === void 0 ? void 0 : overrides.blockTag) < chain.multicall.blockCreated) throw new
|
|
531
|
+
if (typeof (overrides === null || overrides === void 0 ? void 0 : overrides.blockTag) === 'number' && (overrides === null || overrides === void 0 ? void 0 : overrides.blockTag) < chain.multicall.blockCreated) throw new getProvider.ChainDoesNotSupportMulticallError({
|
|
387
532
|
blockNumber: overrides === null || overrides === void 0 ? void 0 : overrides.blockTag,
|
|
388
533
|
chain
|
|
389
534
|
});
|
|
@@ -430,11 +575,9 @@ async function multicall(_ref) {
|
|
|
430
575
|
} = contracts[i];
|
|
431
576
|
|
|
432
577
|
if (returnData === '0x') {
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
const err = new base.ContractMethodNoResultError({
|
|
578
|
+
const err = new getProvider.ContractMethodNoResultError({
|
|
436
579
|
addressOrName,
|
|
437
|
-
|
|
580
|
+
chainId: chain.id,
|
|
438
581
|
functionName
|
|
439
582
|
});
|
|
440
583
|
if (!allowFailure) throw err;
|
|
@@ -465,7 +608,7 @@ async function readContracts(_ref) {
|
|
|
465
608
|
} = _ref;
|
|
466
609
|
|
|
467
610
|
try {
|
|
468
|
-
const provider = getProvider();
|
|
611
|
+
const provider = getProvider.getProvider();
|
|
469
612
|
const contractsByChainId = contracts.reduce((contracts, contract) => {
|
|
470
613
|
var _contract$chainId;
|
|
471
614
|
|
|
@@ -488,7 +631,7 @@ async function readContracts(_ref) {
|
|
|
488
631
|
return (await Promise.allSettled(promises)).map(result => {
|
|
489
632
|
if (result.status === 'fulfilled') return result.value;
|
|
490
633
|
|
|
491
|
-
if (result.reason instanceof
|
|
634
|
+
if (result.reason instanceof getProvider.ChainDoesNotSupportMulticallError) {
|
|
492
635
|
console.warn(result.reason.message);
|
|
493
636
|
throw result.reason;
|
|
494
637
|
}
|
|
@@ -499,7 +642,7 @@ async function readContracts(_ref) {
|
|
|
499
642
|
|
|
500
643
|
return (await Promise.all(promises)).flat();
|
|
501
644
|
} catch (err) {
|
|
502
|
-
if (err instanceof
|
|
645
|
+
if (err instanceof getProvider.ContractMethodNoResultError) throw err;
|
|
503
646
|
const promises = contracts.map(contract => readContract({ ...contract,
|
|
504
647
|
overrides
|
|
505
648
|
}));
|
|
@@ -533,7 +676,7 @@ eventName, callback) {
|
|
|
533
676
|
contract = getContract({
|
|
534
677
|
signerOrProvider: getWebSocketProvider({
|
|
535
678
|
chainId
|
|
536
|
-
}) || getProvider({
|
|
679
|
+
}) || getProvider.getProvider({
|
|
537
680
|
chainId
|
|
538
681
|
}),
|
|
539
682
|
...contractArgs
|
|
@@ -542,8 +685,8 @@ eventName, callback) {
|
|
|
542
685
|
};
|
|
543
686
|
|
|
544
687
|
watchEvent();
|
|
545
|
-
const client
|
|
546
|
-
const unsubscribe = client
|
|
688
|
+
const client = getProvider.getClient();
|
|
689
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
547
690
|
let {
|
|
548
691
|
provider,
|
|
549
692
|
webSocketProvider
|
|
@@ -567,7 +710,7 @@ async function fetchBlockNumber() {
|
|
|
567
710
|
let {
|
|
568
711
|
chainId
|
|
569
712
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
570
|
-
const provider = getProvider({
|
|
713
|
+
const provider = getProvider.getProvider({
|
|
571
714
|
chainId
|
|
572
715
|
});
|
|
573
716
|
const blockNumber = await provider.getBlockNumber();
|
|
@@ -590,10 +733,10 @@ function watchBlockNumber(args, callback) {
|
|
|
590
733
|
previousProvider = provider;
|
|
591
734
|
};
|
|
592
735
|
|
|
593
|
-
const client
|
|
594
|
-
const provider_ = (_client$webSocketProv = client
|
|
736
|
+
const client = getProvider.getClient();
|
|
737
|
+
const provider_ = (_client$webSocketProv = client.webSocketProvider) !== null && _client$webSocketProv !== void 0 ? _client$webSocketProv : client.provider;
|
|
595
738
|
if (args.listen) createListener(provider_);
|
|
596
|
-
const unsubscribe = client
|
|
739
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
597
740
|
let {
|
|
598
741
|
provider,
|
|
599
742
|
webSocketProvider
|
|
@@ -624,14 +767,14 @@ function watchBlockNumber(args, callback) {
|
|
|
624
767
|
}
|
|
625
768
|
|
|
626
769
|
function watchReadContract(config, callback) {
|
|
627
|
-
const client
|
|
770
|
+
const client = getProvider.getClient();
|
|
628
771
|
|
|
629
772
|
const handleChange = async () => callback(await readContract(config));
|
|
630
773
|
|
|
631
774
|
const unwatch = config.listenToBlock ? watchBlockNumber({
|
|
632
775
|
listen: true
|
|
633
776
|
}, handleChange) : undefined;
|
|
634
|
-
const unsubscribe = client
|
|
777
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
635
778
|
let {
|
|
636
779
|
provider
|
|
637
780
|
} = _ref;
|
|
@@ -644,14 +787,14 @@ function watchReadContract(config, callback) {
|
|
|
644
787
|
}
|
|
645
788
|
|
|
646
789
|
function watchReadContracts(config, callback) {
|
|
647
|
-
const client
|
|
790
|
+
const client = getProvider.getClient();
|
|
648
791
|
|
|
649
792
|
const handleChange = async () => callback(await readContracts(config));
|
|
650
793
|
|
|
651
794
|
const unwatch = config.listenToBlock ? watchBlockNumber({
|
|
652
795
|
listen: true
|
|
653
796
|
}, handleChange) : undefined;
|
|
654
|
-
const unsubscribe = client
|
|
797
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
655
798
|
let {
|
|
656
799
|
provider
|
|
657
800
|
} = _ref;
|
|
@@ -663,21 +806,15 @@ function watchReadContracts(config, callback) {
|
|
|
663
806
|
};
|
|
664
807
|
}
|
|
665
808
|
|
|
666
|
-
async function
|
|
809
|
+
async function deprecatedSendTransaction(_ref) {
|
|
667
810
|
let {
|
|
668
|
-
addressOrName,
|
|
669
|
-
args,
|
|
670
811
|
chainId,
|
|
671
|
-
|
|
672
|
-
functionName,
|
|
673
|
-
overrides,
|
|
674
|
-
signerOrProvider
|
|
812
|
+
request
|
|
675
813
|
} = _ref;
|
|
676
814
|
const {
|
|
677
815
|
connector
|
|
678
|
-
} =
|
|
679
|
-
if (!connector) throw new
|
|
680
|
-
const params = [...(Array.isArray(args) ? args : args ? [args] : []), ...(overrides ? [overrides] : [])];
|
|
816
|
+
} = getProvider.getClient();
|
|
817
|
+
if (!connector) throw new getProvider.ConnectorNotFoundError();
|
|
681
818
|
|
|
682
819
|
try {
|
|
683
820
|
var _chain;
|
|
@@ -690,7 +827,7 @@ async function writeContract(_ref) {
|
|
|
690
827
|
if (chainId !== activeChainId) {
|
|
691
828
|
var _connector$chains$fin, _connector$chains$fin2, _connector$chains$fin3, _connector$chains$fin4;
|
|
692
829
|
|
|
693
|
-
if (connector.switchChain) chain = await connector.switchChain(chainId);else throw new
|
|
830
|
+
if (connector.switchChain) chain = await connector.switchChain(chainId);else throw new getProvider.ChainMismatchError({
|
|
694
831
|
activeChain: (_connector$chains$fin = (_connector$chains$fin2 = connector.chains.find(x => x.id === activeChainId)) === null || _connector$chains$fin2 === void 0 ? void 0 : _connector$chains$fin2.name) !== null && _connector$chains$fin !== void 0 ? _connector$chains$fin : "Chain ".concat(activeChainId),
|
|
695
832
|
targetChain: (_connector$chains$fin3 = (_connector$chains$fin4 = connector.chains.find(x => x.id === chainId)) === null || _connector$chains$fin4 === void 0 ? void 0 : _connector$chains$fin4.name) !== null && _connector$chains$fin3 !== void 0 ? _connector$chains$fin3 : "Chain ".concat(chainId)
|
|
696
833
|
});
|
|
@@ -700,32 +837,329 @@ async function writeContract(_ref) {
|
|
|
700
837
|
const signer = await connector.getSigner({
|
|
701
838
|
chainId: (_chain = chain) === null || _chain === void 0 ? void 0 : _chain.id
|
|
702
839
|
});
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
840
|
+
return await signer.sendTransaction(request);
|
|
841
|
+
} catch (error) {
|
|
842
|
+
if (error.code === 4001) throw new getProvider.UserRejectedRequestError(error);
|
|
843
|
+
throw error;
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
/**
|
|
848
|
+
* @description Fetches transaction for hash
|
|
849
|
+
*
|
|
850
|
+
* @example
|
|
851
|
+
* import { fetchTransaction } from '@wagmi/core'
|
|
852
|
+
*
|
|
853
|
+
* const transaction = await fetchTransaction({
|
|
854
|
+
* chainId: 1,
|
|
855
|
+
* hash: '0x...',
|
|
856
|
+
* })
|
|
857
|
+
*/
|
|
858
|
+
async function fetchTransaction(_ref) {
|
|
859
|
+
let {
|
|
860
|
+
chainId,
|
|
861
|
+
hash
|
|
862
|
+
} = _ref;
|
|
863
|
+
const provider = getProvider.getProvider({
|
|
864
|
+
chainId
|
|
865
|
+
});
|
|
866
|
+
return await provider.getTransaction(hash);
|
|
867
|
+
}
|
|
868
|
+
|
|
869
|
+
async function fetchEnsAddress(_ref) {
|
|
870
|
+
let {
|
|
871
|
+
chainId,
|
|
872
|
+
name
|
|
873
|
+
} = _ref;
|
|
874
|
+
const provider = getProvider.getProvider({
|
|
875
|
+
chainId
|
|
876
|
+
});
|
|
877
|
+
const address = await provider.resolveName(name);
|
|
878
|
+
|
|
879
|
+
try {
|
|
880
|
+
return address ? utils.getAddress(address) : null;
|
|
881
|
+
} catch (_error) {
|
|
882
|
+
return null;
|
|
883
|
+
}
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
async function fetchEnsAvatar(_ref) {
|
|
887
|
+
let {
|
|
888
|
+
addressOrName,
|
|
889
|
+
chainId
|
|
890
|
+
} = _ref;
|
|
891
|
+
const provider = getProvider.getProvider({
|
|
892
|
+
chainId
|
|
893
|
+
}); // TODO: Update with more advanced logic
|
|
894
|
+
// https://github.com/ensdomains/ens-avatar
|
|
895
|
+
|
|
896
|
+
const avatar = await provider.getAvatar(addressOrName);
|
|
897
|
+
return avatar;
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
async function fetchEnsName(_ref) {
|
|
901
|
+
let {
|
|
902
|
+
address,
|
|
903
|
+
chainId
|
|
904
|
+
} = _ref;
|
|
905
|
+
const provider = getProvider.getProvider({
|
|
906
|
+
chainId
|
|
907
|
+
});
|
|
908
|
+
return await provider.lookupAddress(address);
|
|
909
|
+
}
|
|
910
|
+
|
|
911
|
+
async function fetchEnsResolver(_ref) {
|
|
912
|
+
let {
|
|
913
|
+
chainId,
|
|
914
|
+
name
|
|
915
|
+
} = _ref;
|
|
916
|
+
const provider = getProvider.getProvider({
|
|
917
|
+
chainId
|
|
918
|
+
});
|
|
919
|
+
const resolver = await provider.getResolver(name);
|
|
920
|
+
return resolver;
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
/**
|
|
924
|
+
* @description Prepares the parameters required for sending a transaction.
|
|
925
|
+
*
|
|
926
|
+
* Returns config to be passed through to `sendTransaction`.
|
|
927
|
+
*
|
|
928
|
+
* @example
|
|
929
|
+
* import { prepareSendTransaction, sendTransaction } from '@wagmi/core'
|
|
930
|
+
*
|
|
931
|
+
* const config = await prepareSendTransaction({
|
|
932
|
+
* request: {
|
|
933
|
+
* to: 'moxey.eth',
|
|
934
|
+
* value: parseEther('1'),
|
|
935
|
+
* }
|
|
936
|
+
* })
|
|
937
|
+
* const result = await sendTransaction(config)
|
|
938
|
+
*/
|
|
939
|
+
async function prepareSendTransaction(_ref) {
|
|
940
|
+
let {
|
|
941
|
+
chainId,
|
|
942
|
+
request,
|
|
943
|
+
signerOrProvider = getProvider.getProvider({
|
|
944
|
+
chainId
|
|
945
|
+
})
|
|
946
|
+
} = _ref;
|
|
947
|
+
const [to, gasLimit] = await Promise.all([utils.isAddress(request.to) ? Promise.resolve(request.to) : fetchEnsAddress({
|
|
948
|
+
name: request.to
|
|
949
|
+
}), request.gasLimit ? Promise.resolve(request.gasLimit) : signerOrProvider.estimateGas(request)]);
|
|
950
|
+
if (!to) throw new Error('Could not resolve ENS name');
|
|
951
|
+
return { ...(chainId ? {
|
|
952
|
+
chainId
|
|
953
|
+
} : {}),
|
|
954
|
+
request: { ...request,
|
|
955
|
+
gasLimit,
|
|
956
|
+
to
|
|
957
|
+
},
|
|
958
|
+
mode: 'prepared'
|
|
959
|
+
};
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
/**
|
|
963
|
+
* @description Function to send a transaction.
|
|
964
|
+
*
|
|
965
|
+
* It is recommended to pair this with the `prepareSendTransaction` function to avoid
|
|
966
|
+
* [UX pitfalls](https://wagmi.sh/docs/prepare-hooks/intro#ux-pitfalls-without-prepare-hooks).
|
|
967
|
+
*
|
|
968
|
+
* @example
|
|
969
|
+
* import { prepareSendTransaction, sendTransaction } from '@wagmi/core'
|
|
970
|
+
*
|
|
971
|
+
* const config = await prepareSendTransaction({
|
|
972
|
+
* to: 'moxey.eth',
|
|
973
|
+
* value: parseEther('1'),
|
|
974
|
+
* })
|
|
975
|
+
* const result = await sendTransaction(config)
|
|
976
|
+
*/
|
|
977
|
+
async function sendTransaction(_ref) {
|
|
978
|
+
let {
|
|
979
|
+
chainId,
|
|
980
|
+
mode,
|
|
981
|
+
request
|
|
982
|
+
} = _ref;
|
|
983
|
+
|
|
984
|
+
/********************************************************************/
|
|
985
|
+
|
|
986
|
+
/** START: iOS App Link cautious code. */
|
|
987
|
+
|
|
988
|
+
/** Do not perform any async operations in this block. */
|
|
989
|
+
|
|
990
|
+
/** Ref: wagmi.sh/docs/prepare-hooks/intro#ios-app-link-constraints */
|
|
991
|
+
|
|
992
|
+
/********************************************************************/
|
|
993
|
+
// `fetchSigner` isn't really "asynchronous" as we have already
|
|
994
|
+
// initialized the provider upon user connection, so it will return
|
|
995
|
+
// immediately.
|
|
996
|
+
const signer = await fetchSigner();
|
|
997
|
+
if (!signer) throw new getProvider.ConnectorNotFoundError();
|
|
998
|
+
|
|
999
|
+
if (mode === 'prepared') {
|
|
1000
|
+
if (!request.gasLimit) throw new Error('`gasLimit` is required');
|
|
1001
|
+
if (!request.to) throw new Error('`to` is required');
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
const {
|
|
1005
|
+
chain: activeChain,
|
|
1006
|
+
chains
|
|
1007
|
+
} = getNetwork();
|
|
1008
|
+
const activeChainId = activeChain === null || activeChain === void 0 ? void 0 : activeChain.id;
|
|
1009
|
+
|
|
1010
|
+
if (chainId && chainId !== (activeChain === null || activeChain === void 0 ? void 0 : activeChain.id)) {
|
|
1011
|
+
var _chains$find$name, _chains$find, _chains$find$name2, _chains$find2;
|
|
1012
|
+
|
|
1013
|
+
throw new getProvider.ChainMismatchError({
|
|
1014
|
+
activeChain: (_chains$find$name = (_chains$find = chains.find(x => x.id === activeChainId)) === null || _chains$find === void 0 ? void 0 : _chains$find.name) !== null && _chains$find$name !== void 0 ? _chains$find$name : "Chain ".concat(activeChainId),
|
|
1015
|
+
targetChain: (_chains$find$name2 = (_chains$find2 = chains.find(x => x.id === chainId)) === null || _chains$find2 === void 0 ? void 0 : _chains$find2.name) !== null && _chains$find$name2 !== void 0 ? _chains$find$name2 : "Chain ".concat(chainId)
|
|
707
1016
|
});
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
try {
|
|
1020
|
+
var _connectUnchecked, _ref2;
|
|
1021
|
+
|
|
1022
|
+
// Why don't we just use `signer.sendTransaction`?
|
|
1023
|
+
// The `signer.sendTransaction` method performs async
|
|
1024
|
+
// heavy operations (such as fetching block number)
|
|
1025
|
+
// which is not really needed for our case.
|
|
1026
|
+
// Having async heavy operations has side effects
|
|
1027
|
+
// when using it in a click handler (iOS deep linking issues,
|
|
1028
|
+
// delay to open wallet, etc).
|
|
1029
|
+
const uncheckedSigner = (_connectUnchecked = (_ref2 = signer).connectUnchecked) === null || _connectUnchecked === void 0 ? void 0 : _connectUnchecked.call(_ref2);
|
|
1030
|
+
const {
|
|
1031
|
+
hash,
|
|
1032
|
+
wait
|
|
1033
|
+
} = await (uncheckedSigner !== null && uncheckedSigner !== void 0 ? uncheckedSigner : signer).sendTransaction(request);
|
|
1034
|
+
/********************************************************************/
|
|
1035
|
+
|
|
1036
|
+
/** END: iOS App Link cautious code. */
|
|
1037
|
+
|
|
1038
|
+
/** Go nuts! */
|
|
1039
|
+
|
|
1040
|
+
/********************************************************************/
|
|
1041
|
+
|
|
1042
|
+
return {
|
|
1043
|
+
hash,
|
|
1044
|
+
wait
|
|
1045
|
+
};
|
|
712
1046
|
} catch (error) {
|
|
713
|
-
if (error.code === 4001) throw new
|
|
1047
|
+
if (error.code === 4001) throw new getProvider.UserRejectedRequestError(error);
|
|
714
1048
|
throw error;
|
|
715
1049
|
}
|
|
716
1050
|
}
|
|
717
1051
|
|
|
1052
|
+
async function waitForTransaction(_ref) {
|
|
1053
|
+
let {
|
|
1054
|
+
chainId,
|
|
1055
|
+
confirmations,
|
|
1056
|
+
hash,
|
|
1057
|
+
timeout,
|
|
1058
|
+
wait: wait_
|
|
1059
|
+
} = _ref;
|
|
1060
|
+
let promise;
|
|
1061
|
+
|
|
1062
|
+
if (hash) {
|
|
1063
|
+
const provider = getProvider.getProvider({
|
|
1064
|
+
chainId
|
|
1065
|
+
});
|
|
1066
|
+
promise = provider.waitForTransaction(hash, confirmations, timeout);
|
|
1067
|
+
} else if (wait_) promise = wait_(confirmations);else throw new Error('hash or wait is required');
|
|
1068
|
+
|
|
1069
|
+
return await promise;
|
|
1070
|
+
}
|
|
1071
|
+
|
|
1072
|
+
/**
|
|
1073
|
+
* @description Function to call a contract write method.
|
|
1074
|
+
*
|
|
1075
|
+
* It is recommended to pair this with the {@link prepareWriteContract} function
|
|
1076
|
+
* to avoid [UX pitfalls](https://wagmi.sh/docs/prepare-hooks/intro#ux-pitfalls-without-prepare-hooks).
|
|
1077
|
+
*
|
|
1078
|
+
* @example
|
|
1079
|
+
* import { prepareWriteContract, writeContract } from '@wagmi/core'
|
|
1080
|
+
*
|
|
1081
|
+
* const config = await prepareWriteContract({
|
|
1082
|
+
* addressOrName: '0x...',
|
|
1083
|
+
* contractInterface: wagmiAbi,
|
|
1084
|
+
* functionName: 'mint',
|
|
1085
|
+
* })
|
|
1086
|
+
* const result = await writeContract(config)
|
|
1087
|
+
*/
|
|
1088
|
+
async function writeContract(_ref) {
|
|
1089
|
+
let {
|
|
1090
|
+
addressOrName,
|
|
1091
|
+
args,
|
|
1092
|
+
chainId,
|
|
1093
|
+
contractInterface,
|
|
1094
|
+
functionName,
|
|
1095
|
+
mode,
|
|
1096
|
+
overrides,
|
|
1097
|
+
request: request_
|
|
1098
|
+
} = _ref;
|
|
1099
|
+
|
|
1100
|
+
/********************************************************************/
|
|
1101
|
+
|
|
1102
|
+
/** START: iOS App Link cautious code. */
|
|
1103
|
+
|
|
1104
|
+
/** Do not perform any async operations in this block. */
|
|
1105
|
+
|
|
1106
|
+
/** Ref: wagmi.sh/docs/prepare-hooks/intro#ios-app-link-constraints */
|
|
1107
|
+
|
|
1108
|
+
/********************************************************************/
|
|
1109
|
+
const signer = await fetchSigner();
|
|
1110
|
+
if (!signer) throw new getProvider.ConnectorNotFoundError();
|
|
1111
|
+
const {
|
|
1112
|
+
chain: activeChain,
|
|
1113
|
+
chains
|
|
1114
|
+
} = getNetwork();
|
|
1115
|
+
const activeChainId = activeChain === null || activeChain === void 0 ? void 0 : activeChain.id;
|
|
1116
|
+
|
|
1117
|
+
if (chainId && chainId !== activeChainId) {
|
|
1118
|
+
var _chains$find$name, _chains$find, _chains$find$name2, _chains$find2;
|
|
1119
|
+
|
|
1120
|
+
throw new getProvider.ChainMismatchError({
|
|
1121
|
+
activeChain: (_chains$find$name = (_chains$find = chains.find(x => x.id === activeChainId)) === null || _chains$find === void 0 ? void 0 : _chains$find.name) !== null && _chains$find$name !== void 0 ? _chains$find$name : "Chain ".concat(activeChainId),
|
|
1122
|
+
targetChain: (_chains$find$name2 = (_chains$find2 = chains.find(x => x.id === chainId)) === null || _chains$find2 === void 0 ? void 0 : _chains$find2.name) !== null && _chains$find$name2 !== void 0 ? _chains$find$name2 : "Chain ".concat(chainId)
|
|
1123
|
+
});
|
|
1124
|
+
}
|
|
1125
|
+
|
|
1126
|
+
if (mode === 'prepared') {
|
|
1127
|
+
if (!request_) throw new Error('`request` is required');
|
|
1128
|
+
}
|
|
1129
|
+
|
|
1130
|
+
const request = mode === 'recklesslyUnprepared' ? (await prepareWriteContract({
|
|
1131
|
+
addressOrName,
|
|
1132
|
+
args,
|
|
1133
|
+
contractInterface,
|
|
1134
|
+
functionName,
|
|
1135
|
+
overrides
|
|
1136
|
+
})).request : request_;
|
|
1137
|
+
const transaction = await sendTransaction({
|
|
1138
|
+
request,
|
|
1139
|
+
mode: 'prepared'
|
|
1140
|
+
});
|
|
1141
|
+
/********************************************************************/
|
|
1142
|
+
|
|
1143
|
+
/** END: iOS App Link cautious code. */
|
|
1144
|
+
|
|
1145
|
+
/** Go nuts! */
|
|
1146
|
+
|
|
1147
|
+
/********************************************************************/
|
|
1148
|
+
|
|
1149
|
+
return transaction;
|
|
1150
|
+
}
|
|
1151
|
+
|
|
718
1152
|
async function fetchBalance(_ref) {
|
|
719
1153
|
var _client$chains, _chain$nativeCurrency, _chain$nativeCurrency2, _chain$nativeCurrency3, _chain$nativeCurrency4;
|
|
720
1154
|
|
|
721
1155
|
let {
|
|
722
1156
|
addressOrName,
|
|
723
1157
|
chainId,
|
|
724
|
-
formatUnits: unit
|
|
1158
|
+
formatUnits: unit,
|
|
725
1159
|
token
|
|
726
1160
|
} = _ref;
|
|
727
|
-
const client
|
|
728
|
-
const provider = getProvider({
|
|
1161
|
+
const client = getProvider.getClient();
|
|
1162
|
+
const provider = getProvider.getProvider({
|
|
729
1163
|
chainId
|
|
730
1164
|
});
|
|
731
1165
|
|
|
@@ -758,21 +1192,19 @@ async function fetchBalance(_ref) {
|
|
|
758
1192
|
});
|
|
759
1193
|
return {
|
|
760
1194
|
decimals,
|
|
761
|
-
formatted: utils.formatUnits(value !== null && value !== void 0 ? value : '0', unit),
|
|
1195
|
+
formatted: utils.formatUnits(value !== null && value !== void 0 ? value : '0', unit !== null && unit !== void 0 ? unit : decimals),
|
|
762
1196
|
symbol,
|
|
763
|
-
unit,
|
|
764
1197
|
value
|
|
765
1198
|
};
|
|
766
1199
|
}
|
|
767
1200
|
|
|
768
|
-
const chains = [...(client
|
|
1201
|
+
const chains = [...(client.provider.chains || []), ...((_client$chains = client.chains) !== null && _client$chains !== void 0 ? _client$chains : [])];
|
|
769
1202
|
const value = await provider.getBalance(addressOrName);
|
|
770
1203
|
const chain = chains.find(x => x.id === provider.network.chainId);
|
|
771
1204
|
return {
|
|
772
1205
|
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,
|
|
773
|
-
formatted: utils.formatUnits(value !== null && value !== void 0 ? value : '0', unit),
|
|
1206
|
+
formatted: utils.formatUnits(value !== null && value !== void 0 ? value : '0', unit !== null && unit !== void 0 ? unit : 'ether'),
|
|
774
1207
|
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',
|
|
775
|
-
unit,
|
|
776
1208
|
value
|
|
777
1209
|
};
|
|
778
1210
|
}
|
|
@@ -780,8 +1212,8 @@ async function fetchBalance(_ref) {
|
|
|
780
1212
|
async function fetchSigner() {
|
|
781
1213
|
var _client$connector, _client$connector$get;
|
|
782
1214
|
|
|
783
|
-
const client
|
|
784
|
-
const signer = (await ((_client$connector = client
|
|
1215
|
+
const client = getProvider.getClient();
|
|
1216
|
+
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))) || null;
|
|
785
1217
|
return signer;
|
|
786
1218
|
}
|
|
787
1219
|
|
|
@@ -790,7 +1222,7 @@ function getAccount() {
|
|
|
790
1222
|
data,
|
|
791
1223
|
connector,
|
|
792
1224
|
status
|
|
793
|
-
} =
|
|
1225
|
+
} = getProvider.getClient();
|
|
794
1226
|
|
|
795
1227
|
switch (status) {
|
|
796
1228
|
case 'connected':
|
|
@@ -842,10 +1274,10 @@ function getAccount() {
|
|
|
842
1274
|
function getNetwork() {
|
|
843
1275
|
var _client$data, _client$data$chain, _client$chains, _find, _client$data2;
|
|
844
1276
|
|
|
845
|
-
const client
|
|
846
|
-
const chainId = (_client$data = client
|
|
847
|
-
const activeChains = (_client$chains = client
|
|
848
|
-
const activeChain = (_find = [...(client
|
|
1277
|
+
const client = getProvider.getClient();
|
|
1278
|
+
const chainId = (_client$data = client.data) === null || _client$data === void 0 ? void 0 : (_client$data$chain = _client$data.chain) === null || _client$data$chain === void 0 ? void 0 : _client$data$chain.id;
|
|
1279
|
+
const activeChains = (_client$chains = client.chains) !== null && _client$chains !== void 0 ? _client$chains : [];
|
|
1280
|
+
const activeChain = (_find = [...(client.provider.chains || []), ...activeChains].find(x => x.id === chainId)) !== null && _find !== void 0 ? _find : {
|
|
849
1281
|
id: chainId,
|
|
850
1282
|
name: "Chain ".concat(chainId),
|
|
851
1283
|
network: "".concat(chainId),
|
|
@@ -855,7 +1287,7 @@ function getNetwork() {
|
|
|
855
1287
|
};
|
|
856
1288
|
return {
|
|
857
1289
|
chain: chainId ? { ...activeChain,
|
|
858
|
-
...((_client$data2 = client
|
|
1290
|
+
...((_client$data2 = client.data) === null || _client$data2 === void 0 ? void 0 : _client$data2.chain),
|
|
859
1291
|
id: chainId
|
|
860
1292
|
} : undefined,
|
|
861
1293
|
chains: activeChains
|
|
@@ -865,10 +1297,10 @@ function getNetwork() {
|
|
|
865
1297
|
async function signMessage(args) {
|
|
866
1298
|
try {
|
|
867
1299
|
const signer = await fetchSigner();
|
|
868
|
-
if (!signer) throw new
|
|
1300
|
+
if (!signer) throw new getProvider.ConnectorNotFoundError();
|
|
869
1301
|
return await signer.signMessage(args.message);
|
|
870
1302
|
} catch (error) {
|
|
871
|
-
if (error.code === 4001) throw new
|
|
1303
|
+
if (error.code === 4001) throw new getProvider.UserRejectedRequestError(error);
|
|
872
1304
|
throw error;
|
|
873
1305
|
}
|
|
874
1306
|
}
|
|
@@ -879,42 +1311,32 @@ async function signTypedData(_ref) {
|
|
|
879
1311
|
types,
|
|
880
1312
|
value
|
|
881
1313
|
} = _ref;
|
|
1314
|
+
const signer = await fetchSigner();
|
|
1315
|
+
if (!signer) throw new getProvider.ConnectorNotFoundError();
|
|
882
1316
|
const {
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
const {
|
|
891
|
-
chainId
|
|
892
|
-
} = domain;
|
|
893
|
-
let chain;
|
|
1317
|
+
chain: activeChain,
|
|
1318
|
+
chains
|
|
1319
|
+
} = getNetwork();
|
|
1320
|
+
const {
|
|
1321
|
+
chainId: chainId_
|
|
1322
|
+
} = domain;
|
|
894
1323
|
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
1324
|
+
if (chainId_) {
|
|
1325
|
+
const chainId = getProvider.normalizeChainId(chainId_);
|
|
1326
|
+
const activeChainId = activeChain === null || activeChain === void 0 ? void 0 : activeChain.id;
|
|
898
1327
|
|
|
899
|
-
|
|
900
|
-
|
|
1328
|
+
if (chainId !== (activeChain === null || activeChain === void 0 ? void 0 : activeChain.id)) {
|
|
1329
|
+
var _chains$find$name, _chains$find, _chains$find$name2, _chains$find2;
|
|
901
1330
|
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
}
|
|
1331
|
+
throw new getProvider.ChainMismatchError({
|
|
1332
|
+
activeChain: (_chains$find$name = (_chains$find = chains.find(x => x.id === activeChainId)) === null || _chains$find === void 0 ? void 0 : _chains$find.name) !== null && _chains$find$name !== void 0 ? _chains$find$name : "Chain ".concat(activeChainId),
|
|
1333
|
+
targetChain: (_chains$find$name2 = (_chains$find2 = chains.find(x => x.id === chainId)) === null || _chains$find2 === void 0 ? void 0 : _chains$find2.name) !== null && _chains$find$name2 !== void 0 ? _chains$find$name2 : "Chain ".concat(chainId)
|
|
1334
|
+
});
|
|
907
1335
|
}
|
|
1336
|
+
} // Method name may be changed in the future, see https://docs.ethers.io/v5/api/signer/#Signer-signTypedData
|
|
908
1337
|
|
|
909
|
-
const signer = await connector.getSigner({
|
|
910
|
-
chainId: (_chain = chain) === null || _chain === void 0 ? void 0 : _chain.id
|
|
911
|
-
}); // Method name may be changed in the future, see https://docs.ethers.io/v5/api/signer/#Signer-signTypedData
|
|
912
1338
|
|
|
913
|
-
|
|
914
|
-
} catch (error) {
|
|
915
|
-
if (error.code === 4001) throw new base.UserRejectedRequestError(error);
|
|
916
|
-
throw error;
|
|
917
|
-
}
|
|
1339
|
+
return await signer._signTypedData(domain, types, value);
|
|
918
1340
|
}
|
|
919
1341
|
|
|
920
1342
|
async function switchNetwork(_ref) {
|
|
@@ -923,9 +1345,9 @@ async function switchNetwork(_ref) {
|
|
|
923
1345
|
} = _ref;
|
|
924
1346
|
const {
|
|
925
1347
|
connector
|
|
926
|
-
} =
|
|
927
|
-
if (!connector) throw new
|
|
928
|
-
if (!connector.switchChain) throw new
|
|
1348
|
+
} = getProvider.getClient();
|
|
1349
|
+
if (!connector) throw new getProvider.ConnectorNotFoundError();
|
|
1350
|
+
if (!connector.switchChain) throw new getProvider.SwitchChainNotSupportedError({
|
|
929
1351
|
connector
|
|
930
1352
|
});
|
|
931
1353
|
return await connector.switchChain(chainId);
|
|
@@ -935,11 +1357,11 @@ function watchAccount(callback) {
|
|
|
935
1357
|
let {
|
|
936
1358
|
selector = x => x
|
|
937
1359
|
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
938
|
-
const client
|
|
1360
|
+
const client = getProvider.getClient();
|
|
939
1361
|
|
|
940
1362
|
const handleChange = () => callback(getAccount());
|
|
941
1363
|
|
|
942
|
-
const unsubscribe = client
|
|
1364
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
943
1365
|
let {
|
|
944
1366
|
data,
|
|
945
1367
|
connector,
|
|
@@ -960,11 +1382,11 @@ function watchNetwork(callback) {
|
|
|
960
1382
|
let {
|
|
961
1383
|
selector = x => x
|
|
962
1384
|
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
963
|
-
const client
|
|
1385
|
+
const client = getProvider.getClient();
|
|
964
1386
|
|
|
965
1387
|
const handleChange = () => callback(getNetwork());
|
|
966
1388
|
|
|
967
|
-
const unsubscribe = client
|
|
1389
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
968
1390
|
var _data$chain;
|
|
969
1391
|
|
|
970
1392
|
let {
|
|
@@ -982,11 +1404,11 @@ function watchNetwork(callback) {
|
|
|
982
1404
|
}
|
|
983
1405
|
|
|
984
1406
|
function watchSigner(callback) {
|
|
985
|
-
const client
|
|
1407
|
+
const client = getProvider.getClient();
|
|
986
1408
|
|
|
987
1409
|
const handleChange = async () => callback(await fetchSigner());
|
|
988
1410
|
|
|
989
|
-
const unsubscribe = client
|
|
1411
|
+
const unsubscribe = client.subscribe(_ref => {
|
|
990
1412
|
var _data$chain;
|
|
991
1413
|
|
|
992
1414
|
let {
|
|
@@ -1004,66 +1426,12 @@ function watchSigner(callback) {
|
|
|
1004
1426
|
return unsubscribe;
|
|
1005
1427
|
}
|
|
1006
1428
|
|
|
1007
|
-
async function fetchEnsAddress(_ref) {
|
|
1008
|
-
let {
|
|
1009
|
-
chainId,
|
|
1010
|
-
name
|
|
1011
|
-
} = _ref;
|
|
1012
|
-
const provider = getProvider({
|
|
1013
|
-
chainId
|
|
1014
|
-
});
|
|
1015
|
-
const address = await provider.resolveName(name);
|
|
1016
|
-
|
|
1017
|
-
try {
|
|
1018
|
-
return address ? utils.getAddress(address) : null;
|
|
1019
|
-
} catch (_error) {
|
|
1020
|
-
return null;
|
|
1021
|
-
}
|
|
1022
|
-
}
|
|
1023
|
-
|
|
1024
|
-
async function fetchEnsAvatar(_ref) {
|
|
1025
|
-
let {
|
|
1026
|
-
addressOrName,
|
|
1027
|
-
chainId
|
|
1028
|
-
} = _ref;
|
|
1029
|
-
const provider = getProvider({
|
|
1030
|
-
chainId
|
|
1031
|
-
}); // TODO: Update with more advanced logic
|
|
1032
|
-
// https://github.com/ensdomains/ens-avatar
|
|
1033
|
-
|
|
1034
|
-
const avatar = await provider.getAvatar(addressOrName);
|
|
1035
|
-
return avatar;
|
|
1036
|
-
}
|
|
1037
|
-
|
|
1038
|
-
async function fetchEnsName(_ref) {
|
|
1039
|
-
let {
|
|
1040
|
-
address,
|
|
1041
|
-
chainId
|
|
1042
|
-
} = _ref;
|
|
1043
|
-
const provider = getProvider({
|
|
1044
|
-
chainId
|
|
1045
|
-
});
|
|
1046
|
-
return await provider.lookupAddress(address);
|
|
1047
|
-
}
|
|
1048
|
-
|
|
1049
|
-
async function fetchEnsResolver(_ref) {
|
|
1050
|
-
let {
|
|
1051
|
-
chainId,
|
|
1052
|
-
name
|
|
1053
|
-
} = _ref;
|
|
1054
|
-
const provider = getProvider({
|
|
1055
|
-
chainId
|
|
1056
|
-
});
|
|
1057
|
-
const resolver = await provider.getResolver(name);
|
|
1058
|
-
return resolver;
|
|
1059
|
-
}
|
|
1060
|
-
|
|
1061
1429
|
async function fetchFeeData() {
|
|
1062
1430
|
let {
|
|
1063
1431
|
chainId,
|
|
1064
1432
|
formatUnits: units = 'wei'
|
|
1065
1433
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
1066
|
-
const provider = getProvider({
|
|
1434
|
+
const provider = getProvider.getProvider({
|
|
1067
1435
|
chainId
|
|
1068
1436
|
});
|
|
1069
1437
|
const feeData = await provider.getFeeData();
|
|
@@ -1077,108 +1445,29 @@ async function fetchFeeData() {
|
|
|
1077
1445
|
};
|
|
1078
1446
|
}
|
|
1079
1447
|
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
async function sendTransaction(_ref) {
|
|
1104
|
-
let {
|
|
1105
|
-
chainId,
|
|
1106
|
-
request
|
|
1107
|
-
} = _ref;
|
|
1108
|
-
const {
|
|
1109
|
-
connector
|
|
1110
|
-
} = client.getClient();
|
|
1111
|
-
if (!connector) throw new base.ConnectorNotFoundError();
|
|
1112
|
-
|
|
1113
|
-
try {
|
|
1114
|
-
var _chain;
|
|
1115
|
-
|
|
1116
|
-
let chain;
|
|
1117
|
-
|
|
1118
|
-
if (chainId) {
|
|
1119
|
-
const activeChainId = await connector.getChainId(); // Try to switch chain to provided `chainId`
|
|
1120
|
-
|
|
1121
|
-
if (chainId !== activeChainId) {
|
|
1122
|
-
var _connector$chains$fin, _connector$chains$fin2, _connector$chains$fin3, _connector$chains$fin4;
|
|
1123
|
-
|
|
1124
|
-
if (connector.switchChain) chain = await connector.switchChain(chainId);else throw new base.ChainMismatchError({
|
|
1125
|
-
activeChain: (_connector$chains$fin = (_connector$chains$fin2 = connector.chains.find(x => x.id === activeChainId)) === null || _connector$chains$fin2 === void 0 ? void 0 : _connector$chains$fin2.name) !== null && _connector$chains$fin !== void 0 ? _connector$chains$fin : "Chain ".concat(activeChainId),
|
|
1126
|
-
targetChain: (_connector$chains$fin3 = (_connector$chains$fin4 = connector.chains.find(x => x.id === chainId)) === null || _connector$chains$fin4 === void 0 ? void 0 : _connector$chains$fin4.name) !== null && _connector$chains$fin3 !== void 0 ? _connector$chains$fin3 : "Chain ".concat(chainId)
|
|
1127
|
-
});
|
|
1128
|
-
}
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
const signer = await connector.getSigner({
|
|
1132
|
-
chainId: (_chain = chain) === null || _chain === void 0 ? void 0 : _chain.id
|
|
1133
|
-
});
|
|
1134
|
-
return await signer.sendTransaction(request);
|
|
1135
|
-
} catch (error) {
|
|
1136
|
-
if (error.code === 4001) throw new base.UserRejectedRequestError(error);
|
|
1137
|
-
throw error;
|
|
1138
|
-
}
|
|
1139
|
-
}
|
|
1140
|
-
|
|
1141
|
-
async function waitForTransaction(_ref) {
|
|
1142
|
-
let {
|
|
1143
|
-
chainId,
|
|
1144
|
-
confirmations,
|
|
1145
|
-
hash,
|
|
1146
|
-
timeout,
|
|
1147
|
-
wait: wait_
|
|
1148
|
-
} = _ref;
|
|
1149
|
-
let promise;
|
|
1150
|
-
|
|
1151
|
-
if (hash) {
|
|
1152
|
-
const provider = getProvider({
|
|
1153
|
-
chainId
|
|
1154
|
-
});
|
|
1155
|
-
promise = provider.waitForTransaction(hash, confirmations, timeout);
|
|
1156
|
-
} else if (wait_) promise = wait_(confirmations);else throw new Error('hash or wait is required');
|
|
1157
|
-
|
|
1158
|
-
return await promise;
|
|
1159
|
-
}
|
|
1160
|
-
|
|
1161
|
-
exports.Client = client.Client;
|
|
1162
|
-
exports.InjectedConnector = client.InjectedConnector;
|
|
1163
|
-
exports.createClient = client.createClient;
|
|
1164
|
-
exports.createStorage = client.createStorage;
|
|
1165
|
-
exports.noopStorage = client.noopStorage;
|
|
1166
|
-
exports.AddChainError = base.AddChainError;
|
|
1167
|
-
exports.ChainDoesNotSupportMulticallError = base.ChainDoesNotSupportMulticallError;
|
|
1168
|
-
exports.ChainMismatchError = base.ChainMismatchError;
|
|
1169
|
-
exports.ChainNotConfiguredError = base.ChainNotConfiguredError;
|
|
1170
|
-
exports.Connector = base.Connector;
|
|
1171
|
-
exports.ConnectorAlreadyConnectedError = base.ConnectorAlreadyConnectedError;
|
|
1172
|
-
exports.ConnectorNotFoundError = base.ConnectorNotFoundError;
|
|
1173
|
-
exports.ContractMethodNoResultError = base.ContractMethodNoResultError;
|
|
1174
|
-
exports.ProviderChainsNotFound = base.ProviderChainsNotFound;
|
|
1175
|
-
exports.ProviderRpcError = base.ProviderRpcError;
|
|
1176
|
-
exports.ResourceUnavailableError = base.ResourceUnavailableError;
|
|
1177
|
-
exports.RpcError = base.RpcError;
|
|
1178
|
-
exports.SwitchChainError = base.SwitchChainError;
|
|
1179
|
-
exports.SwitchChainNotSupportedError = base.SwitchChainNotSupportedError;
|
|
1180
|
-
exports.UserRejectedRequestError = base.UserRejectedRequestError;
|
|
1181
|
-
exports.normalizeChainId = base.normalizeChainId;
|
|
1448
|
+
exports.AddChainError = getProvider.AddChainError;
|
|
1449
|
+
exports.ChainDoesNotSupportMulticallError = getProvider.ChainDoesNotSupportMulticallError;
|
|
1450
|
+
exports.ChainMismatchError = getProvider.ChainMismatchError;
|
|
1451
|
+
exports.ChainNotConfiguredError = getProvider.ChainNotConfiguredError;
|
|
1452
|
+
exports.Client = getProvider.Client;
|
|
1453
|
+
exports.Connector = getProvider.Connector;
|
|
1454
|
+
exports.ConnectorAlreadyConnectedError = getProvider.ConnectorAlreadyConnectedError;
|
|
1455
|
+
exports.ConnectorNotFoundError = getProvider.ConnectorNotFoundError;
|
|
1456
|
+
exports.ContractMethodDoesNotExistError = getProvider.ContractMethodDoesNotExistError;
|
|
1457
|
+
exports.ContractMethodNoResultError = getProvider.ContractMethodNoResultError;
|
|
1458
|
+
exports.InjectedConnector = getProvider.InjectedConnector;
|
|
1459
|
+
exports.ProviderChainsNotFound = getProvider.ProviderChainsNotFound;
|
|
1460
|
+
exports.ProviderRpcError = getProvider.ProviderRpcError;
|
|
1461
|
+
exports.ResourceUnavailableError = getProvider.ResourceUnavailableError;
|
|
1462
|
+
exports.RpcError = getProvider.RpcError;
|
|
1463
|
+
exports.SwitchChainError = getProvider.SwitchChainError;
|
|
1464
|
+
exports.SwitchChainNotSupportedError = getProvider.SwitchChainNotSupportedError;
|
|
1465
|
+
exports.UserRejectedRequestError = getProvider.UserRejectedRequestError;
|
|
1466
|
+
exports.createClient = getProvider.createClient;
|
|
1467
|
+
exports.createStorage = getProvider.createStorage;
|
|
1468
|
+
exports.getProvider = getProvider.getProvider;
|
|
1469
|
+
exports.noopStorage = getProvider.noopStorage;
|
|
1470
|
+
exports.normalizeChainId = getProvider.normalizeChainId;
|
|
1182
1471
|
exports.alchemyRpcUrls = rpcs.alchemyRpcUrls;
|
|
1183
1472
|
exports.infuraRpcUrls = rpcs.infuraRpcUrls;
|
|
1184
1473
|
exports.publicRpcUrls = rpcs.publicRpcUrls;
|
|
@@ -1191,6 +1480,8 @@ exports.etherscanBlockExplorers = chains.etherscanBlockExplorers;
|
|
|
1191
1480
|
exports.configureChains = configureChains;
|
|
1192
1481
|
exports.connect = connect;
|
|
1193
1482
|
exports.deepEqual = deepEqual;
|
|
1483
|
+
exports.deprecatedSendTransaction = deprecatedSendTransaction;
|
|
1484
|
+
exports.deprecatedWriteContract = deprecatedWriteContract;
|
|
1194
1485
|
exports.disconnect = disconnect;
|
|
1195
1486
|
exports.erc20ABI = erc20ABI;
|
|
1196
1487
|
exports.erc721ABI = erc721ABI;
|
|
@@ -1203,12 +1494,14 @@ exports.fetchEnsResolver = fetchEnsResolver;
|
|
|
1203
1494
|
exports.fetchFeeData = fetchFeeData;
|
|
1204
1495
|
exports.fetchSigner = fetchSigner;
|
|
1205
1496
|
exports.fetchToken = fetchToken;
|
|
1497
|
+
exports.fetchTransaction = fetchTransaction;
|
|
1206
1498
|
exports.getAccount = getAccount;
|
|
1207
1499
|
exports.getContract = getContract;
|
|
1208
1500
|
exports.getNetwork = getNetwork;
|
|
1209
|
-
exports.getProvider = getProvider;
|
|
1210
1501
|
exports.getWebSocketProvider = getWebSocketProvider;
|
|
1211
1502
|
exports.parseContractResult = parseContractResult;
|
|
1503
|
+
exports.prepareSendTransaction = prepareSendTransaction;
|
|
1504
|
+
exports.prepareWriteContract = prepareWriteContract;
|
|
1212
1505
|
exports.readContract = readContract;
|
|
1213
1506
|
exports.readContracts = readContracts;
|
|
1214
1507
|
exports.sendTransaction = sendTransaction;
|