@evaafi/sdk 0.9.0-a → 0.9.1
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/dist/api/feeds.d.ts +15 -24
- package/dist/api/feeds.js +22 -49
- package/dist/api/math.d.ts +1 -1
- package/dist/api/math.js +55 -38
- package/dist/api/parser.d.ts +2 -2
- package/dist/api/parser.js +3 -3
- package/dist/api/parsers/PythOracleParser.d.ts +3 -3
- package/dist/api/parsers/PythOracleParser.js +2 -1
- package/dist/api/prices.js +2 -1
- package/dist/constants/general/index.d.ts +25 -11
- package/dist/constants/general/index.js +15 -1
- package/dist/constants/pools/mainnet.js +20 -18
- package/dist/constants/pools/testnet.js +14 -6
- package/dist/contracts/AbstractMaster.d.ts +239 -127
- package/dist/contracts/AbstractMaster.js +101 -16
- package/dist/contracts/ClassicMaster.d.ts +12 -12
- package/dist/contracts/PythMaster.d.ts +40 -24
- package/dist/contracts/PythMaster.js +61 -76
- package/dist/contracts/PythOracle.d.ts +16 -0
- package/dist/contracts/PythOracle.js +19 -0
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.js +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/{prices → oracles}/Types.d.ts +0 -4
- package/dist/oracles/collectors/AbstractCollector.d.ts +10 -0
- package/dist/oracles/collectors/AbstractCollector.js +6 -0
- package/dist/oracles/collectors/ClassicCollector.d.ts +22 -0
- package/dist/oracles/collectors/ClassicCollector.js +192 -0
- package/dist/oracles/collectors/PythCollector.d.ts +27 -0
- package/dist/oracles/collectors/PythCollector.js +252 -0
- package/dist/oracles/collectors/index.d.ts +3 -0
- package/dist/oracles/collectors/index.js +19 -0
- package/dist/{prices → oracles}/index.d.ts +2 -3
- package/dist/{prices → oracles}/index.js +2 -3
- package/dist/oracles/prices/AbstractPrices.d.ts +33 -0
- package/dist/oracles/prices/AbstractPrices.js +40 -0
- package/dist/oracles/prices/ClassicPrices.d.ts +19 -0
- package/dist/oracles/prices/ClassicPrices.js +48 -0
- package/dist/oracles/prices/PythPrices.d.ts +18 -0
- package/dist/oracles/prices/PythPrices.js +32 -0
- package/dist/oracles/prices/index.d.ts +3 -0
- package/dist/oracles/prices/index.js +19 -0
- package/dist/{prices → oracles}/utils.d.ts +6 -1
- package/dist/{prices → oracles}/utils.js +10 -1
- package/dist/types/Master.d.ts +4 -5
- package/package.json +2 -3
- package/src/api/feeds.ts +24 -60
- package/src/api/math.ts +118 -90
- package/src/api/parser.ts +5 -5
- package/src/api/parsers/PythOracleParser.ts +6 -2
- package/src/api/prices.ts +2 -1
- package/src/constants/general/index.ts +16 -1
- package/src/constants/pools/mainnet.ts +20 -35
- package/src/constants/pools/testnet.ts +17 -8
- package/src/contracts/AbstractMaster.ts +272 -144
- package/src/contracts/ClassicMaster.ts +12 -12
- package/src/contracts/PythMaster.ts +130 -123
- package/src/contracts/PythOracle.ts +20 -0
- package/src/contracts/index.ts +2 -0
- package/src/index.ts +1 -1
- package/src/{prices → oracles}/Types.ts +0 -5
- package/src/oracles/collectors/AbstractCollector.ts +22 -0
- package/src/oracles/collectors/ClassicCollector.ts +263 -0
- package/src/oracles/collectors/PythCollector.ts +358 -0
- package/src/oracles/collectors/index.ts +3 -0
- package/src/{prices → oracles}/index.ts +2 -3
- package/src/oracles/prices/AbstractPrices.ts +59 -0
- package/src/oracles/prices/ClassicPrices.ts +52 -0
- package/src/oracles/prices/PythPrices.ts +40 -0
- package/src/oracles/prices/index.ts +3 -0
- package/src/{prices → oracles}/utils.ts +12 -1
- package/src/types/Master.ts +4 -6
- package/dist/prices/Oracle.interface.d.ts +0 -9
- package/dist/prices/Oracle.interface.js +0 -2
- package/dist/prices/Prices.d.ts +0 -11
- package/dist/prices/Prices.js +0 -53
- package/dist/prices/PricesCollector.d.ts +0 -22
- package/dist/prices/PricesCollector.js +0 -146
- package/dist/prices/PythCollector.d.ts +0 -22
- package/dist/prices/PythCollector.js +0 -217
- package/src/prices/Oracle.interface.ts +0 -18
- package/src/prices/Prices.ts +0 -45
- package/src/prices/PricesCollector.ts +0 -169
- package/src/prices/PythCollector.ts +0 -294
- /package/dist/{prices → oracles}/Types.js +0 -0
- /package/dist/{prices → oracles}/constants.d.ts +0 -0
- /package/dist/{prices → oracles}/constants.js +0 -0
- /package/dist/{prices → oracles}/sources/Backend.d.ts +0 -0
- /package/dist/{prices → oracles}/sources/Backend.js +0 -0
- /package/dist/{prices → oracles}/sources/Icp.d.ts +0 -0
- /package/dist/{prices → oracles}/sources/Icp.js +0 -0
- /package/dist/{prices → oracles}/sources/PriceSource.d.ts +0 -0
- /package/dist/{prices → oracles}/sources/PriceSource.js +0 -0
- /package/dist/{prices → oracles}/sources/index.d.ts +0 -0
- /package/dist/{prices → oracles}/sources/index.js +0 -0
- /package/src/{prices → oracles}/constants.ts +0 -0
- /package/src/{prices → oracles}/sources/Backend.ts +0 -0
- /package/src/{prices → oracles}/sources/Icp.ts +0 -0
- /package/src/{prices → oracles}/sources/PriceSource.ts +0 -0
- /package/src/{prices → oracles}/sources/index.ts +0 -0
|
@@ -1,15 +1,7 @@
|
|
|
1
|
+
import { HexString } from '@pythnetwork/hermes-client';
|
|
1
2
|
import { Address, Dictionary } from '@ton/core';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
EVAA_TSTON_PRICE_FEED_ID,
|
|
5
|
-
EVAA_TSUSDE_PRICE_FEED_ID,
|
|
6
|
-
packConnectedFeeds,
|
|
7
|
-
PYTH_TON_PRICE_FEED_ID,
|
|
8
|
-
PYTH_TSTON_PRICE_FEED_ID,
|
|
9
|
-
PYTH_TSUSDE_PRICE_FEED_ID,
|
|
10
|
-
PYTH_USDT_PRICE_FEED_ID,
|
|
11
|
-
} from '../../api/feeds';
|
|
12
|
-
import { DefaultPythPriceSourcesConfig, PricesCollector, PythCollector } from '../../prices';
|
|
3
|
+
import { FEED_ID, FeedMapItem } from '../../api/feeds';
|
|
4
|
+
import { ClassicCollector, DefaultPythPriceSourcesConfig, PythCollector } from '../../oracles';
|
|
13
5
|
import { PoolConfig } from '../../types/Master';
|
|
14
6
|
import { EvaaRewardsConfig } from '../../types/MasterRewards';
|
|
15
7
|
import {
|
|
@@ -85,21 +77,16 @@ export const MAINNET_POOL_CONFIG: PoolConfig = {
|
|
|
85
77
|
masterAddress: EVAA_MASTER_MAINNET,
|
|
86
78
|
masterVersion: MAINNET_VERSION,
|
|
87
79
|
masterConstants: MASTER_CONSTANTS,
|
|
88
|
-
|
|
80
|
+
collector: new PythCollector({
|
|
89
81
|
pythConfig: DefaultPythPriceSourcesConfig,
|
|
90
82
|
poolAssetsConfig: MAINNET_POOL_ASSETS_CONFIG,
|
|
91
83
|
pythOracle: {
|
|
92
|
-
feedsMap:
|
|
93
|
-
.
|
|
94
|
-
.
|
|
95
|
-
.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
)
|
|
99
|
-
.set(
|
|
100
|
-
BigInt(PYTH_TSUSDE_PRICE_FEED_ID),
|
|
101
|
-
packConnectedFeeds(EVAA_TSUSDE_PRICE_FEED_ID, BigInt(PYTH_USDT_PRICE_FEED_ID)),
|
|
102
|
-
),
|
|
84
|
+
feedsMap: new Map<HexString, FeedMapItem>([
|
|
85
|
+
[FEED_ID.TON, { assetId: ASSET_ID.TON, feedId: '0x0' }],
|
|
86
|
+
[FEED_ID.USDT, { assetId: ASSET_ID.USDT, feedId: '0x0' }],
|
|
87
|
+
[FEED_ID.tsTON, { assetId: ASSET_ID.tsTON, feedId: FEED_ID.TON }],
|
|
88
|
+
[FEED_ID.tsUSDe, { assetId: ASSET_ID.tsUSDe, feedId: FEED_ID.USDT }],
|
|
89
|
+
]),
|
|
103
90
|
pythAddress: PYTH_ORACLE_MAINNET,
|
|
104
91
|
allowedRefTokens: Dictionary.empty<bigint, bigint>()
|
|
105
92
|
.set(ASSET_ID.jUSDT, ASSET_ID.USDT)
|
|
@@ -116,7 +103,7 @@ export const MAINNET_STABLE_POOL_CONFIG: PoolConfig = {
|
|
|
116
103
|
masterAddress: EVAA_STABLE_MAINNET,
|
|
117
104
|
masterVersion: STABLE_VERSION,
|
|
118
105
|
masterConstants: MASTER_CONSTANTS,
|
|
119
|
-
|
|
106
|
+
collector: new ClassicCollector({
|
|
120
107
|
poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
121
108
|
minimalOracles: 3,
|
|
122
109
|
evaaOracles: ORACLES_MAINNET,
|
|
@@ -129,7 +116,7 @@ export const MAINNET_LP_POOL_CONFIG: PoolConfig = {
|
|
|
129
116
|
masterAddress: EVAA_LP_MAINNET,
|
|
130
117
|
masterVersion: EVAA_LP_MAINNET_VERSION,
|
|
131
118
|
masterConstants: MASTER_CONSTANTS,
|
|
132
|
-
|
|
119
|
+
collector: new ClassicCollector({
|
|
133
120
|
poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
134
121
|
minimalOracles: 3,
|
|
135
122
|
evaaOracles: ORACLES_LP,
|
|
@@ -142,7 +129,7 @@ export const MAINNET_ALTS_POOL_CONFIG: PoolConfig = {
|
|
|
142
129
|
masterAddress: EVAA_ALTS_MAINNET,
|
|
143
130
|
masterVersion: EVAA_ALTS_MAINNET_VERSION,
|
|
144
131
|
masterConstants: MASTER_CONSTANTS,
|
|
145
|
-
|
|
132
|
+
collector: new ClassicCollector({
|
|
146
133
|
poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
147
134
|
minimalOracles: 3,
|
|
148
135
|
evaaOracles: ORACLES_ALTS,
|
|
@@ -157,18 +144,16 @@ export const MAINNET_PYTH_V8_TOB_POOL_CONFIG: PoolConfig = {
|
|
|
157
144
|
masterAddress: EVAA_PYTH_TOB_MAINNET,
|
|
158
145
|
masterVersion: EVAA_PYTH_TOB_VERSION,
|
|
159
146
|
masterConstants: MASTER_CONSTANTS,
|
|
160
|
-
|
|
147
|
+
collector: new PythCollector({
|
|
161
148
|
pythConfig: DefaultPythPriceSourcesConfig,
|
|
162
149
|
poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
|
|
163
150
|
pythOracle: {
|
|
164
|
-
feedsMap:
|
|
165
|
-
.
|
|
166
|
-
.
|
|
151
|
+
feedsMap: new Map<HexString, FeedMapItem>([
|
|
152
|
+
[FEED_ID.TON, { assetId: ASSET_ID.TON, feedId: '0x0' }],
|
|
153
|
+
[FEED_ID.USDT, { assetId: ASSET_ID.USDT, feedId: '0x0' }],
|
|
154
|
+
]),
|
|
167
155
|
pythAddress: PYTH_ORACLE_MAINNET,
|
|
168
|
-
allowedRefTokens: Dictionary.empty<bigint, bigint>().set(
|
|
169
|
-
BigInt(EVAA_JUSDT_PRICE_FEED_ID),
|
|
170
|
-
BigInt(ASSET_ID.USDT),
|
|
171
|
-
),
|
|
156
|
+
allowedRefTokens: Dictionary.empty<bigint, bigint>().set(ASSET_ID.jUSDT, ASSET_ID.USDT),
|
|
172
157
|
},
|
|
173
158
|
}),
|
|
174
159
|
poolAssetsConfig: MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG,
|
|
@@ -181,7 +166,7 @@ export const MAINNET_V8_TOB_POOL_CONFIG: PoolConfig = {
|
|
|
181
166
|
masterAddress: EVAA_TOB_MAINNET,
|
|
182
167
|
masterVersion: EVAA_TOB_VERSION,
|
|
183
168
|
masterConstants: MASTER_CONSTANTS,
|
|
184
|
-
|
|
169
|
+
collector: new ClassicCollector({
|
|
185
170
|
poolAssetsConfig: MAINNET_V8_TOB_POOL_ASSETS_CONFIG,
|
|
186
171
|
minimalOracles: 3,
|
|
187
172
|
evaaOracles: ORACLES_MAINNET,
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { HexString } from '@pythnetwork/hermes-client';
|
|
2
|
+
import { Address, Dictionary } from '@ton/core';
|
|
3
|
+
import { FEED_ID, FeedMapItem } from '../../api/feeds';
|
|
4
|
+
import { ClassicCollector, DefaultPythPriceSourcesConfig, PythCollector } from '../../oracles';
|
|
4
5
|
import { PoolConfig } from '../../types/Master';
|
|
5
6
|
import { EvaaRewardsConfig } from '../../types/MasterRewards';
|
|
6
|
-
import { EUSDT_TESTNET, JUSDC_TESTNET, TON_TESTNET } from '../assets';
|
|
7
|
+
import { ASSET_ID, EUSDT_TESTNET, JUSDC_TESTNET, TON_TESTNET } from '../assets';
|
|
7
8
|
import {
|
|
8
9
|
EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
|
|
9
10
|
EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
|
|
@@ -26,12 +27,20 @@ export const TESTNET_PYTH_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
|
|
|
26
27
|
masterAddress: EVAA_MASTER_TESTNET_PYTH_TOB_AUDITED,
|
|
27
28
|
masterVersion: TESTNET_PYTH_VERSION_TOB_AUDITED,
|
|
28
29
|
masterConstants: MASTER_CONSTANTS,
|
|
29
|
-
|
|
30
|
+
collector: new PythCollector({
|
|
30
31
|
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG_TOB_AUDITED,
|
|
31
32
|
pythOracle: {
|
|
32
|
-
feedsMap:
|
|
33
|
+
feedsMap: new Map<HexString, FeedMapItem>([
|
|
34
|
+
[
|
|
35
|
+
FEED_ID.TON,
|
|
36
|
+
{
|
|
37
|
+
assetId: ASSET_ID.TON,
|
|
38
|
+
feedId: '0x0',
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
]),
|
|
33
42
|
pythAddress: PYTH_ORACLE_TESTNET,
|
|
34
|
-
allowedRefTokens:
|
|
43
|
+
allowedRefTokens: Dictionary.empty<bigint, bigint>().set(ASSET_ID.jUSDT, ASSET_ID.USDT),
|
|
35
44
|
},
|
|
36
45
|
pythConfig: DefaultPythPriceSourcesConfig,
|
|
37
46
|
}),
|
|
@@ -43,7 +52,7 @@ export const TESTNET_CLASSIC_POOL_CONFIG_TOB_AUDITED: PoolConfig = {
|
|
|
43
52
|
masterAddress: EVAA_MASTER_TESTNET_CLASSIC_TOB_AUDITED,
|
|
44
53
|
masterVersion: TESTNET_CLASSIC_TOB_AUDITED,
|
|
45
54
|
masterConstants: MASTER_CONSTANTS,
|
|
46
|
-
|
|
55
|
+
collector: new ClassicCollector({
|
|
47
56
|
poolAssetsConfig: TESTNET_POOL_ASSETS_CONFIG,
|
|
48
57
|
minimalOracles: 3,
|
|
49
58
|
evaaOracles: ORACLES_TESTNET,
|