viem 0.0.0-main.20240329T204339 → 0.0.0-main.20240330T041619

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 (42) hide show
  1. package/_cjs/actions/public/estimateFeesPerGas.js +6 -3
  2. package/_cjs/actions/public/estimateFeesPerGas.js.map +1 -1
  3. package/_cjs/celo/chainConfig.js +2 -0
  4. package/_cjs/celo/chainConfig.js.map +1 -1
  5. package/_cjs/celo/fees.js +32 -0
  6. package/_cjs/celo/fees.js.map +1 -0
  7. package/_cjs/errors/version.js +1 -1
  8. package/_esm/actions/getContract.js +1 -1
  9. package/_esm/actions/public/estimateFeesPerGas.js +6 -3
  10. package/_esm/actions/public/estimateFeesPerGas.js.map +1 -1
  11. package/_esm/actions/public/watchContractEvent.js +1 -1
  12. package/_esm/actions/public/watchContractEvent.js.map +1 -1
  13. package/_esm/actions/public/watchEvent.js +1 -1
  14. package/_esm/actions/public/watchEvent.js.map +1 -1
  15. package/_esm/celo/chainConfig.js +2 -0
  16. package/_esm/celo/chainConfig.js.map +1 -1
  17. package/_esm/celo/fees.js +58 -0
  18. package/_esm/celo/fees.js.map +1 -0
  19. package/_esm/errors/version.js +1 -1
  20. package/_types/actions/getContract.d.ts +1 -1
  21. package/_types/actions/public/estimateFeesPerGas.d.ts +1 -2
  22. package/_types/actions/public/estimateFeesPerGas.d.ts.map +1 -1
  23. package/_types/celo/chainConfig.d.ts +2101 -0
  24. package/_types/celo/chainConfig.d.ts.map +1 -1
  25. package/_types/celo/fees.d.ts +4 -0
  26. package/_types/celo/fees.d.ts.map +1 -0
  27. package/_types/chains/definitions/celo.d.ts +2101 -1
  28. package/_types/chains/definitions/celo.d.ts.map +1 -1
  29. package/_types/chains/definitions/celoAlfajores.d.ts +2101 -1
  30. package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
  31. package/_types/errors/version.d.ts +1 -1
  32. package/_types/types/chain.d.ts +2 -1
  33. package/_types/types/chain.d.ts.map +1 -1
  34. package/actions/getContract.ts +1 -1
  35. package/actions/public/estimateFeesPerGas.ts +7 -4
  36. package/actions/public/watchContractEvent.ts +1 -1
  37. package/actions/public/watchEvent.ts +1 -1
  38. package/celo/chainConfig.ts +2 -0
  39. package/celo/fees.ts +92 -0
  40. package/errors/version.ts +1 -1
  41. package/package.json +1 -1
  42. package/types/chain.ts +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"celoAlfajores.d.ts","sourceRoot":"","sources":["../../../chains/definitions/celoAlfajores.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BxB,CAAA"}
1
+ {"version":3,"file":"celoAlfajores.d.ts","sourceRoot":"","sources":["../../../chains/definitions/celoAlfajores.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BxB,CAAA"}
@@ -1,2 +1,2 @@
1
- export declare const version = "0.0.0-main.20240329T204339";
1
+ export declare const version = "0.0.0-main.20240330T041619";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -91,8 +91,9 @@ export type ChainFees<formatters extends ChainFormatters | undefined = ChainForm
91
91
  *
92
92
  * Overrides the return value in the [`estimateFeesPerGas` Action](/docs/actions/public/estimateFeesPerGas).
93
93
  */
94
- estimateFeesPerGas?: ((args: ChainEstimateFeesPerGasFnParameters<formatters>) => Promise<EstimateFeesPerGasReturnType>) | bigint | undefined;
94
+ estimateFeesPerGas?: ChainEstimateFeesPerGasFn<formatters> | bigint | undefined;
95
95
  };
96
+ export type ChainEstimateFeesPerGasFn<formatters extends ChainFormatters | undefined = ChainFormatters | undefined> = (args: ChainEstimateFeesPerGasFnParameters<formatters>) => Promise<EstimateFeesPerGasReturnType | null>;
96
97
  export type ChainFormatters = {
97
98
  /** Modifies how the Block structure is formatted & typed. */
98
99
  block?: ChainFormatter<'block'> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../types/chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../types/chain.ts"],"names":[],"mappings":"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"}
@@ -453,7 +453,7 @@ export type GetContractErrorType = ErrorType
453
453
  *
454
454
  * - Docs https://viem.sh/docs/contract/getContract
455
455
  *
456
- * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properties every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.
456
+ * Using Contract Instances can make it easier to work with contracts if you don't want to pass the `abi` and `address` properites every time you perform contract actions, e.g. [`readContract`](https://viem.sh/docs/contract/readContract), [`writeContract`](https://viem.sh/docs/contract/writeContract), [`estimateContractGas`](https://viem.sh/docs/contract/estimateContractGas), etc.
457
457
  *
458
458
  * @example
459
459
  * import { createPublicClient, getContract, http, parseAbi } from 'viem'
@@ -12,8 +12,8 @@ import type {
12
12
  Chain,
13
13
  ChainEstimateFeesPerGasFnParameters,
14
14
  ChainFeesFnParameters,
15
+ GetChainParameter,
15
16
  } from '../../types/chain.js'
16
- import type { GetChainParameter } from '../../types/chain.js'
17
17
  import type {
18
18
  FeeValuesEIP1559,
19
19
  FeeValuesLegacy,
@@ -130,14 +130,17 @@ export async function internal_estimateFeesPerGas<
130
130
  ? block_
131
131
  : await getAction(client, getBlock, 'getBlock')({})
132
132
 
133
- if (typeof chain?.fees?.estimateFeesPerGas === 'function')
134
- return chain.fees.estimateFeesPerGas({
133
+ if (typeof chain?.fees?.estimateFeesPerGas === 'function') {
134
+ const fees = (await chain.fees.estimateFeesPerGas({
135
135
  block: block_ as Block,
136
136
  client,
137
137
  multiply,
138
138
  request,
139
139
  type,
140
- } as ChainEstimateFeesPerGasFnParameters) as unknown as EstimateFeesPerGasReturnType<type>
140
+ } as ChainEstimateFeesPerGasFnParameters)) as unknown as EstimateFeesPerGasReturnType<type>
141
+
142
+ if (fees !== null) return fees
143
+ }
141
144
 
142
145
  if (type === 'eip1559') {
143
146
  if (typeof block.baseFeePerGas !== 'bigint')
@@ -238,7 +238,7 @@ export function watchContractEvent<
238
238
  else for (const log of logs) emit.onLogs([log] as any)
239
239
  } catch (err) {
240
240
  // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.
241
- // Reinitialize the filter when this occurs
241
+ // Reinitalize the filter when this occurs
242
242
  if (filter && err instanceof InvalidInputRpcError)
243
243
  initialized = false
244
244
  emit.onError?.(err as Error)
@@ -258,7 +258,7 @@ export function watchEvent<
258
258
  else for (const log of logs) emit.onLogs([log] as any)
259
259
  } catch (err) {
260
260
  // If a filter has been set and gets uninstalled, providers will throw an InvalidInput error.
261
- // Reinitialize the filter when this occurs
261
+ // Reinitalize the filter when this occurs
262
262
  if (filter && err instanceof InvalidInputRpcError)
263
263
  initialized = false
264
264
  emit.onError?.(err as Error)
@@ -1,7 +1,9 @@
1
+ import { fees } from './fees.js'
1
2
  import { formatters } from './formatters.js'
2
3
  import { serializers } from './serializers.js'
3
4
 
4
5
  export const chainConfig = {
5
6
  formatters,
6
7
  serializers,
8
+ fees,
7
9
  } as const
package/celo/fees.ts ADDED
@@ -0,0 +1,92 @@
1
+ import type { Client } from '../clients/createClient.js'
2
+ import {
3
+ type Address,
4
+ type ChainEstimateFeesPerGasFnParameters,
5
+ type ChainFees,
6
+ type Hex,
7
+ } from '../index.js'
8
+
9
+ import { formatters } from './formatters.js'
10
+
11
+ export const fees: ChainFees<typeof formatters> = {
12
+ /*
13
+ * Estimates the fees per gas for a transaction.
14
+
15
+ * If the transaction is to be paid in a token (feeCurrency is present) then the fees
16
+ * are estimated in the value of the token. Otherwise falls back to the default
17
+ * estimation by returning null.
18
+ *
19
+ * @param params fee estimation function parameters
20
+ */
21
+ estimateFeesPerGas: async (
22
+ params: ChainEstimateFeesPerGasFnParameters<typeof formatters>,
23
+ ) => {
24
+ if (!params.request?.feeCurrency) return null
25
+
26
+ const [maxFeePerGas, maxPriorityFeePerGas] = await Promise.all([
27
+ estimateFeePerGasInFeeCurrency(params.client, params.request.feeCurrency),
28
+ estimateMaxPriorityFeePerGasInFeeCurrency(
29
+ params.client,
30
+ params.request.feeCurrency,
31
+ ),
32
+ ])
33
+
34
+ return {
35
+ maxFeePerGas,
36
+ maxPriorityFeePerGas,
37
+ }
38
+ },
39
+ }
40
+
41
+ type RequestGasPriceInFeeCurrencyParams = {
42
+ Method: 'eth_gasPrice'
43
+ Parameters: [Address]
44
+ ReturnType: Hex
45
+ }
46
+
47
+ /*
48
+ * Estimate the fee per gas in the value of the fee token
49
+
50
+ *
51
+ * @param client - Client to use
52
+ * @param feeCurrency - Address of a whitelisted fee token
53
+ * @returns The fee per gas in wei in the value of the fee token
54
+ *
55
+ */
56
+ async function estimateFeePerGasInFeeCurrency(
57
+ client: Client,
58
+ feeCurrency: Address,
59
+ ) {
60
+ const fee = await client.request<RequestGasPriceInFeeCurrencyParams>({
61
+ method: 'eth_gasPrice',
62
+ params: [feeCurrency],
63
+ })
64
+ return BigInt(fee)
65
+ }
66
+
67
+ type RequestMaxGasPriceInFeeCurrencyParams = {
68
+ Method: 'eth_maxPriorityFeePerGas'
69
+ Parameters: [Address]
70
+ ReturnType: Hex
71
+ }
72
+
73
+ /*
74
+ * Estimate the max priority fee per gas in the value of the fee token
75
+
76
+ *
77
+ * @param client - Client to use
78
+ * @param feeCurrency - Address of a whitelisted fee token
79
+ * @returns The fee per gas in wei in the value of the fee token
80
+ *
81
+ */
82
+ async function estimateMaxPriorityFeePerGasInFeeCurrency(
83
+ client: Client,
84
+ feeCurrency: Address,
85
+ ) {
86
+ const feesPerGas =
87
+ await client.request<RequestMaxGasPriceInFeeCurrencyParams>({
88
+ method: 'eth_maxPriorityFeePerGas',
89
+ params: [feeCurrency],
90
+ })
91
+ return BigInt(feesPerGas)
92
+ }
package/errors/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = '0.0.0-main.20240329T204339'
1
+ export const version = '0.0.0-main.20240330T041619'
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "viem",
3
3
  "description": "TypeScript Interface for Ethereum",
4
- "version": "0.0.0-main.20240329T204339",
4
+ "version": "0.0.0-main.20240330T041619",
5
5
  "type": "module",
6
6
  "main": "./_cjs/index.js",
7
7
  "module": "./_esm/index.js",
package/types/chain.ts CHANGED
@@ -129,13 +129,17 @@ export type ChainFees<
129
129
  * Overrides the return value in the [`estimateFeesPerGas` Action](/docs/actions/public/estimateFeesPerGas).
130
130
  */
131
131
  estimateFeesPerGas?:
132
- | ((
133
- args: ChainEstimateFeesPerGasFnParameters<formatters>,
134
- ) => Promise<EstimateFeesPerGasReturnType>)
132
+ | ChainEstimateFeesPerGasFn<formatters>
135
133
  | bigint
136
134
  | undefined
137
135
  }
138
136
 
137
+ export type ChainEstimateFeesPerGasFn<
138
+ formatters extends ChainFormatters | undefined = ChainFormatters | undefined,
139
+ > = (
140
+ args: ChainEstimateFeesPerGasFnParameters<formatters>,
141
+ ) => Promise<EstimateFeesPerGasReturnType | null>
142
+
139
143
  export type ChainFormatters = {
140
144
  /** Modifies how the Block structure is formatted & typed. */
141
145
  block?: ChainFormatter<'block'> | undefined