@exodus/ethereum-api 8.51.0 → 8.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,26 @@
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.53.0](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.52.0...@exodus/ethereum-api@8.53.0) (2025-09-29)
7
+
8
+
9
+ ### Features
10
+
11
+
12
+ * feat: support delisted EVM assets (#6558)
13
+
14
+
15
+
16
+ ## [8.52.0](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.51.0...@exodus/ethereum-api@8.52.0) (2025-09-26)
17
+
18
+
19
+ ### Features
20
+
21
+
22
+ * feat(ethereum): use methodId in new staking txs shape (#6335)
23
+
24
+
25
+
6
26
  ## [8.51.0](https://github.com/ExodusMovement/assets/compare/@exodus/ethereum-api@8.50.1...@exodus/ethereum-api@8.51.0) (2025-09-25)
7
27
 
8
28
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exodus/ethereum-api",
3
- "version": "8.51.0",
3
+ "version": "8.53.0",
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",
@@ -28,7 +28,7 @@
28
28
  "@exodus/bip44-constants": "^195.0.0",
29
29
  "@exodus/crypto": "^1.0.0-rc.26",
30
30
  "@exodus/currency": "^6.0.1",
31
- "@exodus/ethereum-lib": "^5.17.0",
31
+ "@exodus/ethereum-lib": "^5.18.0",
32
32
  "@exodus/ethereum-meta": "^2.9.1",
33
33
  "@exodus/ethereumholesky-meta": "^2.0.5",
34
34
  "@exodus/ethereumjs": "^1.8.0",
@@ -66,5 +66,5 @@
66
66
  "type": "git",
67
67
  "url": "git+https://github.com/ExodusMovement/assets.git"
68
68
  },
69
- "gitHead": "a5a5ca09ab04597193c9243306a884df16bdab8b"
69
+ "gitHead": "ca44b5450adb1a87f2be955427464fae778a503d"
70
70
  }
@@ -68,6 +68,7 @@ export const createAssetFactory = ({
68
68
  rpcBalanceAssetNames = [],
69
69
  supportsCustomFees: defaultSupportsCustomFees = false,
70
70
  useAbsoluteBalanceAndNonce = false,
71
+ delisted = false,
71
72
  }) => {
72
73
  assert(assetsList, 'assetsList is required')
73
74
  assert(providedFeeData || feeDataConfig, 'feeData or feeDataConfig is required')
@@ -189,6 +190,7 @@ export const createAssetFactory = ({
189
190
  signMessageWithSigner: true,
190
191
  supportsCustomFees,
191
192
  ...(supportsStaking && { staking: {} }),
193
+ ...(delisted && { delisted }),
192
194
  }
193
195
 
194
196
  const stakingAssetNames = Object.keys(stakingConfiguration)
@@ -41,6 +41,7 @@ export const getOptimisticTxLogEffects = async ({
41
41
  toAddress,
42
42
  tipGasPrice: maybeTipGasPrice,
43
43
  walletAccount,
44
+ methodId,
44
45
  }) => {
45
46
  assert(isNumberUnit(amount), 'expected NumberUnit amount')
46
47
  assert(asset, 'expected asset')
@@ -89,6 +90,7 @@ export const getOptimisticTxLogEffects = async ({
89
90
  replacedTxId,
90
91
  nonce,
91
92
  ...(maybeTipGasPrice ? { tipGasPrice: maybeTipGasPrice.toBaseString() } : null),
93
+ ...(methodId ? { methodId } : null),
92
94
  },
93
95
  }
94
96
 
@@ -1,4 +1,5 @@
1
1
  import { normalizeTxId, parseUnsignedTx, updateNonce } from '@exodus/ethereum-lib'
2
+ import { bufferToHex } from '@exodus/ethereumjs/util'
2
3
  import assert from 'minimalistic-assert'
3
4
 
4
5
  import * as ErrorWrapper from '../error-wrapper.js'
@@ -49,6 +50,7 @@ const txSendFactory = ({ assetClientInterface, createTx }) => {
49
50
  const gasLimit = parsedTx.gasLimit
50
51
  const amount = parsedTx.amount
51
52
  const toAddress = parsedTx.to
53
+ const data = parsedTx.data
52
54
 
53
55
  // unknown data from buffer...
54
56
  const fromAddress = unsignedTx.txMeta.fromAddress
@@ -142,6 +144,8 @@ const txSendFactory = ({ assetClientInterface, createTx }) => {
142
144
  }
143
145
  }
144
146
 
147
+ const methodId = data ? bufferToHex(data).slice(0, 10) : undefined
148
+
145
149
  const { optimisticTxLogEffects } = await getOptimisticTxLogEffects({
146
150
  amount,
147
151
  asset,
@@ -154,6 +158,7 @@ const txSendFactory = ({ assetClientInterface, createTx }) => {
154
158
  toAddress,
155
159
  tipGasPrice,
156
160
  walletAccount,
161
+ methodId,
157
162
  })
158
163
 
159
164
  // NOTE: `optimisticTxLogEffects` **must** be written sequentially.