@exodus/ethereum-api 8.33.2 → 8.33.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,24 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [8.33.4](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.33.3...@exodus/ethereum-api@8.33.4) (2025-03-12)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+
12
+ * fix: ensure the tipGasPrice cannot exceed the maxFeePerGas (#5235)
13
+
14
+
15
+
16
+ ## [8.33.3](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.33.2...@exodus/ethereum-api@8.33.3) (2025-03-11)
17
+
18
+ **Note:** Version bump only for package @exodus/ethereum-api
19
+
20
+
21
+
22
+
23
+
6
24
  ## [8.33.2](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.33.1...@exodus/ethereum-api@8.33.2) (2025-03-10)
7
25
 
8
26
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exodus/ethereum-api",
3
- "version": "8.33.2",
3
+ "version": "8.33.4",
4
4
  "description": "Transaction monitors, fee monitors, RPC with the blockchain node, and other networking code for Ethereum and EVM-based blockchains",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -64,5 +64,5 @@
64
64
  "type": "git",
65
65
  "url": "git+https://github.com/ExodusMovement/assets.git"
66
66
  },
67
- "gitHead": "41d13eb347b8624c223888a0e13d6709cd24f932"
67
+ "gitHead": "c13d977ea0c99066b13258271555a74f3b8d3c07"
68
68
  }
package/src/get-fee.js CHANGED
@@ -36,7 +36,12 @@ export const getFeeFactory =
36
36
  }) => {
37
37
  const { eip1559Enabled, baseFeePerGas, tipGasPrice, useBaseGasPrice } = feeData
38
38
 
39
- const gasPrice = customFee || resolveGasPrice({ feeData })
39
+ let gasPrice = customFee || resolveGasPrice({ feeData })
40
+
41
+ // The `gasPrice` must be at least the `tipGasPrice`.
42
+ if (eip1559Enabled && tipGasPrice && gasPrice.lt(tipGasPrice)) {
43
+ gasPrice = tipGasPrice
44
+ }
40
45
 
41
46
  const gasLimit = providedGasLimit || asset.gasLimit || defaultGasLimit
42
47
 
@@ -107,14 +107,14 @@ export function createEthereumStakingService({
107
107
  amount: inactiveAmountToUnstake,
108
108
  })
109
109
 
110
- const { gasLimit, gasPrice, tipGasPrice } = await estimateTxFee(
110
+ const { fee, gasLimit, gasPrice, tipGasPrice } = await estimateTxFee(
111
111
  delegatorAddress,
112
112
  to,
113
113
  null,
114
114
  data
115
115
  )
116
116
 
117
- return { to, txData: data, gasLimit, gasPrice, tipGasPrice }
117
+ return { to, txData: data, gasLimit, gasPrice, tipGasPrice, fee }
118
118
  }
119
119
 
120
120
  async function getUndelegateData({ delegatorAddress, resquestedAmount, pendingAmount }) {
@@ -131,13 +131,14 @@ export function createEthereumStakingService({
131
131
  amount: activeAmountToUnstake,
132
132
  })
133
133
 
134
- const { gasLimit, gasPrice, tipGasPrice } = await estimateTxFee(
134
+ const { fee, gasLimit, gasPrice, tipGasPrice } = await estimateTxFee(
135
135
  delegatorAddress,
136
136
  to,
137
137
  null,
138
138
  data
139
139
  )
140
- return { to, txData: data, gasLimit, gasPrice, tipGasPrice }
140
+
141
+ return { to, txData: data, gasLimit, gasPrice, tipGasPrice, fee }
141
142
  }
142
143
 
143
144
  /**
@@ -355,13 +356,18 @@ export function createEthereumStakingService({
355
356
  EthereumStaking.isDelegationTransactonCalldata(txInput) ? MINIMUM_DELEGATION_GAS_LIMIT : 0
356
357
  )
357
358
 
358
- return getEvmStakingServiceFee({
359
+ const feeData = await getEvmStakingServiceFee({
359
360
  amount,
360
361
  asset,
361
362
  assetClientInterface,
362
363
  maxPriorityFeePerGas: MAX_PRIORITY_FEE_PER_GAS,
363
364
  gasLimit,
364
365
  })
366
+
367
+ return {
368
+ ...feeData,
369
+ gasLimit,
370
+ }
365
371
  }
366
372
 
367
373
  /** Returns the minimum possible amount that can be staked. */