@exodus/solana-api 3.26.2 → 3.26.3
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 +10 -0
- package/package.json +2 -2
- package/src/create-unsigned-tx-for-send.js +6 -11
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
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
|
+
## [3.26.3](https://github.com/ExodusMovement/assets/compare/@exodus/solana-api@3.26.2...@exodus/solana-api@3.26.3) (2025-12-19)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
* fix: solana reduce fee payer sponsorship requests (#7147)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
6
16
|
## [3.26.2](https://github.com/ExodusMovement/assets/compare/@exodus/solana-api@3.26.1...@exodus/solana-api@3.26.2) (2025-12-15)
|
|
7
17
|
|
|
8
18
|
**Note:** Version bump only for package @exodus/solana-api
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exodus/solana-api",
|
|
3
|
-
"version": "3.26.
|
|
3
|
+
"version": "3.26.3",
|
|
4
4
|
"description": "Transaction monitors, fee monitors, RPC with the blockchain node, and other networking code for Solana",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/index.js",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@exodus/assets-testing": "^1.0.0",
|
|
50
50
|
"@exodus/solana-web3.js": "^1.63.1-exodus.9-rc3"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "ae424af3e4254f05509527496806913d56e39aca",
|
|
53
53
|
"bugs": {
|
|
54
54
|
"url": "https://github.com/ExodusMovement/assets/issues?q=is%3Aissue+is%3Aopen+label%3Asolana-api"
|
|
55
55
|
},
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createUnsignedTx,
|
|
3
|
-
deserializeTransaction,
|
|
4
3
|
findAssociatedTokenAddress,
|
|
5
4
|
parseTxBuffer,
|
|
6
5
|
prepareForSigning,
|
|
@@ -181,20 +180,18 @@ export const createTxFactory = ({ assetClientInterface, api, feePayerClient }) =
|
|
|
181
180
|
...magicEdenParams,
|
|
182
181
|
})
|
|
183
182
|
|
|
183
|
+
unsignedTx.txMeta.stakingParams = stakingParams
|
|
184
|
+
|
|
184
185
|
const resolveUnitConsumed = async () => {
|
|
185
186
|
// this avoids unnecessary simulations. Also the simulation fails with InsufficientFundsForRent when sending all.
|
|
186
187
|
if (asset.name === asset.baseAsset.name && amount && !nft && !method) {
|
|
187
188
|
return 150 + CU_FOR_COMPUTE_BUDGET_INSTRUCTIONS
|
|
188
189
|
}
|
|
189
190
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
})
|
|
195
|
-
const message = transactionForFeeEstimation.txMeta.usedFeePayer
|
|
196
|
-
? deserializeTransaction(transactionForFeeEstimation.txData.transactionBuffer).message
|
|
197
|
-
: prepareForSigning(transactionForFeeEstimation).message
|
|
191
|
+
// Simulate with unsigned transaction. The fee payer service is deterministic -
|
|
192
|
+
// same input always produces same output. Any variance from SetAuthority
|
|
193
|
+
// instructions added by fee payer is covered by computeUnitsMultiplier.
|
|
194
|
+
const { message } = prepareForSigning(unsignedTx)
|
|
198
195
|
|
|
199
196
|
const { unitsConsumed, err } = await api.simulateUnsignedTransaction({
|
|
200
197
|
message,
|
|
@@ -218,8 +215,6 @@ export const createTxFactory = ({ assetClientInterface, api, feePayerClient }) =
|
|
|
218
215
|
unsignedTx.txData.computeUnits = computeUnits
|
|
219
216
|
}
|
|
220
217
|
|
|
221
|
-
unsignedTx.txMeta.stakingParams = stakingParams
|
|
222
|
-
|
|
223
218
|
// we add token account creation fee
|
|
224
219
|
let tokenCreationFee = asset.feeAsset.currency.ZERO
|
|
225
220
|
if (isToken && (!unsignedTx.txData.isAssociatedTokenAccountActive || isExchange)) {
|