viem 0.0.1-alpha.31 → 0.0.1-alpha.32

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.
Files changed (48) hide show
  1. package/dist/chains.js +46 -46
  2. package/dist/chains.mjs +1 -1
  3. package/dist/{chunk-NCPBWOQA.js → chunk-4TDJALZ6.js} +75 -75
  4. package/dist/{chunk-J7QHQ26Y.js → chunk-DEF2SWG2.js} +36 -10
  5. package/dist/chunk-DEF2SWG2.js.map +1 -0
  6. package/dist/{chunk-IBWRBL2I.mjs → chunk-HJBIOX2W.mjs} +2 -2
  7. package/dist/{chunk-UUULPQHV.js → chunk-K3Q7U5IY.js} +15 -15
  8. package/dist/{chunk-MYFKW55L.js → chunk-NZUM6QVJ.js} +22 -22
  9. package/dist/{chunk-6ZFIUYGC.mjs → chunk-P76FCR36.mjs} +35 -9
  10. package/dist/chunk-P76FCR36.mjs.map +1 -0
  11. package/dist/{chunk-QBB3DFIB.mjs → chunk-QPXAI2W5.mjs} +2 -2
  12. package/dist/{chunk-5STAX3WF.js → chunk-S3HZ74MN.js} +14 -14
  13. package/dist/{chunk-C54QK7K3.mjs → chunk-ZIH5V7HU.mjs} +3 -3
  14. package/dist/{chunk-APXHGB76.mjs → chunk-ZZWYDER3.mjs} +2 -2
  15. package/dist/contract.d.ts +1 -1
  16. package/dist/contract.js +4 -4
  17. package/dist/contract.mjs +3 -3
  18. package/dist/{createPublicClient-99be385b.d.ts → createPublicClient-2187596f.d.ts} +1 -1
  19. package/dist/ens.d.ts +1 -1
  20. package/dist/ens.js +4 -4
  21. package/dist/ens.mjs +3 -3
  22. package/dist/index.d.ts +14 -4
  23. package/dist/index.js +95 -91
  24. package/dist/index.js.map +1 -1
  25. package/dist/index.mjs +10 -6
  26. package/dist/index.mjs.map +1 -1
  27. package/dist/{parseGwei-8af7a0a6.d.ts → parseGwei-308eada9.d.ts} +2 -2
  28. package/dist/public.d.ts +2 -2
  29. package/dist/public.js +3 -3
  30. package/dist/public.mjs +2 -2
  31. package/dist/test.js +3 -3
  32. package/dist/test.mjs +2 -2
  33. package/dist/utils/index.d.ts +4 -4
  34. package/dist/utils/index.js +2 -2
  35. package/dist/utils/index.mjs +1 -1
  36. package/dist/wallet.js +3 -3
  37. package/dist/wallet.mjs +2 -2
  38. package/package.json +1 -1
  39. package/dist/chunk-6ZFIUYGC.mjs.map +0 -1
  40. package/dist/chunk-J7QHQ26Y.js.map +0 -1
  41. /package/dist/{chunk-NCPBWOQA.js.map → chunk-4TDJALZ6.js.map} +0 -0
  42. /package/dist/{chunk-IBWRBL2I.mjs.map → chunk-HJBIOX2W.mjs.map} +0 -0
  43. /package/dist/{chunk-UUULPQHV.js.map → chunk-K3Q7U5IY.js.map} +0 -0
  44. /package/dist/{chunk-MYFKW55L.js.map → chunk-NZUM6QVJ.js.map} +0 -0
  45. /package/dist/{chunk-QBB3DFIB.mjs.map → chunk-QPXAI2W5.mjs.map} +0 -0
  46. /package/dist/{chunk-5STAX3WF.js.map → chunk-S3HZ74MN.js.map} +0 -0
  47. /package/dist/{chunk-C54QK7K3.mjs.map → chunk-ZIH5V7HU.mjs.map} +0 -0
  48. /package/dist/{chunk-APXHGB76.mjs.map → chunk-ZZWYDER3.mjs.map} +0 -0
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
 
6
- var _chunkMYFKW55Ljs = require('./chunk-MYFKW55L.js');
6
+ var _chunkNZUM6QVJjs = require('./chunk-NZUM6QVJ.js');
7
7
 
8
8
 
9
9
 
@@ -37,7 +37,7 @@ var _chunkMYFKW55Ljs = require('./chunk-MYFKW55L.js');
37
37
 
38
38
 
39
39
 
40
- var _chunkNCPBWOQAjs = require('./chunk-NCPBWOQA.js');
40
+ var _chunk4TDJALZ6js = require('./chunk-4TDJALZ6.js');
41
41
 
42
42
 
43
43
 
@@ -67,7 +67,7 @@ var _chunkNCPBWOQAjs = require('./chunk-NCPBWOQA.js');
67
67
 
68
68
 
69
69
 
70
- var _chunk5STAX3WFjs = require('./chunk-5STAX3WF.js');
70
+ var _chunkS3HZ74MNjs = require('./chunk-S3HZ74MN.js');
71
71
 
72
72
 
73
73
 
@@ -80,7 +80,7 @@ var _chunk5STAX3WFjs = require('./chunk-5STAX3WF.js');
80
80
 
81
81
 
82
82
 
83
- var _chunkUUULPQHVjs = require('./chunk-UUULPQHV.js');
83
+ var _chunkK3Q7U5IYjs = require('./chunk-K3Q7U5IY.js');
84
84
 
85
85
 
86
86
 
@@ -232,7 +232,9 @@ var _chunkUUULPQHVjs = require('./chunk-UUULPQHV.js');
232
232
 
233
233
 
234
234
 
235
- var _chunkJ7QHQ26Yjs = require('./chunk-J7QHQ26Y.js');
235
+
236
+
237
+ var _chunkDEF2SWG2js = require('./chunk-DEF2SWG2.js');
236
238
 
237
239
  // src/clients/transports/createTransport.ts
238
240
  function createTransport({
@@ -246,7 +248,7 @@ function createTransport({
246
248
  }, value) {
247
249
  return {
248
250
  config: { key, name, request, retryCount, retryDelay, timeout, type },
249
- request: _chunkJ7QHQ26Yjs.buildRequest.call(void 0, request, { retryCount, retryDelay }),
251
+ request: _chunkDEF2SWG2js.buildRequest.call(void 0, request, { retryCount, retryDelay }),
250
252
  value
251
253
  };
252
254
  }
@@ -280,7 +282,7 @@ function fallback(transports, config = {}) {
280
282
  params
281
283
  });
282
284
  } catch (err) {
283
- if (_chunkJ7QHQ26Yjs.isDeterministicError.call(void 0, err))
285
+ if (_chunkDEF2SWG2js.isDeterministicError.call(void 0, err))
284
286
  throw err;
285
287
  if (i === transports.length - 1)
286
288
  throw err;
@@ -314,13 +316,13 @@ function http(url, config = {}) {
314
316
  const retryCount = _nullishCoalesce(config.retryCount, () => ( defaultRetryCount));
315
317
  const url_ = url || _optionalChain([chain, 'optionalAccess', _ => _.rpcUrls, 'access', _2 => _2.default, 'access', _3 => _3.http, 'access', _4 => _4[0]]);
316
318
  if (!url_)
317
- throw new (0, _chunkJ7QHQ26Yjs.UrlRequiredError)();
319
+ throw new (0, _chunkDEF2SWG2js.UrlRequiredError)();
318
320
  return createTransport(
319
321
  {
320
322
  key,
321
323
  name,
322
324
  async request({ method, params }) {
323
- const { result } = await _chunkJ7QHQ26Yjs.rpc.http(url_, {
325
+ const { result } = await _chunkDEF2SWG2js.rpc.http(url_, {
324
326
  body: {
325
327
  method,
326
328
  params
@@ -354,14 +356,14 @@ function webSocket(url, config = {}) {
354
356
  const retryCount = _nullishCoalesce(config.retryCount, () => ( defaultRetryCount));
355
357
  const url_ = url || _optionalChain([chain, 'optionalAccess', _5 => _5.rpcUrls, 'access', _6 => _6.default, 'access', _7 => _7.webSocket, 'optionalAccess', _8 => _8[0]]);
356
358
  if (!url_)
357
- throw new (0, _chunkJ7QHQ26Yjs.UrlRequiredError)();
359
+ throw new (0, _chunkDEF2SWG2js.UrlRequiredError)();
358
360
  return createTransport(
359
361
  {
360
362
  key,
361
363
  name,
362
364
  async request({ method, params }) {
363
- const socket = await _chunkJ7QHQ26Yjs.getSocket.call(void 0, url_);
364
- const { result } = await _chunkJ7QHQ26Yjs.rpc.webSocketAsync(socket, {
365
+ const socket = await _chunkDEF2SWG2js.getSocket.call(void 0, url_);
366
+ const { result } = await _chunkDEF2SWG2js.rpc.webSocketAsync(socket, {
365
367
  body: { method, params },
366
368
  timeout
367
369
  });
@@ -374,12 +376,12 @@ function webSocket(url, config = {}) {
374
376
  },
375
377
  {
376
378
  getSocket() {
377
- return _chunkJ7QHQ26Yjs.getSocket.call(void 0, url_);
379
+ return _chunkDEF2SWG2js.getSocket.call(void 0, url_);
378
380
  },
379
381
  async subscribe({ params, onData, onError }) {
380
- const socket = await _chunkJ7QHQ26Yjs.getSocket.call(void 0, url_);
382
+ const socket = await _chunkDEF2SWG2js.getSocket.call(void 0, url_);
381
383
  const { result: subscriptionId } = await new Promise(
382
- (resolve, reject) => _chunkJ7QHQ26Yjs.rpc.webSocket(socket, {
384
+ (resolve, reject) => _chunkDEF2SWG2js.rpc.webSocket(socket, {
383
385
  body: {
384
386
  method: "eth_subscribe",
385
387
  params
@@ -401,7 +403,7 @@ function webSocket(url, config = {}) {
401
403
  subscriptionId,
402
404
  async unsubscribe() {
403
405
  return new Promise(
404
- (resolve, reject) => _chunkJ7QHQ26Yjs.rpc.webSocket(socket, {
406
+ (resolve, reject) => _chunkDEF2SWG2js.rpc.webSocket(socket, {
405
407
  body: {
406
408
  method: "eth_unsubscribe",
407
409
  params: [subscriptionId]
@@ -457,87 +459,87 @@ function createClient({
457
459
 
458
460
  // src/clients/decorators/public.ts
459
461
  var publicActions = (client) => ({
460
- call: (args) => _chunkNCPBWOQAjs.call.call(void 0, client, args),
461
- createBlockFilter: () => _chunkNCPBWOQAjs.createBlockFilter.call(void 0, client),
462
- createContractEventFilter: (args) => _chunkNCPBWOQAjs.createContractEventFilter.call(void 0, client, args),
463
- createEventFilter: (args) => _chunkNCPBWOQAjs.createEventFilter.call(void 0, client, args),
464
- createPendingTransactionFilter: () => _chunkNCPBWOQAjs.createPendingTransactionFilter.call(void 0, client),
465
- estimateContractGas: (args) => _chunkNCPBWOQAjs.estimateContractGas.call(void 0, client, args),
466
- estimateGas: (args) => _chunkNCPBWOQAjs.estimateGas.call(void 0, client, args),
467
- getBalance: (args) => _chunkNCPBWOQAjs.getBalance.call(void 0, client, args),
468
- getBlock: (args) => _chunkNCPBWOQAjs.getBlock.call(void 0, client, args),
469
- getBlockNumber: (args) => _chunkNCPBWOQAjs.getBlockNumber.call(void 0, client, args),
470
- getBlockTransactionCount: (args) => _chunkNCPBWOQAjs.getBlockTransactionCount.call(void 0, client, args),
471
- getBytecode: (args) => _chunkNCPBWOQAjs.getBytecode.call(void 0, client, args),
472
- getChainId: () => _chunkNCPBWOQAjs.getChainId.call(void 0, client),
473
- getEnsAddress: (args) => _chunkMYFKW55Ljs.getEnsAddress.call(void 0, client, args),
474
- getEnsName: (args) => _chunkMYFKW55Ljs.getEnsName.call(void 0, client, args),
475
- getFeeHistory: (args) => _chunkNCPBWOQAjs.getFeeHistory.call(void 0, client, args),
476
- getFilterChanges: (args) => _chunkNCPBWOQAjs.getFilterChanges.call(void 0, client, args),
477
- getFilterLogs: (args) => _chunkNCPBWOQAjs.getFilterLogs.call(void 0, client, args),
478
- getGasPrice: () => _chunkNCPBWOQAjs.getGasPrice.call(void 0, client),
479
- getLogs: (args) => _chunkNCPBWOQAjs.getLogs.call(void 0, client, args),
480
- getStorageAt: (args) => _chunkNCPBWOQAjs.getStorageAt.call(void 0, client, args),
481
- getTransaction: (args) => _chunkNCPBWOQAjs.getTransaction.call(void 0, client, args),
482
- getTransactionConfirmations: (args) => _chunkNCPBWOQAjs.getTransactionConfirmations.call(void 0, client, args),
483
- getTransactionReceipt: (args) => _chunkNCPBWOQAjs.getTransactionReceipt.call(void 0, client, args),
484
- multicall: (args) => _chunkNCPBWOQAjs.multicall.call(void 0, client, args),
485
- readContract: (args) => _chunkNCPBWOQAjs.readContract.call(void 0, client, args),
486
- simulateContract: (args) => _chunkNCPBWOQAjs.simulateContract.call(void 0, client, args),
487
- uninstallFilter: (args) => _chunkNCPBWOQAjs.uninstallFilter.call(void 0, client, args),
488
- waitForTransactionReceipt: (args) => _chunkNCPBWOQAjs.waitForTransactionReceipt.call(void 0, client, args),
489
- watchBlocks: (args) => _chunkNCPBWOQAjs.watchBlocks.call(void 0, client, args),
490
- watchBlockNumber: (args) => _chunkNCPBWOQAjs.watchBlockNumber.call(void 0, client, args),
491
- watchContractEvent: (args) => _chunkNCPBWOQAjs.watchContractEvent.call(void 0, client, args),
492
- watchEvent: (args) => _chunkNCPBWOQAjs.watchEvent.call(void 0, client, args),
493
- watchPendingTransactions: (args) => _chunkNCPBWOQAjs.watchPendingTransactions.call(void 0, client, args)
462
+ call: (args) => _chunk4TDJALZ6js.call.call(void 0, client, args),
463
+ createBlockFilter: () => _chunk4TDJALZ6js.createBlockFilter.call(void 0, client),
464
+ createContractEventFilter: (args) => _chunk4TDJALZ6js.createContractEventFilter.call(void 0, client, args),
465
+ createEventFilter: (args) => _chunk4TDJALZ6js.createEventFilter.call(void 0, client, args),
466
+ createPendingTransactionFilter: () => _chunk4TDJALZ6js.createPendingTransactionFilter.call(void 0, client),
467
+ estimateContractGas: (args) => _chunk4TDJALZ6js.estimateContractGas.call(void 0, client, args),
468
+ estimateGas: (args) => _chunk4TDJALZ6js.estimateGas.call(void 0, client, args),
469
+ getBalance: (args) => _chunk4TDJALZ6js.getBalance.call(void 0, client, args),
470
+ getBlock: (args) => _chunk4TDJALZ6js.getBlock.call(void 0, client, args),
471
+ getBlockNumber: (args) => _chunk4TDJALZ6js.getBlockNumber.call(void 0, client, args),
472
+ getBlockTransactionCount: (args) => _chunk4TDJALZ6js.getBlockTransactionCount.call(void 0, client, args),
473
+ getBytecode: (args) => _chunk4TDJALZ6js.getBytecode.call(void 0, client, args),
474
+ getChainId: () => _chunk4TDJALZ6js.getChainId.call(void 0, client),
475
+ getEnsAddress: (args) => _chunkNZUM6QVJjs.getEnsAddress.call(void 0, client, args),
476
+ getEnsName: (args) => _chunkNZUM6QVJjs.getEnsName.call(void 0, client, args),
477
+ getFeeHistory: (args) => _chunk4TDJALZ6js.getFeeHistory.call(void 0, client, args),
478
+ getFilterChanges: (args) => _chunk4TDJALZ6js.getFilterChanges.call(void 0, client, args),
479
+ getFilterLogs: (args) => _chunk4TDJALZ6js.getFilterLogs.call(void 0, client, args),
480
+ getGasPrice: () => _chunk4TDJALZ6js.getGasPrice.call(void 0, client),
481
+ getLogs: (args) => _chunk4TDJALZ6js.getLogs.call(void 0, client, args),
482
+ getStorageAt: (args) => _chunk4TDJALZ6js.getStorageAt.call(void 0, client, args),
483
+ getTransaction: (args) => _chunk4TDJALZ6js.getTransaction.call(void 0, client, args),
484
+ getTransactionConfirmations: (args) => _chunk4TDJALZ6js.getTransactionConfirmations.call(void 0, client, args),
485
+ getTransactionReceipt: (args) => _chunk4TDJALZ6js.getTransactionReceipt.call(void 0, client, args),
486
+ multicall: (args) => _chunk4TDJALZ6js.multicall.call(void 0, client, args),
487
+ readContract: (args) => _chunk4TDJALZ6js.readContract.call(void 0, client, args),
488
+ simulateContract: (args) => _chunk4TDJALZ6js.simulateContract.call(void 0, client, args),
489
+ uninstallFilter: (args) => _chunk4TDJALZ6js.uninstallFilter.call(void 0, client, args),
490
+ waitForTransactionReceipt: (args) => _chunk4TDJALZ6js.waitForTransactionReceipt.call(void 0, client, args),
491
+ watchBlocks: (args) => _chunk4TDJALZ6js.watchBlocks.call(void 0, client, args),
492
+ watchBlockNumber: (args) => _chunk4TDJALZ6js.watchBlockNumber.call(void 0, client, args),
493
+ watchContractEvent: (args) => _chunk4TDJALZ6js.watchContractEvent.call(void 0, client, args),
494
+ watchEvent: (args) => _chunk4TDJALZ6js.watchEvent.call(void 0, client, args),
495
+ watchPendingTransactions: (args) => _chunk4TDJALZ6js.watchPendingTransactions.call(void 0, client, args)
494
496
  });
495
497
 
496
498
  // src/clients/decorators/test.ts
497
499
  var testActions = (client) => ({
498
- dropTransaction: (args) => _chunk5STAX3WFjs.dropTransaction.call(void 0, client, args),
499
- getAutomine: () => _chunk5STAX3WFjs.getAutomine.call(void 0, client),
500
- getTxPoolContent: () => _chunk5STAX3WFjs.getTxpoolContent.call(void 0, client),
501
- getTxPoolStatus: () => _chunk5STAX3WFjs.getTxpoolStatus.call(void 0, client),
502
- impersonateAccount: (args) => _chunk5STAX3WFjs.impersonateAccount.call(void 0, client, args),
503
- increaseTime: (args) => _chunk5STAX3WFjs.increaseTime.call(void 0, client, args),
504
- inspectTxpool: () => _chunk5STAX3WFjs.inspectTxpool.call(void 0, client),
505
- mine: (args) => _chunk5STAX3WFjs.mine.call(void 0, client, args),
506
- removeBlockTimestampInterval: () => _chunk5STAX3WFjs.removeBlockTimestampInterval.call(void 0, client),
507
- reset: (args) => _chunk5STAX3WFjs.reset.call(void 0, client, args),
508
- revert: (args) => _chunk5STAX3WFjs.revert.call(void 0, client, args),
509
- sendUnsignedTransaction: (args) => _chunk5STAX3WFjs.sendUnsignedTransaction.call(void 0, client, args),
510
- setAutomine: (args) => _chunk5STAX3WFjs.setAutomine.call(void 0, client, args),
511
- setBalance: (args) => _chunk5STAX3WFjs.setBalance.call(void 0, client, args),
512
- setBlockGasLimit: (args) => _chunk5STAX3WFjs.setBlockGasLimit.call(void 0, client, args),
513
- setBlockTimestampInterval: (args) => _chunk5STAX3WFjs.setBlockTimestampInterval.call(void 0, client, args),
514
- setCode: (args) => _chunk5STAX3WFjs.setCode.call(void 0, client, args),
515
- setCoinbase: (args) => _chunk5STAX3WFjs.setCoinbase.call(void 0, client, args),
516
- setIntervalMining: (args) => _chunk5STAX3WFjs.setIntervalMining.call(void 0, client, args),
517
- setLoggingEnabled: (args) => _chunk5STAX3WFjs.setLoggingEnabled.call(void 0, client, args),
518
- setMinGasPrice: (args) => _chunk5STAX3WFjs.setMinGasPrice.call(void 0, client, args),
519
- setNextBlockBaseFeePerGas: (args) => _chunk5STAX3WFjs.setNextBlockBaseFeePerGas.call(void 0, client, args),
520
- setNextBlockTimestamp: (args) => _chunk5STAX3WFjs.setNextBlockTimestamp.call(void 0, client, args),
521
- setNonce: (args) => _chunk5STAX3WFjs.setNonce.call(void 0, client, args),
522
- setRpcUrl: (args) => _chunk5STAX3WFjs.setRpcUrl.call(void 0, client, args),
523
- setStorageAt: (args) => _chunk5STAX3WFjs.setStorageAt.call(void 0, client, args),
524
- snapshot: () => _chunk5STAX3WFjs.snapshot.call(void 0, client),
525
- stopImpersonatingAccount: (args) => _chunk5STAX3WFjs.stopImpersonatingAccount.call(void 0, client, args)
500
+ dropTransaction: (args) => _chunkS3HZ74MNjs.dropTransaction.call(void 0, client, args),
501
+ getAutomine: () => _chunkS3HZ74MNjs.getAutomine.call(void 0, client),
502
+ getTxPoolContent: () => _chunkS3HZ74MNjs.getTxpoolContent.call(void 0, client),
503
+ getTxPoolStatus: () => _chunkS3HZ74MNjs.getTxpoolStatus.call(void 0, client),
504
+ impersonateAccount: (args) => _chunkS3HZ74MNjs.impersonateAccount.call(void 0, client, args),
505
+ increaseTime: (args) => _chunkS3HZ74MNjs.increaseTime.call(void 0, client, args),
506
+ inspectTxpool: () => _chunkS3HZ74MNjs.inspectTxpool.call(void 0, client),
507
+ mine: (args) => _chunkS3HZ74MNjs.mine.call(void 0, client, args),
508
+ removeBlockTimestampInterval: () => _chunkS3HZ74MNjs.removeBlockTimestampInterval.call(void 0, client),
509
+ reset: (args) => _chunkS3HZ74MNjs.reset.call(void 0, client, args),
510
+ revert: (args) => _chunkS3HZ74MNjs.revert.call(void 0, client, args),
511
+ sendUnsignedTransaction: (args) => _chunkS3HZ74MNjs.sendUnsignedTransaction.call(void 0, client, args),
512
+ setAutomine: (args) => _chunkS3HZ74MNjs.setAutomine.call(void 0, client, args),
513
+ setBalance: (args) => _chunkS3HZ74MNjs.setBalance.call(void 0, client, args),
514
+ setBlockGasLimit: (args) => _chunkS3HZ74MNjs.setBlockGasLimit.call(void 0, client, args),
515
+ setBlockTimestampInterval: (args) => _chunkS3HZ74MNjs.setBlockTimestampInterval.call(void 0, client, args),
516
+ setCode: (args) => _chunkS3HZ74MNjs.setCode.call(void 0, client, args),
517
+ setCoinbase: (args) => _chunkS3HZ74MNjs.setCoinbase.call(void 0, client, args),
518
+ setIntervalMining: (args) => _chunkS3HZ74MNjs.setIntervalMining.call(void 0, client, args),
519
+ setLoggingEnabled: (args) => _chunkS3HZ74MNjs.setLoggingEnabled.call(void 0, client, args),
520
+ setMinGasPrice: (args) => _chunkS3HZ74MNjs.setMinGasPrice.call(void 0, client, args),
521
+ setNextBlockBaseFeePerGas: (args) => _chunkS3HZ74MNjs.setNextBlockBaseFeePerGas.call(void 0, client, args),
522
+ setNextBlockTimestamp: (args) => _chunkS3HZ74MNjs.setNextBlockTimestamp.call(void 0, client, args),
523
+ setNonce: (args) => _chunkS3HZ74MNjs.setNonce.call(void 0, client, args),
524
+ setRpcUrl: (args) => _chunkS3HZ74MNjs.setRpcUrl.call(void 0, client, args),
525
+ setStorageAt: (args) => _chunkS3HZ74MNjs.setStorageAt.call(void 0, client, args),
526
+ snapshot: () => _chunkS3HZ74MNjs.snapshot.call(void 0, client),
527
+ stopImpersonatingAccount: (args) => _chunkS3HZ74MNjs.stopImpersonatingAccount.call(void 0, client, args)
526
528
  });
527
529
 
528
530
  // src/clients/decorators/wallet.ts
529
531
  var walletActions = (client) => ({
530
- addChain: (args) => _chunkUUULPQHVjs.addChain.call(void 0, client, args),
531
- deployContract: (args) => _chunkUUULPQHVjs.deployContract.call(void 0, client, args),
532
- getAccounts: () => _chunkUUULPQHVjs.getAccounts.call(void 0, client),
533
- getPermissions: () => _chunkUUULPQHVjs.getPermissions.call(void 0, client),
534
- requestAccounts: () => _chunkUUULPQHVjs.requestAccounts.call(void 0, client),
535
- requestPermissions: (args) => _chunkUUULPQHVjs.requestPermissions.call(void 0, client, args),
536
- sendTransaction: (args) => _chunkUUULPQHVjs.sendTransaction.call(void 0, client, args),
537
- signMessage: (args) => _chunkUUULPQHVjs.signMessage.call(void 0, client, args),
538
- switchChain: (args) => _chunkUUULPQHVjs.switchChain.call(void 0, client, args),
539
- watchAsset: (args) => _chunkUUULPQHVjs.watchAsset.call(void 0, client, args),
540
- writeContract: (args) => _chunkUUULPQHVjs.writeContract.call(void 0, client, args)
532
+ addChain: (args) => _chunkK3Q7U5IYjs.addChain.call(void 0, client, args),
533
+ deployContract: (args) => _chunkK3Q7U5IYjs.deployContract.call(void 0, client, args),
534
+ getAccounts: () => _chunkK3Q7U5IYjs.getAccounts.call(void 0, client),
535
+ getPermissions: () => _chunkK3Q7U5IYjs.getPermissions.call(void 0, client),
536
+ requestAccounts: () => _chunkK3Q7U5IYjs.requestAccounts.call(void 0, client),
537
+ requestPermissions: (args) => _chunkK3Q7U5IYjs.requestPermissions.call(void 0, client, args),
538
+ sendTransaction: (args) => _chunkK3Q7U5IYjs.sendTransaction.call(void 0, client, args),
539
+ signMessage: (args) => _chunkK3Q7U5IYjs.signMessage.call(void 0, client, args),
540
+ switchChain: (args) => _chunkK3Q7U5IYjs.switchChain.call(void 0, client, args),
541
+ watchAsset: (args) => _chunkK3Q7U5IYjs.watchAsset.call(void 0, client, args),
542
+ writeContract: (args) => _chunkK3Q7U5IYjs.writeContract.call(void 0, client, args)
541
543
  });
542
544
 
543
545
  // src/clients/createPublicClient.ts
@@ -599,7 +601,7 @@ function createWalletClient({
599
601
  key,
600
602
  name,
601
603
  pollingInterval,
602
- transport,
604
+ transport: () => transport({ retryCount: 0 }),
603
605
  type: "walletClient"
604
606
  });
605
607
  return {
@@ -765,5 +767,7 @@ function createWalletClient({
765
767
 
766
768
 
767
769
 
768
- exports.AbiConstructorNotFoundError = _chunkJ7QHQ26Yjs.AbiConstructorNotFoundError; exports.AbiConstructorParamsNotFoundError = _chunkJ7QHQ26Yjs.AbiConstructorParamsNotFoundError; exports.AbiDecodingDataSizeInvalidError = _chunkJ7QHQ26Yjs.AbiDecodingDataSizeInvalidError; exports.AbiDecodingZeroDataError = _chunkJ7QHQ26Yjs.AbiDecodingZeroDataError; exports.AbiEncodingArrayLengthMismatchError = _chunkJ7QHQ26Yjs.AbiEncodingArrayLengthMismatchError; exports.AbiEncodingLengthMismatchError = _chunkJ7QHQ26Yjs.AbiEncodingLengthMismatchError; exports.AbiErrorInputsNotFoundError = _chunkJ7QHQ26Yjs.AbiErrorInputsNotFoundError; exports.AbiErrorNotFoundError = _chunkJ7QHQ26Yjs.AbiErrorNotFoundError; exports.AbiErrorSignatureNotFoundError = _chunkJ7QHQ26Yjs.AbiErrorSignatureNotFoundError; exports.AbiEventNotFoundError = _chunkJ7QHQ26Yjs.AbiEventNotFoundError; exports.AbiEventSignatureNotFoundError = _chunkJ7QHQ26Yjs.AbiEventSignatureNotFoundError; exports.AbiFunctionNotFoundError = _chunkJ7QHQ26Yjs.AbiFunctionNotFoundError; exports.AbiFunctionOutputsNotFoundError = _chunkJ7QHQ26Yjs.AbiFunctionOutputsNotFoundError; exports.AbiFunctionSignatureNotFoundError = _chunkJ7QHQ26Yjs.AbiFunctionSignatureNotFoundError; exports.BaseError = _chunkJ7QHQ26Yjs.BaseError; exports.BlockNotFoundError = _chunkJ7QHQ26Yjs.BlockNotFoundError; exports.CallExecutionError = _chunkJ7QHQ26Yjs.CallExecutionError; exports.ChainDoesNotSupportContract = _chunkJ7QHQ26Yjs.ChainDoesNotSupportContract; exports.ContractFunctionExecutionError = _chunkJ7QHQ26Yjs.ContractFunctionExecutionError; exports.ContractFunctionRevertedError = _chunkJ7QHQ26Yjs.ContractFunctionRevertedError; exports.ContractFunctionZeroDataError = _chunkJ7QHQ26Yjs.ContractFunctionZeroDataError; exports.DataLengthTooLongError = _chunkJ7QHQ26Yjs.DataLengthTooLongError; exports.DataLengthTooShortError = _chunkJ7QHQ26Yjs.DataLengthTooShortError; exports.EstimateGasExecutionError = _chunkJ7QHQ26Yjs.EstimateGasExecutionError; exports.ExecutionRevertedError = _chunkJ7QHQ26Yjs.ExecutionRevertedError; exports.FeeCapTooHighError = _chunkJ7QHQ26Yjs.FeeCapTooHighError; exports.FeeCapTooLowError = _chunkJ7QHQ26Yjs.FeeCapTooLowError; exports.FilterTypeNotSupportedError = _chunkJ7QHQ26Yjs.FilterTypeNotSupportedError; exports.HttpRequestError = _chunkJ7QHQ26Yjs.HttpRequestError; exports.InsufficientFundsError = _chunkJ7QHQ26Yjs.InsufficientFundsError; exports.InternalRpcError = _chunkJ7QHQ26Yjs.InternalRpcError; exports.IntrinsicGasTooHighError = _chunkJ7QHQ26Yjs.IntrinsicGasTooHighError; exports.IntrinsicGasTooLowError = _chunkJ7QHQ26Yjs.IntrinsicGasTooLowError; exports.InvalidAbiDecodingTypeError = _chunkJ7QHQ26Yjs.InvalidAbiDecodingTypeError; exports.InvalidAbiEncodingTypeError = _chunkJ7QHQ26Yjs.InvalidAbiEncodingTypeError; exports.InvalidAddressError = _chunkJ7QHQ26Yjs.InvalidAddressError; exports.InvalidArrayError = _chunkJ7QHQ26Yjs.InvalidArrayError; exports.InvalidBytesBooleanError = _chunkJ7QHQ26Yjs.InvalidBytesBooleanError; exports.InvalidDefinitionTypeError = _chunkJ7QHQ26Yjs.InvalidDefinitionTypeError; exports.InvalidHexBooleanError = _chunkJ7QHQ26Yjs.InvalidHexBooleanError; exports.InvalidHexValueError = _chunkJ7QHQ26Yjs.InvalidHexValueError; exports.InvalidInputRpcError = _chunkJ7QHQ26Yjs.InvalidInputRpcError; exports.InvalidParamsRpcError = _chunkJ7QHQ26Yjs.InvalidParamsRpcError; exports.InvalidRequestRpcError = _chunkJ7QHQ26Yjs.InvalidRequestRpcError; exports.JsonRpcVersionUnsupportedError = _chunkJ7QHQ26Yjs.JsonRpcVersionUnsupportedError; exports.LimitExceededRpcError = _chunkJ7QHQ26Yjs.LimitExceededRpcError; exports.MethodNotFoundRpcError = _chunkJ7QHQ26Yjs.MethodNotFoundRpcError; exports.MethodNotSupportedRpcError = _chunkJ7QHQ26Yjs.MethodNotSupportedRpcError; exports.NonceMaxValueError = _chunkJ7QHQ26Yjs.NonceMaxValueError; exports.NonceTooHighError = _chunkJ7QHQ26Yjs.NonceTooHighError; exports.NonceTooLowError = _chunkJ7QHQ26Yjs.NonceTooLowError; exports.OffsetOutOfBoundsError = _chunkJ7QHQ26Yjs.OffsetOutOfBoundsError; exports.ParseRpcError = _chunkJ7QHQ26Yjs.ParseRpcError; exports.RawContractError = _chunkJ7QHQ26Yjs.RawContractError; exports.RequestError = _chunkJ7QHQ26Yjs.RequestError; exports.ResourceNotFoundRpcError = _chunkJ7QHQ26Yjs.ResourceNotFoundRpcError; exports.ResourceUnavailableRpcError = _chunkJ7QHQ26Yjs.ResourceUnavailableRpcError; exports.RpcError = _chunkJ7QHQ26Yjs.RpcError; exports.RpcRequestError = _chunkJ7QHQ26Yjs.RpcRequestError; exports.SizeExceedsPaddingSizeError = _chunkJ7QHQ26Yjs.SizeExceedsPaddingSizeError; exports.TimeoutError = _chunkJ7QHQ26Yjs.TimeoutError; exports.TipAboveFeeCapError = _chunkJ7QHQ26Yjs.TipAboveFeeCapError; exports.TransactionExecutionError = _chunkJ7QHQ26Yjs.TransactionExecutionError; exports.TransactionNotFoundError = _chunkJ7QHQ26Yjs.TransactionNotFoundError; exports.TransactionReceiptNotFoundError = _chunkJ7QHQ26Yjs.TransactionReceiptNotFoundError; exports.TransactionRejectedRpcError = _chunkJ7QHQ26Yjs.TransactionRejectedRpcError; exports.TransactionTypeNotSupportedError = _chunkJ7QHQ26Yjs.TransactionTypeNotSupportedError; exports.UnknownNodeError = _chunkJ7QHQ26Yjs.UnknownNodeError; exports.UnknownRpcError = _chunkJ7QHQ26Yjs.UnknownRpcError; exports.UrlRequiredError = _chunkJ7QHQ26Yjs.UrlRequiredError; exports.WaitForTransactionReceiptTimeoutError = _chunkJ7QHQ26Yjs.WaitForTransactionReceiptTimeoutError; exports.WebSocketRequestError = _chunkJ7QHQ26Yjs.WebSocketRequestError; exports.boolToBytes = _chunkJ7QHQ26Yjs.boolToBytes; exports.boolToHex = _chunkJ7QHQ26Yjs.boolToHex; exports.bytesToBigint = _chunkJ7QHQ26Yjs.bytesToBigint; exports.bytesToBool = _chunkJ7QHQ26Yjs.bytesToBool; exports.bytesToHex = _chunkJ7QHQ26Yjs.bytesToHex; exports.bytesToNumber = _chunkJ7QHQ26Yjs.bytesToNumber; exports.bytesToString = _chunkJ7QHQ26Yjs.bytesToString; exports.createClient = createClient; exports.createPublicClient = createPublicClient; exports.createTestClient = createTestClient; exports.createTransport = createTransport; exports.createWalletClient = createWalletClient; exports.custom = custom; exports.decodeAbi = _chunkJ7QHQ26Yjs.decodeAbi; exports.decodeErrorResult = _chunkJ7QHQ26Yjs.decodeErrorResult; exports.decodeEventLog = _chunkJ7QHQ26Yjs.decodeEventLog; exports.decodeFunctionData = _chunkJ7QHQ26Yjs.decodeFunctionData; exports.decodeFunctionResult = _chunkJ7QHQ26Yjs.decodeFunctionResult; exports.defineBlock = _chunkJ7QHQ26Yjs.defineBlock; exports.defineChain = _chunkJ7QHQ26Yjs.defineChain; exports.defineTransaction = _chunkJ7QHQ26Yjs.defineTransaction; exports.defineTransactionReceipt = _chunkJ7QHQ26Yjs.defineTransactionReceipt; exports.defineTransactionRequest = _chunkJ7QHQ26Yjs.defineTransactionRequest; exports.encodeAbi = _chunkJ7QHQ26Yjs.encodeAbi; exports.encodeDeployData = _chunkJ7QHQ26Yjs.encodeDeployData; exports.encodeErrorResult = _chunkJ7QHQ26Yjs.encodeErrorResult; exports.encodeEventTopics = _chunkJ7QHQ26Yjs.encodeEventTopics; exports.encodeFunctionData = _chunkJ7QHQ26Yjs.encodeFunctionData; exports.encodeFunctionResult = _chunkJ7QHQ26Yjs.encodeFunctionResult; exports.etherUnits = _chunkJ7QHQ26Yjs.etherUnits; exports.fallback = fallback; exports.formatBlock = _chunkJ7QHQ26Yjs.formatBlock; exports.formatEther = _chunkJ7QHQ26Yjs.formatEther; exports.formatGwei = _chunkJ7QHQ26Yjs.formatGwei; exports.formatTransaction = _chunkJ7QHQ26Yjs.formatTransaction; exports.formatTransactionRequest = _chunkJ7QHQ26Yjs.formatTransactionRequest; exports.formatUnit = _chunkJ7QHQ26Yjs.formatUnit; exports.fromBytes = _chunkJ7QHQ26Yjs.fromBytes; exports.fromHex = _chunkJ7QHQ26Yjs.fromHex; exports.fromRlp = _chunkJ7QHQ26Yjs.fromRlp; exports.getAbiItem = _chunkJ7QHQ26Yjs.getAbiItem; exports.getAddress = _chunkJ7QHQ26Yjs.getAddress; exports.getContractAddress = _chunkJ7QHQ26Yjs.getContractAddress; exports.getContractError = _chunkJ7QHQ26Yjs.getContractError; exports.getCreate2Address = _chunkJ7QHQ26Yjs.getCreate2Address; exports.getCreateAddress = _chunkJ7QHQ26Yjs.getCreateAddress; exports.getEventSelector = _chunkJ7QHQ26Yjs.getEventSelector; exports.getFunctionSelector = _chunkJ7QHQ26Yjs.getFunctionSelector; exports.gweiUnits = _chunkJ7QHQ26Yjs.gweiUnits; exports.hexToBigInt = _chunkJ7QHQ26Yjs.hexToBigInt; exports.hexToBool = _chunkJ7QHQ26Yjs.hexToBool; exports.hexToBytes = _chunkJ7QHQ26Yjs.hexToBytes; exports.hexToNumber = _chunkJ7QHQ26Yjs.hexToNumber; exports.hexToString = _chunkJ7QHQ26Yjs.hexToString; exports.http = http; exports.isAddress = _chunkJ7QHQ26Yjs.isAddress; exports.isAddressEqual = _chunkJ7QHQ26Yjs.isAddressEqual; exports.isBytes = _chunkJ7QHQ26Yjs.isBytes; exports.isHex = _chunkJ7QHQ26Yjs.isHex; exports.keccak256 = _chunkJ7QHQ26Yjs.keccak256; exports.labelhash = _chunkMYFKW55Ljs.labelhash; exports.multicall3Abi = _chunkJ7QHQ26Yjs.multicall3Abi; exports.namehash = _chunkMYFKW55Ljs.namehash; exports.numberToBytes = _chunkJ7QHQ26Yjs.numberToBytes; exports.numberToHex = _chunkJ7QHQ26Yjs.numberToHex; exports.pad = _chunkJ7QHQ26Yjs.pad; exports.padBytes = _chunkJ7QHQ26Yjs.padBytes; exports.padHex = _chunkJ7QHQ26Yjs.padHex; exports.parseEther = _chunkJ7QHQ26Yjs.parseEther; exports.parseGwei = _chunkJ7QHQ26Yjs.parseGwei; exports.parseUnit = _chunkJ7QHQ26Yjs.parseUnit; exports.size = _chunkJ7QHQ26Yjs.size; exports.slice = _chunkJ7QHQ26Yjs.slice; exports.sliceBytes = _chunkJ7QHQ26Yjs.sliceBytes; exports.sliceHex = _chunkJ7QHQ26Yjs.sliceHex; exports.stringToBytes = _chunkJ7QHQ26Yjs.stringToBytes; exports.stringToHex = _chunkJ7QHQ26Yjs.stringToHex; exports.stringify = _chunkJ7QHQ26Yjs.stringify; exports.toBytes = _chunkJ7QHQ26Yjs.toBytes; exports.toHex = _chunkJ7QHQ26Yjs.toHex; exports.toRlp = _chunkJ7QHQ26Yjs.toRlp; exports.transactionType = _chunkJ7QHQ26Yjs.transactionType; exports.trim = _chunkJ7QHQ26Yjs.trim; exports.webSocket = webSocket; exports.weiUnits = _chunkJ7QHQ26Yjs.weiUnits;
770
+
771
+
772
+ exports.AbiConstructorNotFoundError = _chunkDEF2SWG2js.AbiConstructorNotFoundError; exports.AbiConstructorParamsNotFoundError = _chunkDEF2SWG2js.AbiConstructorParamsNotFoundError; exports.AbiDecodingDataSizeInvalidError = _chunkDEF2SWG2js.AbiDecodingDataSizeInvalidError; exports.AbiDecodingZeroDataError = _chunkDEF2SWG2js.AbiDecodingZeroDataError; exports.AbiEncodingArrayLengthMismatchError = _chunkDEF2SWG2js.AbiEncodingArrayLengthMismatchError; exports.AbiEncodingLengthMismatchError = _chunkDEF2SWG2js.AbiEncodingLengthMismatchError; exports.AbiErrorInputsNotFoundError = _chunkDEF2SWG2js.AbiErrorInputsNotFoundError; exports.AbiErrorNotFoundError = _chunkDEF2SWG2js.AbiErrorNotFoundError; exports.AbiErrorSignatureNotFoundError = _chunkDEF2SWG2js.AbiErrorSignatureNotFoundError; exports.AbiEventNotFoundError = _chunkDEF2SWG2js.AbiEventNotFoundError; exports.AbiEventSignatureNotFoundError = _chunkDEF2SWG2js.AbiEventSignatureNotFoundError; exports.AbiFunctionNotFoundError = _chunkDEF2SWG2js.AbiFunctionNotFoundError; exports.AbiFunctionOutputsNotFoundError = _chunkDEF2SWG2js.AbiFunctionOutputsNotFoundError; exports.AbiFunctionSignatureNotFoundError = _chunkDEF2SWG2js.AbiFunctionSignatureNotFoundError; exports.BaseError = _chunkDEF2SWG2js.BaseError; exports.BlockNotFoundError = _chunkDEF2SWG2js.BlockNotFoundError; exports.CallExecutionError = _chunkDEF2SWG2js.CallExecutionError; exports.ChainDoesNotSupportContract = _chunkDEF2SWG2js.ChainDoesNotSupportContract; exports.ContractFunctionExecutionError = _chunkDEF2SWG2js.ContractFunctionExecutionError; exports.ContractFunctionRevertedError = _chunkDEF2SWG2js.ContractFunctionRevertedError; exports.ContractFunctionZeroDataError = _chunkDEF2SWG2js.ContractFunctionZeroDataError; exports.DataLengthTooLongError = _chunkDEF2SWG2js.DataLengthTooLongError; exports.DataLengthTooShortError = _chunkDEF2SWG2js.DataLengthTooShortError; exports.EstimateGasExecutionError = _chunkDEF2SWG2js.EstimateGasExecutionError; exports.ExecutionRevertedError = _chunkDEF2SWG2js.ExecutionRevertedError; exports.FeeCapTooHighError = _chunkDEF2SWG2js.FeeCapTooHighError; exports.FeeCapTooLowError = _chunkDEF2SWG2js.FeeCapTooLowError; exports.FilterTypeNotSupportedError = _chunkDEF2SWG2js.FilterTypeNotSupportedError; exports.HttpRequestError = _chunkDEF2SWG2js.HttpRequestError; exports.InsufficientFundsError = _chunkDEF2SWG2js.InsufficientFundsError; exports.InternalRpcError = _chunkDEF2SWG2js.InternalRpcError; exports.IntrinsicGasTooHighError = _chunkDEF2SWG2js.IntrinsicGasTooHighError; exports.IntrinsicGasTooLowError = _chunkDEF2SWG2js.IntrinsicGasTooLowError; exports.InvalidAbiDecodingTypeError = _chunkDEF2SWG2js.InvalidAbiDecodingTypeError; exports.InvalidAbiEncodingTypeError = _chunkDEF2SWG2js.InvalidAbiEncodingTypeError; exports.InvalidAddressError = _chunkDEF2SWG2js.InvalidAddressError; exports.InvalidArrayError = _chunkDEF2SWG2js.InvalidArrayError; exports.InvalidBytesBooleanError = _chunkDEF2SWG2js.InvalidBytesBooleanError; exports.InvalidDefinitionTypeError = _chunkDEF2SWG2js.InvalidDefinitionTypeError; exports.InvalidHexBooleanError = _chunkDEF2SWG2js.InvalidHexBooleanError; exports.InvalidHexValueError = _chunkDEF2SWG2js.InvalidHexValueError; exports.InvalidInputRpcError = _chunkDEF2SWG2js.InvalidInputRpcError; exports.InvalidParamsRpcError = _chunkDEF2SWG2js.InvalidParamsRpcError; exports.InvalidRequestRpcError = _chunkDEF2SWG2js.InvalidRequestRpcError; exports.JsonRpcVersionUnsupportedError = _chunkDEF2SWG2js.JsonRpcVersionUnsupportedError; exports.LimitExceededRpcError = _chunkDEF2SWG2js.LimitExceededRpcError; exports.MethodNotFoundRpcError = _chunkDEF2SWG2js.MethodNotFoundRpcError; exports.MethodNotSupportedRpcError = _chunkDEF2SWG2js.MethodNotSupportedRpcError; exports.NonceMaxValueError = _chunkDEF2SWG2js.NonceMaxValueError; exports.NonceTooHighError = _chunkDEF2SWG2js.NonceTooHighError; exports.NonceTooLowError = _chunkDEF2SWG2js.NonceTooLowError; exports.OffsetOutOfBoundsError = _chunkDEF2SWG2js.OffsetOutOfBoundsError; exports.ParseRpcError = _chunkDEF2SWG2js.ParseRpcError; exports.RawContractError = _chunkDEF2SWG2js.RawContractError; exports.RequestError = _chunkDEF2SWG2js.RequestError; exports.ResourceNotFoundRpcError = _chunkDEF2SWG2js.ResourceNotFoundRpcError; exports.ResourceUnavailableRpcError = _chunkDEF2SWG2js.ResourceUnavailableRpcError; exports.RpcError = _chunkDEF2SWG2js.RpcError; exports.RpcRequestError = _chunkDEF2SWG2js.RpcRequestError; exports.SizeExceedsPaddingSizeError = _chunkDEF2SWG2js.SizeExceedsPaddingSizeError; exports.SwitchChainError = _chunkDEF2SWG2js.SwitchChainError; exports.TimeoutError = _chunkDEF2SWG2js.TimeoutError; exports.TipAboveFeeCapError = _chunkDEF2SWG2js.TipAboveFeeCapError; exports.TransactionExecutionError = _chunkDEF2SWG2js.TransactionExecutionError; exports.TransactionNotFoundError = _chunkDEF2SWG2js.TransactionNotFoundError; exports.TransactionReceiptNotFoundError = _chunkDEF2SWG2js.TransactionReceiptNotFoundError; exports.TransactionRejectedRpcError = _chunkDEF2SWG2js.TransactionRejectedRpcError; exports.TransactionTypeNotSupportedError = _chunkDEF2SWG2js.TransactionTypeNotSupportedError; exports.UnknownNodeError = _chunkDEF2SWG2js.UnknownNodeError; exports.UnknownRpcError = _chunkDEF2SWG2js.UnknownRpcError; exports.UrlRequiredError = _chunkDEF2SWG2js.UrlRequiredError; exports.UserRejectedRequestError = _chunkDEF2SWG2js.UserRejectedRequestError; exports.WaitForTransactionReceiptTimeoutError = _chunkDEF2SWG2js.WaitForTransactionReceiptTimeoutError; exports.WebSocketRequestError = _chunkDEF2SWG2js.WebSocketRequestError; exports.boolToBytes = _chunkDEF2SWG2js.boolToBytes; exports.boolToHex = _chunkDEF2SWG2js.boolToHex; exports.bytesToBigint = _chunkDEF2SWG2js.bytesToBigint; exports.bytesToBool = _chunkDEF2SWG2js.bytesToBool; exports.bytesToHex = _chunkDEF2SWG2js.bytesToHex; exports.bytesToNumber = _chunkDEF2SWG2js.bytesToNumber; exports.bytesToString = _chunkDEF2SWG2js.bytesToString; exports.createClient = createClient; exports.createPublicClient = createPublicClient; exports.createTestClient = createTestClient; exports.createTransport = createTransport; exports.createWalletClient = createWalletClient; exports.custom = custom; exports.decodeAbi = _chunkDEF2SWG2js.decodeAbi; exports.decodeErrorResult = _chunkDEF2SWG2js.decodeErrorResult; exports.decodeEventLog = _chunkDEF2SWG2js.decodeEventLog; exports.decodeFunctionData = _chunkDEF2SWG2js.decodeFunctionData; exports.decodeFunctionResult = _chunkDEF2SWG2js.decodeFunctionResult; exports.defineBlock = _chunkDEF2SWG2js.defineBlock; exports.defineChain = _chunkDEF2SWG2js.defineChain; exports.defineTransaction = _chunkDEF2SWG2js.defineTransaction; exports.defineTransactionReceipt = _chunkDEF2SWG2js.defineTransactionReceipt; exports.defineTransactionRequest = _chunkDEF2SWG2js.defineTransactionRequest; exports.encodeAbi = _chunkDEF2SWG2js.encodeAbi; exports.encodeDeployData = _chunkDEF2SWG2js.encodeDeployData; exports.encodeErrorResult = _chunkDEF2SWG2js.encodeErrorResult; exports.encodeEventTopics = _chunkDEF2SWG2js.encodeEventTopics; exports.encodeFunctionData = _chunkDEF2SWG2js.encodeFunctionData; exports.encodeFunctionResult = _chunkDEF2SWG2js.encodeFunctionResult; exports.etherUnits = _chunkDEF2SWG2js.etherUnits; exports.fallback = fallback; exports.formatBlock = _chunkDEF2SWG2js.formatBlock; exports.formatEther = _chunkDEF2SWG2js.formatEther; exports.formatGwei = _chunkDEF2SWG2js.formatGwei; exports.formatTransaction = _chunkDEF2SWG2js.formatTransaction; exports.formatTransactionRequest = _chunkDEF2SWG2js.formatTransactionRequest; exports.formatUnit = _chunkDEF2SWG2js.formatUnit; exports.fromBytes = _chunkDEF2SWG2js.fromBytes; exports.fromHex = _chunkDEF2SWG2js.fromHex; exports.fromRlp = _chunkDEF2SWG2js.fromRlp; exports.getAbiItem = _chunkDEF2SWG2js.getAbiItem; exports.getAddress = _chunkDEF2SWG2js.getAddress; exports.getContractAddress = _chunkDEF2SWG2js.getContractAddress; exports.getContractError = _chunkDEF2SWG2js.getContractError; exports.getCreate2Address = _chunkDEF2SWG2js.getCreate2Address; exports.getCreateAddress = _chunkDEF2SWG2js.getCreateAddress; exports.getEventSelector = _chunkDEF2SWG2js.getEventSelector; exports.getFunctionSelector = _chunkDEF2SWG2js.getFunctionSelector; exports.gweiUnits = _chunkDEF2SWG2js.gweiUnits; exports.hexToBigInt = _chunkDEF2SWG2js.hexToBigInt; exports.hexToBool = _chunkDEF2SWG2js.hexToBool; exports.hexToBytes = _chunkDEF2SWG2js.hexToBytes; exports.hexToNumber = _chunkDEF2SWG2js.hexToNumber; exports.hexToString = _chunkDEF2SWG2js.hexToString; exports.http = http; exports.isAddress = _chunkDEF2SWG2js.isAddress; exports.isAddressEqual = _chunkDEF2SWG2js.isAddressEqual; exports.isBytes = _chunkDEF2SWG2js.isBytes; exports.isHex = _chunkDEF2SWG2js.isHex; exports.keccak256 = _chunkDEF2SWG2js.keccak256; exports.labelhash = _chunkNZUM6QVJjs.labelhash; exports.multicall3Abi = _chunkDEF2SWG2js.multicall3Abi; exports.namehash = _chunkNZUM6QVJjs.namehash; exports.numberToBytes = _chunkDEF2SWG2js.numberToBytes; exports.numberToHex = _chunkDEF2SWG2js.numberToHex; exports.pad = _chunkDEF2SWG2js.pad; exports.padBytes = _chunkDEF2SWG2js.padBytes; exports.padHex = _chunkDEF2SWG2js.padHex; exports.parseEther = _chunkDEF2SWG2js.parseEther; exports.parseGwei = _chunkDEF2SWG2js.parseGwei; exports.parseUnit = _chunkDEF2SWG2js.parseUnit; exports.size = _chunkDEF2SWG2js.size; exports.slice = _chunkDEF2SWG2js.slice; exports.sliceBytes = _chunkDEF2SWG2js.sliceBytes; exports.sliceHex = _chunkDEF2SWG2js.sliceHex; exports.stringToBytes = _chunkDEF2SWG2js.stringToBytes; exports.stringToHex = _chunkDEF2SWG2js.stringToHex; exports.stringify = _chunkDEF2SWG2js.stringify; exports.toBytes = _chunkDEF2SWG2js.toBytes; exports.toHex = _chunkDEF2SWG2js.toHex; exports.toRlp = _chunkDEF2SWG2js.toRlp; exports.transactionType = _chunkDEF2SWG2js.transactionType; exports.trim = _chunkDEF2SWG2js.trim; exports.webSocket = webSocket; exports.weiUnits = _chunkDEF2SWG2js.weiUnits;
769
773
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/clients/transports/createTransport.ts","../src/clients/transports/custom.ts","../src/clients/transports/fallback.ts","../src/clients/transports/http.ts","../src/clients/transports/webSocket.ts","../src/utils/uid.ts","../src/clients/createClient.ts","../src/clients/decorators/public.ts","../src/clients/decorators/test.ts","../src/clients/decorators/wallet.ts","../src/clients/createPublicClient.ts","../src/clients/createTestClient.ts","../src/clients/createWalletClient.ts"],"names":["size"],"mappings":"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","sourcesContent":["import type { Chain } from '../../types'\nimport type { Requests } from '../../types/eip1193'\nimport { buildRequest } from '../../utils'\n\nexport type BaseRpcRequests = {\n request(...args: any): Promise<any>\n}\n\nexport type TransportConfig<\n TType extends string = string,\n TRequests extends BaseRpcRequests['request'] = Requests['request'],\n> = {\n /** The name of the transport. */\n name: string\n /** The key of the transport. */\n key: string\n /** The JSON-RPC request function that matches the EIP-1193 request spec. */\n request: TRequests\n /** The base delay (in ms) between retries. */\n retryDelay?: number\n /** The max number of times to retry. */\n retryCount?: number\n /** The timeout (in ms) for requests. */\n timeout?: number\n /** The type of the transport. */\n type: TType\n}\n\nexport type Transport<\n TType extends string = string,\n TRpcAttributes = Record<string, any>,\n TRequests extends BaseRpcRequests['request'] = Requests['request'],\n> = <TChain extends Chain = Chain>({\n chain,\n}: {\n chain?: TChain\n retryCount?: TransportConfig['retryCount']\n}) => {\n config: TransportConfig<TType>\n request: TRequests\n value?: TRpcAttributes\n}\n\n/**\n * @description Creates an transport intended to be used with a client.\n */\nexport function createTransport<\n TType extends string = string,\n TRpcAttributes = any,\n>(\n {\n key,\n name,\n request,\n retryCount = 3,\n retryDelay = 150,\n timeout,\n type,\n }: TransportConfig<TType>,\n value?: TRpcAttributes,\n): ReturnType<Transport<TType, TRpcAttributes>> {\n return {\n config: { key, name, request, retryCount, retryDelay, timeout, type },\n request: buildRequest(request, { retryCount, retryDelay }),\n value,\n }\n}\n","import type {\n BaseRpcRequests,\n Transport,\n TransportConfig,\n} from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype EthereumProvider = { request: BaseRpcRequests['request'] }\n\nexport type CustomTransportConfig = {\n /** The key of the transport. */\n key?: TransportConfig['key']\n /** The name of the transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n}\n\nexport type CustomTransport = Transport<'custom', EthereumProvider['request']>\n\n/**\n * @description Creates a custom transport given an EIP-1193 compliant `request` attribute.\n */\nexport function custom<TProvider extends EthereumProvider>(\n /** An Ethereum provider with an EIP-1193 \"request\" attribute. */\n provider: TProvider,\n config: CustomTransportConfig = {},\n): CustomTransport {\n const { key = 'custom', name = 'Custom Provider', retryDelay } = config\n return ({ retryCount: defaultRetryCount }) =>\n createTransport({\n key,\n name,\n request: provider.request.bind(provider),\n retryCount: config.retryCount ?? defaultRetryCount,\n retryDelay,\n type: 'custom',\n })\n}\n","import { isDeterministicError } from '../../utils/buildRequest'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type FallbackTransportConfig = {\n /** The key of the Fallback transport. */\n key?: TransportConfig['key']\n /** The name of the Fallback transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n}\n\nexport type FallbackTransport = Transport<\n 'fallback',\n { transports: Transport[] }\n>\n\nexport function fallback(\n transports: Transport[],\n config: FallbackTransportConfig = {},\n): FallbackTransport {\n const { key = 'fallback', name = 'Fallback', retryCount, retryDelay } = config\n return ({ chain }) =>\n createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const fetch = async (i: number = 0): Promise<any> => {\n const transport = transports[i]({ chain, retryCount: 0 })\n try {\n return await transport.request({\n method,\n params,\n } as any)\n } catch (err) {\n // If the error is deterministic, we don't need to fall back.\n // So throw the error.\n if (isDeterministicError(err as Error)) throw err\n\n // If we've reached the end of the fallbacks, throw the error.\n if (i === transports.length - 1) throw err\n\n // Otherwise, try the next fallback.\n return fetch(i + 1)\n }\n }\n return fetch()\n },\n retryCount,\n retryDelay,\n type: 'fallback',\n },\n {\n transports: transports.map(\n (fn) => fn({ chain, retryCount: 0 }) as unknown as Transport,\n ),\n },\n )\n}\n","import { UrlRequiredError } from '../../errors'\nimport type { HttpOptions } from '../../utils'\nimport { rpc } from '../../utils'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type HttpTransportConfig = {\n /**\n * Request configuration to pass to `fetch`.\n * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch\n */\n fetchOptions?: HttpOptions['fetchOptions']\n /** The key of the HTTP transport. */\n key?: TransportConfig['key']\n /** The name of the HTTP transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n /** The timeout (in ms) for the HTTP request. Default: 10_000 */\n timeout?: TransportConfig['timeout']\n}\n\nexport type HttpTransport = Transport<\n 'http',\n {\n url?: string\n }\n>\n\n/**\n * @description Creates a HTTP transport that connects to a JSON-RPC API.\n */\nexport function http(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n config: HttpTransportConfig = {},\n): HttpTransport {\n const {\n fetchOptions,\n key = 'http',\n name = 'HTTP JSON-RPC',\n retryDelay,\n timeout = 10_000,\n } = config\n return ({ chain, retryCount: defaultRetryCount }) => {\n const retryCount = config.retryCount ?? defaultRetryCount\n const url_ = url || chain?.rpcUrls.default.http[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const { result } = await rpc.http(url_, {\n body: {\n method,\n params,\n },\n fetchOptions,\n timeout,\n })\n return result\n },\n retryCount,\n retryDelay,\n timeout,\n type: 'http',\n },\n {\n url,\n },\n )\n }\n}\n","import WebSocket from 'isomorphic-ws'\nimport { UrlRequiredError } from '../../errors'\nimport type { Hash } from '../../types'\nimport type { RpcResponse } from '../../utils/rpc'\nimport { getSocket, rpc } from '../../utils/rpc'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype WebSocketTransportSubscribeArgs = {\n onData: (data: RpcResponse) => void\n onError?: (error: any) => void\n}\n\ntype WebSocketTransportSubscribeResponse = {\n subscriptionId: Hash\n unsubscribe: () => Promise<RpcResponse<boolean>>\n}\n\ntype WebSocketTransportSubscribe = {\n subscribe(\n args: WebSocketTransportSubscribeArgs & {\n /**\n * @description Add information about compiled contracts\n * @link https://hardhat.org/hardhat-network/docs/reference#hardhat_addcompilationresult\n */\n params: ['newHeads']\n },\n ): Promise<WebSocketTransportSubscribeResponse>\n}\n\nexport type WebSocketTransportConfig = {\n /** The key of the WebSocket transport. */\n key?: TransportConfig['key']\n /** The name of the WebSocket transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n /** The timeout (in ms) for async WebSocket requests. Default: 10_000 */\n timeout?: TransportConfig['timeout']\n}\n\nexport type WebSocketTransport = Transport<\n 'webSocket',\n {\n getSocket(): Promise<WebSocket>\n subscribe: WebSocketTransportSubscribe['subscribe']\n }\n>\n\n/**\n * @description Creates a WebSocket transport that connects to a JSON-RPC API.\n */\nexport function webSocket(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n config: WebSocketTransportConfig = {},\n): WebSocketTransport {\n const {\n key = 'webSocket',\n name = 'WebSocket JSON-RPC',\n retryDelay,\n timeout = 10_000,\n } = config\n return ({ chain, retryCount: defaultRetryCount }) => {\n const retryCount = config.retryCount ?? defaultRetryCount\n const url_ = url || chain?.rpcUrls.default.webSocket?.[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const socket = await getSocket(url_)\n const { result } = await rpc.webSocketAsync(socket, {\n body: { method, params },\n timeout,\n })\n return result\n },\n retryCount,\n retryDelay,\n timeout,\n type: 'webSocket',\n },\n {\n getSocket() {\n return getSocket(url_)\n },\n async subscribe({ params, onData, onError }: any) {\n const socket = await getSocket(url_)\n const { result: subscriptionId } = await new Promise<any>(\n (resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_subscribe',\n params,\n },\n onData: (data) => {\n if (typeof data.id === 'number') {\n resolve(data)\n return\n }\n onData(data)\n },\n onError: (error) => {\n reject(error)\n onError?.(error)\n },\n }),\n )\n return {\n subscriptionId,\n async unsubscribe() {\n return new Promise<any>((resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_unsubscribe',\n params: [subscriptionId],\n },\n onData: resolve,\n onError: reject,\n }),\n )\n },\n }\n },\n },\n )\n }\n}\n","let size = 256\nlet index = size\nlet buffer: string\n\nexport function uid(length = 11) {\n if (!buffer || index + length > size * 2) {\n buffer = ''\n index = 0\n for (let i = 0; i < size; i++) {\n buffer += ((256 + Math.random() * 256) | 0).toString(16).substring(1)\n }\n }\n return buffer.substring(index, index++ + length)\n}\n","import { Chain } from '../types'\nimport type { Requests } from '../types/eip1193'\nimport { buildRequest } from '../utils/buildRequest'\nimport { uid } from '../utils/uid'\nimport type { BaseRpcRequests, Transport } from './transports/createTransport'\n\nexport type Client<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = {\n /** Chain for the client. */\n chain?: TChain\n /** A key for the client. */\n key: string\n /** A name for the client. */\n name: string\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval: number\n /** Request function wrapped with friendly error handling */\n request: TRequests['request']\n /** The RPC transport (http, webSocket, custom, etc) */\n transport: ReturnType<TTransport>['config'] & ReturnType<TTransport>['value']\n /** The type of client. */\n type: string\n /** A unique ID for the client. */\n uid: string\n}\n\nexport type ClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = Partial<\n Pick<\n Client<TTransport, TChain, TRequests>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'type'\n >\n> & {\n transport: TTransport\n}\n\n/**\n * @description Creates a base RPC client with the given transport.\n *\n * - Intended to be used as a base for other RPC clients.\n * - Has access to _all_ EIP-1474 RPC methods.\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createClient, http } from 'viem/clients'\n * const client = createClient(http({ chain: mainnet }))\n */\nexport function createClient<\n TTransport extends Transport,\n TChain extends Chain,\n TRequests extends BaseRpcRequests,\n>({\n chain,\n key = 'base',\n name = 'Base Client',\n pollingInterval = 4_000,\n transport,\n type = 'base',\n}: ClientConfig<TTransport, TChain, TRequests>): Client<\n TTransport,\n TChain,\n TRequests\n> {\n const { config, request, value } = transport({ chain })\n return {\n chain,\n key,\n name,\n pollingInterval,\n request,\n transport: { ...config, ...value },\n type,\n uid: uid(),\n }\n}\n","import { Abi, AbiEvent } from 'abitype'\nimport type {\n CallArgs,\n CallResponse,\n CreateBlockFilterResponse,\n CreateContractEventFilterArgs,\n CreateContractEventFilterResponse,\n CreateEventFilterArgs,\n CreateEventFilterResponse,\n CreatePendingTransactionFilterResponse,\n EstimateGasArgs,\n EstimateGasResponse,\n EstimateContractGasArgs,\n EstimateContractGasResponse,\n GetBalanceArgs,\n GetBalanceResponse,\n GetBlockArgs,\n GetBlockNumberArgs,\n GetBlockNumberResponse,\n GetBlockResponse,\n GetBlockTransactionCountArgs,\n GetBlockTransactionCountResponse,\n GetBytecodeArgs,\n GetBytecodeResponse,\n GetChainIdResponse,\n GetFeeHistoryArgs,\n GetFeeHistoryResponse,\n GetFilterChangesArgs,\n GetFilterChangesResponse,\n GetFilterLogsArgs,\n GetFilterLogsResponse,\n GetGasPriceResponse,\n GetTransactionArgs,\n GetTransactionConfirmationsArgs,\n GetTransactionConfirmationsResponse,\n GetTransactionReceiptArgs,\n GetTransactionReceiptResponse,\n GetTransactionResponse,\n UninstallFilterArgs,\n UninstallFilterResponse,\n WaitForTransactionReceiptArgs,\n WaitForTransactionReceiptResponse,\n WatchBlockNumberArgs,\n WatchBlocksArgs,\n WatchPendingTransactionsArgs,\n GetLogsArgs,\n GetLogsResponse,\n GetStorageAtArgs,\n GetStorageAtResponse,\n MulticallArgs,\n MulticallResponse,\n ReadContractArgs,\n ReadContractResponse,\n SimulateContractArgs,\n SimulateContractResponse,\n WatchContractEventArgs,\n WatchEventArgs,\n} from '../../actions/public'\nimport {\n call,\n createBlockFilter,\n createContractEventFilter,\n createEventFilter,\n createPendingTransactionFilter,\n estimateContractGas,\n estimateGas,\n getBalance,\n getBlock,\n getBlockNumber,\n getBlockTransactionCount,\n getBytecode,\n getChainId,\n getFeeHistory,\n getFilterChanges,\n getFilterLogs,\n getGasPrice,\n getLogs,\n getTransaction,\n getTransactionConfirmations,\n getTransactionReceipt,\n uninstallFilter,\n waitForTransactionReceipt,\n watchBlockNumber,\n watchBlocks,\n watchEvent,\n watchPendingTransactions,\n getStorageAt,\n multicall,\n readContract,\n simulateContract,\n watchContractEvent,\n} from '../../actions/public'\nimport type {\n GetEnsAddressArgs,\n GetEnsAddressResponse,\n GetEnsNameArgs,\n GetEnsNameResponse,\n} from '../../actions/ens'\nimport { getEnsAddress, getEnsName } from '../../actions/ens'\nimport type { PublicClient } from '../createPublicClient'\nimport {\n Chain,\n ContractConfig,\n FilterType,\n MaybeExtractEventArgsFromAbi,\n} from '../../types'\n\nexport type PublicActions<TChain extends Chain = Chain> = {\n call: (args: CallArgs<TChain>) => Promise<CallResponse>\n createBlockFilter: () => Promise<CreateBlockFilterResponse>\n createContractEventFilter: <\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,\n >(\n args: CreateContractEventFilterArgs<TAbi, TEventName, TArgs>,\n ) => Promise<CreateContractEventFilterResponse<TAbi, TEventName, TArgs>>\n createEventFilter: <\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,\n >(\n args?: CreateEventFilterArgs<TAbiEvent, TAbi, TEventName, TArgs>,\n ) => Promise<CreateEventFilterResponse<TAbiEvent, TAbi, TEventName, TArgs>>\n createPendingTransactionFilter: () => Promise<CreatePendingTransactionFilterResponse>\n estimateContractGas: <\n TChain extends Chain,\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: EstimateContractGasArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<EstimateContractGasResponse>\n estimateGas: (args: EstimateGasArgs<TChain>) => Promise<EstimateGasResponse>\n getBalance: (args: GetBalanceArgs) => Promise<GetBalanceResponse>\n getBlock: (args: GetBlockArgs) => Promise<GetBlockResponse<TChain>>\n getBlockNumber: (args?: GetBlockNumberArgs) => Promise<GetBlockNumberResponse>\n getBlockTransactionCount: (\n args?: GetBlockTransactionCountArgs,\n ) => Promise<GetBlockTransactionCountResponse>\n getBytecode: (args: GetBytecodeArgs) => Promise<GetBytecodeResponse>\n getChainId: () => Promise<GetChainIdResponse>\n getEnsAddress: (args: GetEnsAddressArgs) => Promise<GetEnsAddressResponse>\n getEnsName: (args: GetEnsNameArgs) => Promise<GetEnsNameResponse>\n getFeeHistory: (args: GetFeeHistoryArgs) => Promise<GetFeeHistoryResponse>\n getFilterChanges: <\n TFilterType extends FilterType,\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n >(\n args: GetFilterChangesArgs<TFilterType, TAbiEvent, TAbi, TEventName>,\n ) => Promise<\n GetFilterChangesResponse<TFilterType, TAbiEvent, TAbi, TEventName>\n >\n getFilterLogs: <\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n >(\n args: GetFilterLogsArgs<TAbiEvent, TAbi, TEventName>,\n ) => Promise<GetFilterLogsResponse<TAbiEvent, TAbi, TEventName>>\n getGasPrice: () => Promise<GetGasPriceResponse>\n getLogs: <TAbiEvent extends AbiEvent | undefined>(\n args?: GetLogsArgs<TAbiEvent>,\n ) => Promise<GetLogsResponse<TAbiEvent>>\n getStorageAt: (args: GetStorageAtArgs) => Promise<GetStorageAtResponse>\n getTransaction: (\n args: GetTransactionArgs,\n ) => Promise<GetTransactionResponse<TChain>>\n getTransactionConfirmations: (\n args: GetTransactionConfirmationsArgs<TChain>,\n ) => Promise<GetTransactionConfirmationsResponse>\n getTransactionReceipt: (\n args: GetTransactionReceiptArgs,\n ) => Promise<GetTransactionReceiptResponse<TChain>>\n multicall: <\n TContracts extends ContractConfig[],\n TAllowFailure extends boolean = true,\n >(\n args: MulticallArgs<TContracts, TAllowFailure>,\n ) => Promise<MulticallResponse<TContracts, TAllowFailure>>\n readContract: <\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: ReadContractArgs<TAbi, TFunctionName>,\n ) => Promise<ReadContractResponse>\n simulateContract: <\n TAbi extends Abi | readonly unknown[] = Abi,\n TFunctionName extends string = any,\n >(\n args: SimulateContractArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<SimulateContractResponse<TChain, TAbi, TFunctionName>>\n uninstallFilter: (\n args: UninstallFilterArgs,\n ) => Promise<UninstallFilterResponse>\n waitForTransactionReceipt: (\n args: WaitForTransactionReceiptArgs<TChain>,\n ) => Promise<WaitForTransactionReceiptResponse<TChain>>\n watchBlockNumber: (\n args: WatchBlockNumberArgs,\n ) => ReturnType<typeof watchBlockNumber>\n watchBlocks: (args: WatchBlocksArgs<TChain>) => ReturnType<typeof watchBlocks>\n watchContractEvent: <\n TAbi extends Abi | readonly unknown[],\n TEventName extends string,\n >(\n args: WatchContractEventArgs<TAbi, TEventName>,\n ) => ReturnType<typeof watchContractEvent>\n watchEvent: <\n TAbiEvent extends AbiEvent | undefined,\n TEventName extends string | undefined,\n >(\n args: WatchEventArgs<TAbiEvent>,\n ) => ReturnType<typeof watchEvent>\n watchPendingTransactions: (\n args: WatchPendingTransactionsArgs,\n ) => ReturnType<typeof watchPendingTransactions>\n}\n\nexport const publicActions = <\n TChain extends Chain,\n TClient extends PublicClient<any, any>,\n>(\n client: TClient,\n): PublicActions<TChain> => ({\n call: (args) => call(client, args),\n createBlockFilter: () => createBlockFilter(client),\n createContractEventFilter: (args) => createContractEventFilter(client, args),\n createEventFilter: (args) => createEventFilter(client, args),\n createPendingTransactionFilter: () => createPendingTransactionFilter(client),\n estimateContractGas: (args) => estimateContractGas(client, args),\n estimateGas: (args) => estimateGas(client, args),\n getBalance: (args) => getBalance(client, args),\n getBlock: (args) => getBlock(client, args),\n getBlockNumber: (args) => getBlockNumber(client, args),\n getBlockTransactionCount: (args) => getBlockTransactionCount(client, args),\n getBytecode: (args) => getBytecode(client, args),\n getChainId: () => getChainId(client),\n getEnsAddress: (args) => getEnsAddress(client, args),\n getEnsName: (args) => getEnsName(client, args),\n getFeeHistory: (args) => getFeeHistory(client, args),\n getFilterChanges: (args) => getFilterChanges(client, args),\n getFilterLogs: (args) => getFilterLogs(client, args),\n getGasPrice: () => getGasPrice(client),\n getLogs: (args) => getLogs(client, args),\n getStorageAt: (args) => getStorageAt(client, args),\n getTransaction: (args) => getTransaction(client, args),\n getTransactionConfirmations: (args) =>\n getTransactionConfirmations(client, args),\n getTransactionReceipt: (args) => getTransactionReceipt(client, args),\n multicall: (args) => multicall(client, args),\n readContract: (args) => readContract(client, args),\n simulateContract: (args) => simulateContract(client, args),\n uninstallFilter: (args) => uninstallFilter(client, args),\n waitForTransactionReceipt: (args) => waitForTransactionReceipt(client, args),\n watchBlocks: (args) => watchBlocks(client, args),\n watchBlockNumber: (args) => watchBlockNumber(client, args),\n watchContractEvent: (args) => watchContractEvent(client, args),\n watchEvent: (args) => watchEvent(client, args),\n watchPendingTransactions: (args) => watchPendingTransactions(client, args),\n})\n","import type {\n DropTransactionArgs,\n GetAutomineResponse,\n GetTxPoolContentResponse,\n GetTxPoolStatusResponse,\n ImpersonateAccountArgs,\n IncreaseTimeArgs,\n InspectTxpoolResponse,\n MineArgs,\n ResetArgs,\n RevertArgs,\n SendUnsignedTransactionArgs,\n SendUnsignedTransactionResponse,\n SetBalanceArgs,\n SetBlockGasLimitArgs,\n SetBlockTimestampIntervalArgs,\n SetCodeArgs,\n SetCoinbaseArgs,\n SetIntervalMiningArgs,\n SetMinGasPriceArgs,\n SetNextBlockBaseFeePerGasArgs,\n SetNextBlockTimestampArgs,\n SetNonceArgs,\n SetStorageAtArgs,\n StopImpersonatingAccountArgs,\n} from '../../actions/test'\nimport {\n dropTransaction,\n getAutomine,\n getTxpoolContent,\n getTxpoolStatus,\n impersonateAccount,\n increaseTime,\n inspectTxpool,\n mine,\n removeBlockTimestampInterval,\n reset,\n revert,\n sendUnsignedTransaction,\n setAutomine,\n setBalance,\n setBlockGasLimit,\n setBlockTimestampInterval,\n setCode,\n setCoinbase,\n setIntervalMining,\n setLoggingEnabled,\n setMinGasPrice,\n setNextBlockBaseFeePerGas,\n setNextBlockTimestamp,\n setNonce,\n setRpcUrl,\n setStorageAt,\n snapshot,\n stopImpersonatingAccount,\n} from '../../actions/test'\nimport { Chain, Quantity } from '../../types'\nimport type { TestClient } from '../createTestClient'\n\nexport type TestActions<TChain extends Chain = Chain> = {\n dropTransaction: (args: DropTransactionArgs) => Promise<void>\n getAutomine: () => Promise<GetAutomineResponse>\n getTxPoolContent: () => Promise<GetTxPoolContentResponse>\n getTxPoolStatus: () => Promise<GetTxPoolStatusResponse>\n impersonateAccount: (args: ImpersonateAccountArgs) => Promise<void>\n increaseTime: (args: IncreaseTimeArgs) => Promise<Quantity>\n inspectTxpool: () => Promise<InspectTxpoolResponse>\n mine: (args: MineArgs) => Promise<void>\n removeBlockTimestampInterval: () => Promise<void>\n reset: (args: ResetArgs) => Promise<void>\n revert: (args: RevertArgs) => Promise<void>\n sendUnsignedTransaction: (\n args: SendUnsignedTransactionArgs,\n ) => Promise<SendUnsignedTransactionResponse>\n setAutomine: (args: boolean) => Promise<void>\n setBalance: (args: SetBalanceArgs) => Promise<void>\n setBlockGasLimit: (args: SetBlockGasLimitArgs) => Promise<void>\n setBlockTimestampInterval: (\n args: SetBlockTimestampIntervalArgs,\n ) => Promise<void>\n setCode: (args: SetCodeArgs) => Promise<void>\n setCoinbase: (args: SetCoinbaseArgs) => Promise<void>\n setIntervalMining: (args: SetIntervalMiningArgs) => Promise<void>\n setLoggingEnabled: (args: boolean) => Promise<void>\n setMinGasPrice: (args: SetMinGasPriceArgs) => Promise<void>\n setNextBlockBaseFeePerGas: (\n args: SetNextBlockBaseFeePerGasArgs,\n ) => Promise<void>\n setNextBlockTimestamp: (args: SetNextBlockTimestampArgs) => Promise<void>\n setNonce: (args: SetNonceArgs) => Promise<void>\n setRpcUrl: (args: string) => Promise<void>\n setStorageAt: (args: SetStorageAtArgs) => Promise<void>\n snapshot: () => Promise<Quantity>\n stopImpersonatingAccount: (\n args: StopImpersonatingAccountArgs,\n ) => Promise<void>\n}\n\nexport const testActions = <\n TChain extends Chain,\n TClient extends TestClient<any, any>,\n>(\n client: TClient,\n): TestActions<TChain> => ({\n dropTransaction: (args) => dropTransaction(client, args),\n getAutomine: () => getAutomine(client),\n getTxPoolContent: () => getTxpoolContent(client),\n getTxPoolStatus: () => getTxpoolStatus(client),\n impersonateAccount: (args) => impersonateAccount(client, args),\n increaseTime: (args) => increaseTime(client, args),\n inspectTxpool: () => inspectTxpool(client),\n mine: (args) => mine(client, args),\n removeBlockTimestampInterval: () => removeBlockTimestampInterval(client),\n reset: (args) => reset(client, args),\n revert: (args) => revert(client, args),\n sendUnsignedTransaction: (args) => sendUnsignedTransaction(client, args),\n setAutomine: (args) => setAutomine(client, args),\n setBalance: (args) => setBalance(client, args),\n setBlockGasLimit: (args) => setBlockGasLimit(client, args),\n setBlockTimestampInterval: (args) => setBlockTimestampInterval(client, args),\n setCode: (args) => setCode(client, args),\n setCoinbase: (args) => setCoinbase(client, args),\n setIntervalMining: (args) => setIntervalMining(client, args),\n setLoggingEnabled: (args) => setLoggingEnabled(client, args),\n setMinGasPrice: (args) => setMinGasPrice(client, args),\n setNextBlockBaseFeePerGas: (args) => setNextBlockBaseFeePerGas(client, args),\n setNextBlockTimestamp: (args) => setNextBlockTimestamp(client, args),\n setNonce: (args) => setNonce(client, args),\n setRpcUrl: (args) => setRpcUrl(client, args),\n setStorageAt: (args) => setStorageAt(client, args),\n snapshot: () => snapshot(client),\n stopImpersonatingAccount: (args) => stopImpersonatingAccount(client, args),\n})\n","import { Abi } from 'abitype'\nimport {\n AddChainArgs,\n DeployContractArgs,\n DeployContractResponse,\n GetAccountsResponse,\n GetPermissionsResponse,\n RequestAccountsResponse,\n RequestPermissionsArgs,\n RequestPermissionsResponse,\n SendTransactionArgs,\n SendTransactionResponse,\n SignMessageArgs,\n SignMessageResponse,\n SwitchChainArgs,\n watchAsset,\n WatchAssetArgs,\n WatchAssetResponse,\n writeContract,\n WriteContractArgs,\n WriteContractResponse,\n} from '../../actions/wallet'\nimport {\n addChain,\n deployContract,\n getAccounts,\n getPermissions,\n requestAccounts,\n requestPermissions,\n sendTransaction,\n signMessage,\n switchChain,\n} from '../../actions/wallet'\nimport type { Chain } from '../../types'\nimport type { WalletClient } from '../createWalletClient'\n\nexport type WalletActions<TChain extends Chain = Chain> = {\n addChain: (args: AddChainArgs) => Promise<void>\n deployContract: <TAbi extends Abi | readonly unknown[]>(\n args: DeployContractArgs<TChain, TAbi>,\n ) => Promise<DeployContractResponse>\n getAccounts: () => Promise<GetAccountsResponse>\n getPermissions: () => Promise<GetPermissionsResponse>\n requestAccounts: () => Promise<RequestAccountsResponse>\n requestPermissions: (\n args: RequestPermissionsArgs,\n ) => Promise<RequestPermissionsResponse>\n sendTransaction: (\n args: SendTransactionArgs<TChain>,\n ) => Promise<SendTransactionResponse>\n signMessage: (args: SignMessageArgs) => Promise<SignMessageResponse>\n switchChain: (args: SwitchChainArgs) => Promise<void>\n watchAsset: (args: WatchAssetArgs) => Promise<WatchAssetResponse>\n writeContract: <\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: WriteContractArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<WriteContractResponse>\n}\n\nexport const walletActions = <\n TChain extends Chain,\n TClient extends WalletClient<any, any>,\n>(\n client: TClient,\n): WalletActions<TChain> => ({\n addChain: (args) => addChain(client, args),\n deployContract: (args) => deployContract(client, args),\n getAccounts: () => getAccounts(client),\n getPermissions: () => getPermissions(client),\n requestAccounts: () => requestAccounts(client),\n requestPermissions: (args) => requestPermissions(client, args),\n sendTransaction: (args) => sendTransaction(client, args),\n signMessage: (args) => signMessage(client, args),\n switchChain: (args) => switchChain(client, args),\n watchAsset: (args) => watchAsset(client, args),\n writeContract: (args) => writeContract(client, args),\n})\n","import type { PublicRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { publicActions, PublicActions } from './decorators'\nimport { Chain } from '../types'\n\nexport type PublicClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = Pick<\n ClientConfig<TTransport, TChain>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'\n>\n\nexport type PublicClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, PublicRequests> &\n (TIncludeActions extends true ? PublicActions<TChain> : {})\n\n/**\n * @description Creates a public client with a given transport.\n *\n * - Only has access to \"public\" EIP-1474 RPC methods (ie. `eth_blockNumber`, etc).\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createPublicClient, http } from 'viem/clients'\n * const client = createPublicClient({ transport: http('https://...') })\n */\nexport function createPublicClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n chain,\n key = 'public',\n name = 'Public Client',\n transport,\n pollingInterval,\n}: PublicClientConfig<TTransport, TChain>): PublicClient<\n TTransport,\n TChain,\n true\n> {\n const client = createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'publicClient',\n })\n return {\n ...client,\n ...publicActions(client as PublicClient<any, any>),\n }\n}\n","import type { TestRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\nimport { testActions, TestActions } from './decorators'\n\ntype TestClientModes = 'anvil' | 'hardhat'\n\nexport type TestClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the client. */\n key?: ClientConfig['key']\n /** Mode of the test client. Available: \"anvil\" | \"hardhat\" */\n mode: TMode\n /** The name of the client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type TestClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, TestRequests<TMode>> & {\n mode: TMode\n} & (TIncludeActions extends true ? TestActions<TChain> : {})\n\n/**\n * @description Creates a test client with a given transport.\n *\n * - Only has access to \"test\" RPC methods (ie. `anvil_setBalance`,\n * `evm_mine`, etc).\n *\n * @example\n * import { createTestClient, http } from 'viem'\n * import { local } from 'viem/chains'\n * const client = createTestClient({ chain: local, mode: 'anvil', transport: http() })\n */\nexport function createTestClient<\n TTransport extends Transport,\n TChain extends Chain,\n TMode extends TestClientModes,\n>({\n chain,\n key = 'test',\n name = 'Test Client',\n mode,\n pollingInterval,\n transport,\n}: TestClientConfig<TTransport, TChain, TMode>): TestClient<\n TTransport,\n TChain,\n TMode,\n true\n> {\n const client = {\n ...createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'testClient',\n }),\n mode,\n }\n return {\n ...client,\n ...testActions(client as TestClient<any, any, any>),\n }\n}\n","import type { SignableRequests, WalletRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\nimport { WalletActions, walletActions } from './decorators'\nimport { wagmiContractConfig } from '../_test'\n\nexport type WalletClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the Wallet Client. */\n key?: ClientConfig['key']\n /** The name of the Wallet Client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type WalletClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, SignableRequests & WalletRequests> &\n (TIncludeActions extends true ? WalletActions<TChain> : {})\n\n/**\n * @description Creates a wallet client with a given transport.\n *\n * - Only has access to \"wallet\" & \"signable\" EIP-1474 RPC methods\n * (ie. `eth_sendTransaction`, `eth_requestAccounts`, etc).\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * const client = createWalletClient(\n * custom(window.ethereum)\n * )\n */\nexport function createWalletClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n transport,\n key = 'wallet',\n name = 'Wallet Client',\n pollingInterval,\n}: WalletClientConfig<TTransport, TChain>): WalletClient<\n TTransport,\n TChain,\n true\n> {\n const client = createClient({\n key,\n name,\n pollingInterval,\n transport,\n type: 'walletClient',\n })\n return {\n ...client,\n ...(walletActions(client as any) as any),\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/clients/transports/createTransport.ts","../src/clients/transports/custom.ts","../src/clients/transports/fallback.ts","../src/clients/transports/http.ts","../src/clients/transports/webSocket.ts","../src/utils/uid.ts","../src/clients/createClient.ts","../src/clients/decorators/public.ts","../src/clients/decorators/test.ts","../src/clients/decorators/wallet.ts","../src/clients/createPublicClient.ts","../src/clients/createTestClient.ts","../src/clients/createWalletClient.ts"],"names":["size"],"mappings":"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","sourcesContent":["import type { Chain } from '../../types'\nimport type { Requests } from '../../types/eip1193'\nimport { buildRequest } from '../../utils'\n\nexport type BaseRpcRequests = {\n request(...args: any): Promise<any>\n}\n\nexport type TransportConfig<\n TType extends string = string,\n TRequests extends BaseRpcRequests['request'] = Requests['request'],\n> = {\n /** The name of the transport. */\n name: string\n /** The key of the transport. */\n key: string\n /** The JSON-RPC request function that matches the EIP-1193 request spec. */\n request: TRequests\n /** The base delay (in ms) between retries. */\n retryDelay?: number\n /** The max number of times to retry. */\n retryCount?: number\n /** The timeout (in ms) for requests. */\n timeout?: number\n /** The type of the transport. */\n type: TType\n}\n\nexport type Transport<\n TType extends string = string,\n TRpcAttributes = Record<string, any>,\n TRequests extends BaseRpcRequests['request'] = Requests['request'],\n> = <TChain extends Chain = Chain>({\n chain,\n}: {\n chain?: TChain\n retryCount?: TransportConfig['retryCount']\n}) => {\n config: TransportConfig<TType>\n request: TRequests\n value?: TRpcAttributes\n}\n\n/**\n * @description Creates an transport intended to be used with a client.\n */\nexport function createTransport<\n TType extends string = string,\n TRpcAttributes = any,\n>(\n {\n key,\n name,\n request,\n retryCount = 3,\n retryDelay = 150,\n timeout,\n type,\n }: TransportConfig<TType>,\n value?: TRpcAttributes,\n): ReturnType<Transport<TType, TRpcAttributes>> {\n return {\n config: { key, name, request, retryCount, retryDelay, timeout, type },\n request: buildRequest(request, { retryCount, retryDelay }),\n value,\n }\n}\n","import type {\n BaseRpcRequests,\n Transport,\n TransportConfig,\n} from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype EthereumProvider = { request: BaseRpcRequests['request'] }\n\nexport type CustomTransportConfig = {\n /** The key of the transport. */\n key?: TransportConfig['key']\n /** The name of the transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n}\n\nexport type CustomTransport = Transport<'custom', EthereumProvider['request']>\n\n/**\n * @description Creates a custom transport given an EIP-1193 compliant `request` attribute.\n */\nexport function custom<TProvider extends EthereumProvider>(\n /** An Ethereum provider with an EIP-1193 \"request\" attribute. */\n provider: TProvider,\n config: CustomTransportConfig = {},\n): CustomTransport {\n const { key = 'custom', name = 'Custom Provider', retryDelay } = config\n return ({ retryCount: defaultRetryCount }) =>\n createTransport({\n key,\n name,\n request: provider.request.bind(provider),\n retryCount: config.retryCount ?? defaultRetryCount,\n retryDelay,\n type: 'custom',\n })\n}\n","import { isDeterministicError } from '../../utils/buildRequest'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type FallbackTransportConfig = {\n /** The key of the Fallback transport. */\n key?: TransportConfig['key']\n /** The name of the Fallback transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n}\n\nexport type FallbackTransport = Transport<\n 'fallback',\n { transports: Transport[] }\n>\n\nexport function fallback(\n transports: Transport[],\n config: FallbackTransportConfig = {},\n): FallbackTransport {\n const { key = 'fallback', name = 'Fallback', retryCount, retryDelay } = config\n return ({ chain }) =>\n createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const fetch = async (i: number = 0): Promise<any> => {\n const transport = transports[i]({ chain, retryCount: 0 })\n try {\n return await transport.request({\n method,\n params,\n } as any)\n } catch (err) {\n // If the error is deterministic, we don't need to fall back.\n // So throw the error.\n if (isDeterministicError(err as Error)) throw err\n\n // If we've reached the end of the fallbacks, throw the error.\n if (i === transports.length - 1) throw err\n\n // Otherwise, try the next fallback.\n return fetch(i + 1)\n }\n }\n return fetch()\n },\n retryCount,\n retryDelay,\n type: 'fallback',\n },\n {\n transports: transports.map(\n (fn) => fn({ chain, retryCount: 0 }) as unknown as Transport,\n ),\n },\n )\n}\n","import { UrlRequiredError } from '../../errors'\nimport type { HttpOptions } from '../../utils'\nimport { rpc } from '../../utils'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type HttpTransportConfig = {\n /**\n * Request configuration to pass to `fetch`.\n * @link https://developer.mozilla.org/en-US/docs/Web/API/fetch\n */\n fetchOptions?: HttpOptions['fetchOptions']\n /** The key of the HTTP transport. */\n key?: TransportConfig['key']\n /** The name of the HTTP transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n /** The timeout (in ms) for the HTTP request. Default: 10_000 */\n timeout?: TransportConfig['timeout']\n}\n\nexport type HttpTransport = Transport<\n 'http',\n {\n url?: string\n }\n>\n\n/**\n * @description Creates a HTTP transport that connects to a JSON-RPC API.\n */\nexport function http(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n config: HttpTransportConfig = {},\n): HttpTransport {\n const {\n fetchOptions,\n key = 'http',\n name = 'HTTP JSON-RPC',\n retryDelay,\n timeout = 10_000,\n } = config\n return ({ chain, retryCount: defaultRetryCount }) => {\n const retryCount = config.retryCount ?? defaultRetryCount\n const url_ = url || chain?.rpcUrls.default.http[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const { result } = await rpc.http(url_, {\n body: {\n method,\n params,\n },\n fetchOptions,\n timeout,\n })\n return result\n },\n retryCount,\n retryDelay,\n timeout,\n type: 'http',\n },\n {\n url,\n },\n )\n }\n}\n","import WebSocket from 'isomorphic-ws'\nimport { UrlRequiredError } from '../../errors'\nimport type { Hash } from '../../types'\nimport type { RpcResponse } from '../../utils/rpc'\nimport { getSocket, rpc } from '../../utils/rpc'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype WebSocketTransportSubscribeArgs = {\n onData: (data: RpcResponse) => void\n onError?: (error: any) => void\n}\n\ntype WebSocketTransportSubscribeResponse = {\n subscriptionId: Hash\n unsubscribe: () => Promise<RpcResponse<boolean>>\n}\n\ntype WebSocketTransportSubscribe = {\n subscribe(\n args: WebSocketTransportSubscribeArgs & {\n /**\n * @description Add information about compiled contracts\n * @link https://hardhat.org/hardhat-network/docs/reference#hardhat_addcompilationresult\n */\n params: ['newHeads']\n },\n ): Promise<WebSocketTransportSubscribeResponse>\n}\n\nexport type WebSocketTransportConfig = {\n /** The key of the WebSocket transport. */\n key?: TransportConfig['key']\n /** The name of the WebSocket transport. */\n name?: TransportConfig['name']\n /** The max number of times to retry. */\n retryCount?: TransportConfig['retryCount']\n /** The base delay (in ms) between retries. */\n retryDelay?: TransportConfig['retryDelay']\n /** The timeout (in ms) for async WebSocket requests. Default: 10_000 */\n timeout?: TransportConfig['timeout']\n}\n\nexport type WebSocketTransport = Transport<\n 'webSocket',\n {\n getSocket(): Promise<WebSocket>\n subscribe: WebSocketTransportSubscribe['subscribe']\n }\n>\n\n/**\n * @description Creates a WebSocket transport that connects to a JSON-RPC API.\n */\nexport function webSocket(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n config: WebSocketTransportConfig = {},\n): WebSocketTransport {\n const {\n key = 'webSocket',\n name = 'WebSocket JSON-RPC',\n retryDelay,\n timeout = 10_000,\n } = config\n return ({ chain, retryCount: defaultRetryCount }) => {\n const retryCount = config.retryCount ?? defaultRetryCount\n const url_ = url || chain?.rpcUrls.default.webSocket?.[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const socket = await getSocket(url_)\n const { result } = await rpc.webSocketAsync(socket, {\n body: { method, params },\n timeout,\n })\n return result\n },\n retryCount,\n retryDelay,\n timeout,\n type: 'webSocket',\n },\n {\n getSocket() {\n return getSocket(url_)\n },\n async subscribe({ params, onData, onError }: any) {\n const socket = await getSocket(url_)\n const { result: subscriptionId } = await new Promise<any>(\n (resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_subscribe',\n params,\n },\n onData: (data) => {\n if (typeof data.id === 'number') {\n resolve(data)\n return\n }\n onData(data)\n },\n onError: (error) => {\n reject(error)\n onError?.(error)\n },\n }),\n )\n return {\n subscriptionId,\n async unsubscribe() {\n return new Promise<any>((resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_unsubscribe',\n params: [subscriptionId],\n },\n onData: resolve,\n onError: reject,\n }),\n )\n },\n }\n },\n },\n )\n }\n}\n","let size = 256\nlet index = size\nlet buffer: string\n\nexport function uid(length = 11) {\n if (!buffer || index + length > size * 2) {\n buffer = ''\n index = 0\n for (let i = 0; i < size; i++) {\n buffer += ((256 + Math.random() * 256) | 0).toString(16).substring(1)\n }\n }\n return buffer.substring(index, index++ + length)\n}\n","import { Chain } from '../types'\nimport type { Requests } from '../types/eip1193'\nimport { buildRequest } from '../utils/buildRequest'\nimport { uid } from '../utils/uid'\nimport type { BaseRpcRequests, Transport } from './transports/createTransport'\n\nexport type Client<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = {\n /** Chain for the client. */\n chain?: TChain\n /** A key for the client. */\n key: string\n /** A name for the client. */\n name: string\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval: number\n /** Request function wrapped with friendly error handling */\n request: TRequests['request']\n /** The RPC transport (http, webSocket, custom, etc) */\n transport: ReturnType<TTransport>['config'] & ReturnType<TTransport>['value']\n /** The type of client. */\n type: string\n /** A unique ID for the client. */\n uid: string\n}\n\nexport type ClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = Partial<\n Pick<\n Client<TTransport, TChain, TRequests>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'type'\n >\n> & {\n transport: TTransport\n}\n\n/**\n * @description Creates a base RPC client with the given transport.\n *\n * - Intended to be used as a base for other RPC clients.\n * - Has access to _all_ EIP-1474 RPC methods.\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createClient, http } from 'viem/clients'\n * const client = createClient(http({ chain: mainnet }))\n */\nexport function createClient<\n TTransport extends Transport,\n TChain extends Chain,\n TRequests extends BaseRpcRequests,\n>({\n chain,\n key = 'base',\n name = 'Base Client',\n pollingInterval = 4_000,\n transport,\n type = 'base',\n}: ClientConfig<TTransport, TChain, TRequests>): Client<\n TTransport,\n TChain,\n TRequests\n> {\n const { config, request, value } = transport({ chain })\n return {\n chain,\n key,\n name,\n pollingInterval,\n request,\n transport: { ...config, ...value },\n type,\n uid: uid(),\n }\n}\n","import { Abi, AbiEvent } from 'abitype'\nimport type {\n CallArgs,\n CallResponse,\n CreateBlockFilterResponse,\n CreateContractEventFilterArgs,\n CreateContractEventFilterResponse,\n CreateEventFilterArgs,\n CreateEventFilterResponse,\n CreatePendingTransactionFilterResponse,\n EstimateGasArgs,\n EstimateGasResponse,\n EstimateContractGasArgs,\n EstimateContractGasResponse,\n GetBalanceArgs,\n GetBalanceResponse,\n GetBlockArgs,\n GetBlockNumberArgs,\n GetBlockNumberResponse,\n GetBlockResponse,\n GetBlockTransactionCountArgs,\n GetBlockTransactionCountResponse,\n GetBytecodeArgs,\n GetBytecodeResponse,\n GetChainIdResponse,\n GetFeeHistoryArgs,\n GetFeeHistoryResponse,\n GetFilterChangesArgs,\n GetFilterChangesResponse,\n GetFilterLogsArgs,\n GetFilterLogsResponse,\n GetGasPriceResponse,\n GetTransactionArgs,\n GetTransactionConfirmationsArgs,\n GetTransactionConfirmationsResponse,\n GetTransactionReceiptArgs,\n GetTransactionReceiptResponse,\n GetTransactionResponse,\n UninstallFilterArgs,\n UninstallFilterResponse,\n WaitForTransactionReceiptArgs,\n WaitForTransactionReceiptResponse,\n WatchBlockNumberArgs,\n WatchBlocksArgs,\n WatchPendingTransactionsArgs,\n GetLogsArgs,\n GetLogsResponse,\n GetStorageAtArgs,\n GetStorageAtResponse,\n MulticallArgs,\n MulticallResponse,\n ReadContractArgs,\n ReadContractResponse,\n SimulateContractArgs,\n SimulateContractResponse,\n WatchContractEventArgs,\n WatchEventArgs,\n} from '../../actions/public'\nimport {\n call,\n createBlockFilter,\n createContractEventFilter,\n createEventFilter,\n createPendingTransactionFilter,\n estimateContractGas,\n estimateGas,\n getBalance,\n getBlock,\n getBlockNumber,\n getBlockTransactionCount,\n getBytecode,\n getChainId,\n getFeeHistory,\n getFilterChanges,\n getFilterLogs,\n getGasPrice,\n getLogs,\n getTransaction,\n getTransactionConfirmations,\n getTransactionReceipt,\n uninstallFilter,\n waitForTransactionReceipt,\n watchBlockNumber,\n watchBlocks,\n watchEvent,\n watchPendingTransactions,\n getStorageAt,\n multicall,\n readContract,\n simulateContract,\n watchContractEvent,\n} from '../../actions/public'\nimport type {\n GetEnsAddressArgs,\n GetEnsAddressResponse,\n GetEnsNameArgs,\n GetEnsNameResponse,\n} from '../../actions/ens'\nimport { getEnsAddress, getEnsName } from '../../actions/ens'\nimport type { PublicClient } from '../createPublicClient'\nimport {\n Chain,\n ContractConfig,\n FilterType,\n MaybeExtractEventArgsFromAbi,\n} from '../../types'\n\nexport type PublicActions<TChain extends Chain = Chain> = {\n call: (args: CallArgs<TChain>) => Promise<CallResponse>\n createBlockFilter: () => Promise<CreateBlockFilterResponse>\n createContractEventFilter: <\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,\n >(\n args: CreateContractEventFilterArgs<TAbi, TEventName, TArgs>,\n ) => Promise<CreateContractEventFilterResponse<TAbi, TEventName, TArgs>>\n createEventFilter: <\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n TArgs extends MaybeExtractEventArgsFromAbi<TAbi, TEventName> | undefined,\n >(\n args?: CreateEventFilterArgs<TAbiEvent, TAbi, TEventName, TArgs>,\n ) => Promise<CreateEventFilterResponse<TAbiEvent, TAbi, TEventName, TArgs>>\n createPendingTransactionFilter: () => Promise<CreatePendingTransactionFilterResponse>\n estimateContractGas: <\n TChain extends Chain,\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: EstimateContractGasArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<EstimateContractGasResponse>\n estimateGas: (args: EstimateGasArgs<TChain>) => Promise<EstimateGasResponse>\n getBalance: (args: GetBalanceArgs) => Promise<GetBalanceResponse>\n getBlock: (args?: GetBlockArgs) => Promise<GetBlockResponse<TChain>>\n getBlockNumber: (args?: GetBlockNumberArgs) => Promise<GetBlockNumberResponse>\n getBlockTransactionCount: (\n args?: GetBlockTransactionCountArgs,\n ) => Promise<GetBlockTransactionCountResponse>\n getBytecode: (args: GetBytecodeArgs) => Promise<GetBytecodeResponse>\n getChainId: () => Promise<GetChainIdResponse>\n getEnsAddress: (args: GetEnsAddressArgs) => Promise<GetEnsAddressResponse>\n getEnsName: (args: GetEnsNameArgs) => Promise<GetEnsNameResponse>\n getFeeHistory: (args: GetFeeHistoryArgs) => Promise<GetFeeHistoryResponse>\n getFilterChanges: <\n TFilterType extends FilterType,\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n >(\n args: GetFilterChangesArgs<TFilterType, TAbiEvent, TAbi, TEventName>,\n ) => Promise<\n GetFilterChangesResponse<TFilterType, TAbiEvent, TAbi, TEventName>\n >\n getFilterLogs: <\n TAbiEvent extends AbiEvent | undefined,\n TAbi extends Abi | readonly unknown[],\n TEventName extends string | undefined,\n >(\n args: GetFilterLogsArgs<TAbiEvent, TAbi, TEventName>,\n ) => Promise<GetFilterLogsResponse<TAbiEvent, TAbi, TEventName>>\n getGasPrice: () => Promise<GetGasPriceResponse>\n getLogs: <TAbiEvent extends AbiEvent | undefined>(\n args?: GetLogsArgs<TAbiEvent>,\n ) => Promise<GetLogsResponse<TAbiEvent>>\n getStorageAt: (args: GetStorageAtArgs) => Promise<GetStorageAtResponse>\n getTransaction: (\n args: GetTransactionArgs,\n ) => Promise<GetTransactionResponse<TChain>>\n getTransactionConfirmations: (\n args: GetTransactionConfirmationsArgs<TChain>,\n ) => Promise<GetTransactionConfirmationsResponse>\n getTransactionReceipt: (\n args: GetTransactionReceiptArgs,\n ) => Promise<GetTransactionReceiptResponse<TChain>>\n multicall: <\n TContracts extends ContractConfig[],\n TAllowFailure extends boolean = true,\n >(\n args: MulticallArgs<TContracts, TAllowFailure>,\n ) => Promise<MulticallResponse<TContracts, TAllowFailure>>\n readContract: <\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: ReadContractArgs<TAbi, TFunctionName>,\n ) => Promise<ReadContractResponse>\n simulateContract: <\n TAbi extends Abi | readonly unknown[] = Abi,\n TFunctionName extends string = any,\n >(\n args: SimulateContractArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<SimulateContractResponse<TChain, TAbi, TFunctionName>>\n uninstallFilter: (\n args: UninstallFilterArgs,\n ) => Promise<UninstallFilterResponse>\n waitForTransactionReceipt: (\n args: WaitForTransactionReceiptArgs<TChain>,\n ) => Promise<WaitForTransactionReceiptResponse<TChain>>\n watchBlockNumber: (\n args: WatchBlockNumberArgs,\n ) => ReturnType<typeof watchBlockNumber>\n watchBlocks: (args: WatchBlocksArgs<TChain>) => ReturnType<typeof watchBlocks>\n watchContractEvent: <\n TAbi extends Abi | readonly unknown[],\n TEventName extends string,\n >(\n args: WatchContractEventArgs<TAbi, TEventName>,\n ) => ReturnType<typeof watchContractEvent>\n watchEvent: <\n TAbiEvent extends AbiEvent | undefined,\n TEventName extends string | undefined,\n >(\n args: WatchEventArgs<TAbiEvent>,\n ) => ReturnType<typeof watchEvent>\n watchPendingTransactions: (\n args: WatchPendingTransactionsArgs,\n ) => ReturnType<typeof watchPendingTransactions>\n}\n\nexport const publicActions = <\n TChain extends Chain,\n TClient extends PublicClient<any, any>,\n>(\n client: TClient,\n): PublicActions<TChain> => ({\n call: (args) => call(client, args),\n createBlockFilter: () => createBlockFilter(client),\n createContractEventFilter: (args) => createContractEventFilter(client, args),\n createEventFilter: (args) => createEventFilter(client, args),\n createPendingTransactionFilter: () => createPendingTransactionFilter(client),\n estimateContractGas: (args) => estimateContractGas(client, args),\n estimateGas: (args) => estimateGas(client, args),\n getBalance: (args) => getBalance(client, args),\n getBlock: (args) => getBlock(client, args),\n getBlockNumber: (args) => getBlockNumber(client, args),\n getBlockTransactionCount: (args) => getBlockTransactionCount(client, args),\n getBytecode: (args) => getBytecode(client, args),\n getChainId: () => getChainId(client),\n getEnsAddress: (args) => getEnsAddress(client, args),\n getEnsName: (args) => getEnsName(client, args),\n getFeeHistory: (args) => getFeeHistory(client, args),\n getFilterChanges: (args) => getFilterChanges(client, args),\n getFilterLogs: (args) => getFilterLogs(client, args),\n getGasPrice: () => getGasPrice(client),\n getLogs: (args) => getLogs(client, args),\n getStorageAt: (args) => getStorageAt(client, args),\n getTransaction: (args) => getTransaction(client, args),\n getTransactionConfirmations: (args) =>\n getTransactionConfirmations(client, args),\n getTransactionReceipt: (args) => getTransactionReceipt(client, args),\n multicall: (args) => multicall(client, args),\n readContract: (args) => readContract(client, args),\n simulateContract: (args) => simulateContract(client, args),\n uninstallFilter: (args) => uninstallFilter(client, args),\n waitForTransactionReceipt: (args) => waitForTransactionReceipt(client, args),\n watchBlocks: (args) => watchBlocks(client, args),\n watchBlockNumber: (args) => watchBlockNumber(client, args),\n watchContractEvent: (args) => watchContractEvent(client, args),\n watchEvent: (args) => watchEvent(client, args),\n watchPendingTransactions: (args) => watchPendingTransactions(client, args),\n})\n","import type {\n DropTransactionArgs,\n GetAutomineResponse,\n GetTxPoolContentResponse,\n GetTxPoolStatusResponse,\n ImpersonateAccountArgs,\n IncreaseTimeArgs,\n InspectTxpoolResponse,\n MineArgs,\n ResetArgs,\n RevertArgs,\n SendUnsignedTransactionArgs,\n SendUnsignedTransactionResponse,\n SetBalanceArgs,\n SetBlockGasLimitArgs,\n SetBlockTimestampIntervalArgs,\n SetCodeArgs,\n SetCoinbaseArgs,\n SetIntervalMiningArgs,\n SetMinGasPriceArgs,\n SetNextBlockBaseFeePerGasArgs,\n SetNextBlockTimestampArgs,\n SetNonceArgs,\n SetStorageAtArgs,\n StopImpersonatingAccountArgs,\n} from '../../actions/test'\nimport {\n dropTransaction,\n getAutomine,\n getTxpoolContent,\n getTxpoolStatus,\n impersonateAccount,\n increaseTime,\n inspectTxpool,\n mine,\n removeBlockTimestampInterval,\n reset,\n revert,\n sendUnsignedTransaction,\n setAutomine,\n setBalance,\n setBlockGasLimit,\n setBlockTimestampInterval,\n setCode,\n setCoinbase,\n setIntervalMining,\n setLoggingEnabled,\n setMinGasPrice,\n setNextBlockBaseFeePerGas,\n setNextBlockTimestamp,\n setNonce,\n setRpcUrl,\n setStorageAt,\n snapshot,\n stopImpersonatingAccount,\n} from '../../actions/test'\nimport { Chain, Quantity } from '../../types'\nimport type { TestClient } from '../createTestClient'\n\nexport type TestActions<TChain extends Chain = Chain> = {\n dropTransaction: (args: DropTransactionArgs) => Promise<void>\n getAutomine: () => Promise<GetAutomineResponse>\n getTxPoolContent: () => Promise<GetTxPoolContentResponse>\n getTxPoolStatus: () => Promise<GetTxPoolStatusResponse>\n impersonateAccount: (args: ImpersonateAccountArgs) => Promise<void>\n increaseTime: (args: IncreaseTimeArgs) => Promise<Quantity>\n inspectTxpool: () => Promise<InspectTxpoolResponse>\n mine: (args: MineArgs) => Promise<void>\n removeBlockTimestampInterval: () => Promise<void>\n reset: (args: ResetArgs) => Promise<void>\n revert: (args: RevertArgs) => Promise<void>\n sendUnsignedTransaction: (\n args: SendUnsignedTransactionArgs,\n ) => Promise<SendUnsignedTransactionResponse>\n setAutomine: (args: boolean) => Promise<void>\n setBalance: (args: SetBalanceArgs) => Promise<void>\n setBlockGasLimit: (args: SetBlockGasLimitArgs) => Promise<void>\n setBlockTimestampInterval: (\n args: SetBlockTimestampIntervalArgs,\n ) => Promise<void>\n setCode: (args: SetCodeArgs) => Promise<void>\n setCoinbase: (args: SetCoinbaseArgs) => Promise<void>\n setIntervalMining: (args: SetIntervalMiningArgs) => Promise<void>\n setLoggingEnabled: (args: boolean) => Promise<void>\n setMinGasPrice: (args: SetMinGasPriceArgs) => Promise<void>\n setNextBlockBaseFeePerGas: (\n args: SetNextBlockBaseFeePerGasArgs,\n ) => Promise<void>\n setNextBlockTimestamp: (args: SetNextBlockTimestampArgs) => Promise<void>\n setNonce: (args: SetNonceArgs) => Promise<void>\n setRpcUrl: (args: string) => Promise<void>\n setStorageAt: (args: SetStorageAtArgs) => Promise<void>\n snapshot: () => Promise<Quantity>\n stopImpersonatingAccount: (\n args: StopImpersonatingAccountArgs,\n ) => Promise<void>\n}\n\nexport const testActions = <\n TChain extends Chain,\n TClient extends TestClient<any, any>,\n>(\n client: TClient,\n): TestActions<TChain> => ({\n dropTransaction: (args) => dropTransaction(client, args),\n getAutomine: () => getAutomine(client),\n getTxPoolContent: () => getTxpoolContent(client),\n getTxPoolStatus: () => getTxpoolStatus(client),\n impersonateAccount: (args) => impersonateAccount(client, args),\n increaseTime: (args) => increaseTime(client, args),\n inspectTxpool: () => inspectTxpool(client),\n mine: (args) => mine(client, args),\n removeBlockTimestampInterval: () => removeBlockTimestampInterval(client),\n reset: (args) => reset(client, args),\n revert: (args) => revert(client, args),\n sendUnsignedTransaction: (args) => sendUnsignedTransaction(client, args),\n setAutomine: (args) => setAutomine(client, args),\n setBalance: (args) => setBalance(client, args),\n setBlockGasLimit: (args) => setBlockGasLimit(client, args),\n setBlockTimestampInterval: (args) => setBlockTimestampInterval(client, args),\n setCode: (args) => setCode(client, args),\n setCoinbase: (args) => setCoinbase(client, args),\n setIntervalMining: (args) => setIntervalMining(client, args),\n setLoggingEnabled: (args) => setLoggingEnabled(client, args),\n setMinGasPrice: (args) => setMinGasPrice(client, args),\n setNextBlockBaseFeePerGas: (args) => setNextBlockBaseFeePerGas(client, args),\n setNextBlockTimestamp: (args) => setNextBlockTimestamp(client, args),\n setNonce: (args) => setNonce(client, args),\n setRpcUrl: (args) => setRpcUrl(client, args),\n setStorageAt: (args) => setStorageAt(client, args),\n snapshot: () => snapshot(client),\n stopImpersonatingAccount: (args) => stopImpersonatingAccount(client, args),\n})\n","import { Abi } from 'abitype'\nimport {\n AddChainArgs,\n DeployContractArgs,\n DeployContractResponse,\n GetAccountsResponse,\n GetPermissionsResponse,\n RequestAccountsResponse,\n RequestPermissionsArgs,\n RequestPermissionsResponse,\n SendTransactionArgs,\n SendTransactionResponse,\n SignMessageArgs,\n SignMessageResponse,\n SwitchChainArgs,\n watchAsset,\n WatchAssetArgs,\n WatchAssetResponse,\n writeContract,\n WriteContractArgs,\n WriteContractResponse,\n} from '../../actions/wallet'\nimport {\n addChain,\n deployContract,\n getAccounts,\n getPermissions,\n requestAccounts,\n requestPermissions,\n sendTransaction,\n signMessage,\n switchChain,\n} from '../../actions/wallet'\nimport type { Chain } from '../../types'\nimport type { WalletClient } from '../createWalletClient'\n\nexport type WalletActions<TChain extends Chain = Chain> = {\n addChain: (args: AddChainArgs) => Promise<void>\n deployContract: <TAbi extends Abi | readonly unknown[]>(\n args: DeployContractArgs<TChain, TAbi>,\n ) => Promise<DeployContractResponse>\n getAccounts: () => Promise<GetAccountsResponse>\n getPermissions: () => Promise<GetPermissionsResponse>\n requestAccounts: () => Promise<RequestAccountsResponse>\n requestPermissions: (\n args: RequestPermissionsArgs,\n ) => Promise<RequestPermissionsResponse>\n sendTransaction: (\n args: SendTransactionArgs<TChain>,\n ) => Promise<SendTransactionResponse>\n signMessage: (args: SignMessageArgs) => Promise<SignMessageResponse>\n switchChain: (args: SwitchChainArgs) => Promise<void>\n watchAsset: (args: WatchAssetArgs) => Promise<WatchAssetResponse>\n writeContract: <\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n >(\n args: WriteContractArgs<TChain, TAbi, TFunctionName>,\n ) => Promise<WriteContractResponse>\n}\n\nexport const walletActions = <\n TChain extends Chain,\n TClient extends WalletClient<any, any>,\n>(\n client: TClient,\n): WalletActions<TChain> => ({\n addChain: (args) => addChain(client, args),\n deployContract: (args) => deployContract(client, args),\n getAccounts: () => getAccounts(client),\n getPermissions: () => getPermissions(client),\n requestAccounts: () => requestAccounts(client),\n requestPermissions: (args) => requestPermissions(client, args),\n sendTransaction: (args) => sendTransaction(client, args),\n signMessage: (args) => signMessage(client, args),\n switchChain: (args) => switchChain(client, args),\n watchAsset: (args) => watchAsset(client, args),\n writeContract: (args) => writeContract(client, args),\n})\n","import type { PublicRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { publicActions, PublicActions } from './decorators'\nimport { Chain } from '../types'\n\nexport type PublicClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = Pick<\n ClientConfig<TTransport, TChain>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'\n>\n\nexport type PublicClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, PublicRequests> &\n (TIncludeActions extends true ? PublicActions<TChain> : {})\n\n/**\n * @description Creates a public client with a given transport.\n *\n * - Only has access to \"public\" EIP-1474 RPC methods (ie. `eth_blockNumber`, etc).\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createPublicClient, http } from 'viem/clients'\n * const client = createPublicClient({ transport: http('https://...') })\n */\nexport function createPublicClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n chain,\n key = 'public',\n name = 'Public Client',\n transport,\n pollingInterval,\n}: PublicClientConfig<TTransport, TChain>): PublicClient<\n TTransport,\n TChain,\n true\n> {\n const client = createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'publicClient',\n })\n return {\n ...client,\n ...publicActions(client as PublicClient<any, any>),\n }\n}\n","import type { TestRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\nimport { testActions, TestActions } from './decorators'\n\ntype TestClientModes = 'anvil' | 'hardhat'\n\nexport type TestClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the client. */\n key?: ClientConfig['key']\n /** Mode of the test client. Available: \"anvil\" | \"hardhat\" */\n mode: TMode\n /** The name of the client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type TestClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, TestRequests<TMode>> & {\n mode: TMode\n} & (TIncludeActions extends true ? TestActions<TChain> : {})\n\n/**\n * @description Creates a test client with a given transport.\n *\n * - Only has access to \"test\" RPC methods (ie. `anvil_setBalance`,\n * `evm_mine`, etc).\n *\n * @example\n * import { createTestClient, http } from 'viem'\n * import { local } from 'viem/chains'\n * const client = createTestClient({ chain: local, mode: 'anvil', transport: http() })\n */\nexport function createTestClient<\n TTransport extends Transport,\n TChain extends Chain,\n TMode extends TestClientModes,\n>({\n chain,\n key = 'test',\n name = 'Test Client',\n mode,\n pollingInterval,\n transport,\n}: TestClientConfig<TTransport, TChain, TMode>): TestClient<\n TTransport,\n TChain,\n TMode,\n true\n> {\n const client = {\n ...createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'testClient',\n }),\n mode,\n }\n return {\n ...client,\n ...testActions(client as TestClient<any, any, any>),\n }\n}\n","import type { SignableRequests, WalletRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\nimport { WalletActions, walletActions } from './decorators'\nimport { wagmiContractConfig } from '../_test'\n\nexport type WalletClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the Wallet Client. */\n key?: ClientConfig['key']\n /** The name of the Wallet Client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type WalletClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TIncludeActions extends boolean = true,\n> = Client<TTransport, TChain, SignableRequests & WalletRequests> &\n (TIncludeActions extends true ? WalletActions<TChain> : {})\n\n/**\n * @description Creates a wallet client with a given transport.\n *\n * - Only has access to \"wallet\" & \"signable\" EIP-1474 RPC methods\n * (ie. `eth_sendTransaction`, `eth_requestAccounts`, etc).\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * const client = createWalletClient(\n * custom(window.ethereum)\n * )\n */\nexport function createWalletClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n transport,\n key = 'wallet',\n name = 'Wallet Client',\n pollingInterval,\n}: WalletClientConfig<TTransport, TChain>): WalletClient<\n TTransport,\n TChain,\n true\n> {\n const client = createClient({\n key,\n name,\n pollingInterval,\n transport: () => transport({ retryCount: 0 }),\n type: 'walletClient',\n })\n return {\n ...client,\n ...(walletActions(client as any) as any),\n }\n}\n"]}