@exodus/solana-api 2.5.20 → 2.5.22
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/package.json +3 -3
- package/src/fee-monitor.js +1 -0
- package/src/tx-log/solana-monitor.js +11 -3
- package/lib/account-state.js +0 -48
- package/lib/api.js +0 -1161
- package/lib/connection.js +0 -262
- package/lib/index.js +0 -68
- package/lib/pay/fetchTransaction.js +0 -157
- package/lib/pay/index.js +0 -57
- package/lib/pay/parseURL.js +0 -120
- package/lib/pay/prepareSendData.js +0 -38
- package/lib/pay/validateBeforePay.js +0 -44
- package/lib/tx-log/index.js +0 -18
- package/lib/tx-log/solana-monitor.js +0 -354
- package/src/__tests__/api.test.js +0 -286
- package/src/__tests__/assets.js +0 -7
- package/src/__tests__/fixtures.js +0 -3166
- package/src/__tests__/index.test.js +0 -7
- package/src/__tests__/staking.test.js +0 -85
- package/src/__tests__/token.test.js +0 -374
- package/src/__tests__/ws.test.js +0 -74
- package/src/tx-log/__tests__/solana-monitor-api-mock.js +0 -353
- package/src/tx-log/__tests__/solana-monitor.integration.test.js +0 -119
- package/src/tx-log/__tests__/solana-monitor.test.js +0 -132
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exodus/solana-api",
|
|
3
|
-
"version": "2.5.
|
|
3
|
+
"version": "2.5.22",
|
|
4
4
|
"description": "Exodus internal Solana asset API wrapper",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"files": [
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"@exodus/models": "^10.1.0",
|
|
24
24
|
"@exodus/nfts-core": "^0.5.0",
|
|
25
25
|
"@exodus/simple-retry": "^0.0.6",
|
|
26
|
-
"@exodus/solana-lib": "^1.
|
|
26
|
+
"@exodus/solana-lib": "^1.7.1",
|
|
27
27
|
"@exodus/solana-meta": "^1.0.3",
|
|
28
28
|
"bn.js": "^4.11.0",
|
|
29
29
|
"debug": "^4.1.1",
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@exodus/assets-testing": "file:../../../__testing__"
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "c0a8ca34924dc74d81ea0b339aa0909062c79d1a"
|
|
38
38
|
}
|
package/src/fee-monitor.js
CHANGED
|
@@ -34,7 +34,11 @@ export class SolanaMonitor extends BaseMonitor {
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
async startListener({ walletAccount }) {
|
|
37
|
-
const address = await this.aci.getReceiveAddress({
|
|
37
|
+
const address = await this.aci.getReceiveAddress({
|
|
38
|
+
assetName: this.asset.name,
|
|
39
|
+
walletAccount,
|
|
40
|
+
useCache: true,
|
|
41
|
+
})
|
|
38
42
|
return this.api.watchAddress({
|
|
39
43
|
address,
|
|
40
44
|
/*
|
|
@@ -50,7 +54,11 @@ export class SolanaMonitor extends BaseMonitor {
|
|
|
50
54
|
}
|
|
51
55
|
|
|
52
56
|
async stopListener({ walletAccount }) {
|
|
53
|
-
const address = await this.aci.getReceiveAddress({
|
|
57
|
+
const address = await this.aci.getReceiveAddress({
|
|
58
|
+
assetName: this.asset.name,
|
|
59
|
+
walletAccount,
|
|
60
|
+
useCache: true,
|
|
61
|
+
})
|
|
54
62
|
return this.api.unwatchAddress({ address })
|
|
55
63
|
}
|
|
56
64
|
|
|
@@ -93,7 +101,7 @@ export class SolanaMonitor extends BaseMonitor {
|
|
|
93
101
|
this.api.setTokens(this.assets)
|
|
94
102
|
|
|
95
103
|
const accountState = await this.aci.getAccountState({ assetName, walletAccount })
|
|
96
|
-
const address = await this.aci.getReceiveAddress({ assetName, walletAccount })
|
|
104
|
+
const address = await this.aci.getReceiveAddress({ assetName, walletAccount, useCache: true })
|
|
97
105
|
const stakingAddresses = await this.getStakingAddressesFromTxLog({ assetName, walletAccount })
|
|
98
106
|
|
|
99
107
|
const { logItemsByAsset, hasNewTxs, cursorState } = await this.getHistory({
|
package/lib/account-state.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.SolanaAccountState = void 0;
|
|
7
|
-
|
|
8
|
-
var _assets = _interopRequireDefault(require("@exodus/assets"));
|
|
9
|
-
|
|
10
|
-
var _models = require("@exodus/models");
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
const asset = _assets.default.solana;
|
|
15
|
-
const solTokens = Object.values(_assets.default).filter(asset => asset.assetType === 'SOLANA_TOKEN');
|
|
16
|
-
|
|
17
|
-
class SolanaAccountState extends _models.AccountState {
|
|
18
|
-
// deprecated - will be removed
|
|
19
|
-
static _postParse(data) {
|
|
20
|
-
return { ...data,
|
|
21
|
-
tokenBalances: {}
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
exports.SolanaAccountState = SolanaAccountState;
|
|
28
|
-
SolanaAccountState.defaults = {
|
|
29
|
-
cursor: '',
|
|
30
|
-
balance: asset.currency.ZERO,
|
|
31
|
-
tokenBalances: {},
|
|
32
|
-
mem: {
|
|
33
|
-
loaded: false,
|
|
34
|
-
staking: {
|
|
35
|
-
// remote-config data
|
|
36
|
-
enabled: true,
|
|
37
|
-
pool: null
|
|
38
|
-
},
|
|
39
|
-
isDelegating: false,
|
|
40
|
-
locked: asset.currency.defaultUnit(0),
|
|
41
|
-
withdrawable: asset.currency.defaultUnit(0),
|
|
42
|
-
pending: asset.currency.defaultUnit(0),
|
|
43
|
-
earned: asset.currency.defaultUnit(0),
|
|
44
|
-
accounts: {} // stake accounts
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
SolanaAccountState._tokens = [asset, ...solTokens];
|