@evaafi/sdk 0.9.1 → 0.9.2
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/constants/assets/assetId.d.ts +3 -1
- package/dist/constants/assets/assetId.js +5 -1
- package/dist/constants/assets/mainnet.d.ts +2 -0
- package/dist/constants/assets/mainnet.js +13 -1
- package/dist/constants/general/mainnet.d.ts +1 -0
- package/dist/constants/general/mainnet.js +2 -1
- package/dist/constants/pools/mainnet.d.ts +4 -0
- package/dist/constants/pools/mainnet.js +25 -10
- package/dist/utils/fivaUtils.d.ts +2 -0
- package/dist/utils/fivaUtils.js +19 -0
- package/dist/utils/userJettonWallet.js +15 -1
- package/package.json +1 -1
- package/src/constants/assets/assetId.ts +7 -1
- package/src/constants/assets/mainnet.ts +24 -0
- package/src/constants/general/mainnet.ts +1 -0
- package/src/constants/pools/mainnet.ts +22 -3
- package/src/utils/fivaUtils.ts +19 -0
- package/src/utils/userJettonWallet.ts +18 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const ASSET_ID: {
|
|
2
|
+
EVAA: bigint;
|
|
2
3
|
TON: bigint;
|
|
3
4
|
USDT: bigint;
|
|
4
5
|
jUSDT: bigint;
|
|
@@ -8,7 +9,6 @@ export declare const ASSET_ID: {
|
|
|
8
9
|
tgBTC: bigint;
|
|
9
10
|
USDe: bigint;
|
|
10
11
|
tsUSDe: bigint;
|
|
11
|
-
PT_tsUSDe_01Sep2025: bigint;
|
|
12
12
|
TONUSDT_DEDUST: bigint;
|
|
13
13
|
TONUSDT_STONFI: bigint;
|
|
14
14
|
TON_STORM: bigint;
|
|
@@ -17,6 +17,8 @@ export declare const ASSET_ID: {
|
|
|
17
17
|
DOGS: bigint;
|
|
18
18
|
CATI: bigint;
|
|
19
19
|
STON: bigint;
|
|
20
|
+
PT_tsUSDe_01Sep2025: bigint;
|
|
21
|
+
PT_tsUSDe_18Dec2025: bigint;
|
|
20
22
|
EUSDT: bigint;
|
|
21
23
|
EUSDC: bigint;
|
|
22
24
|
};
|
|
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ASSET_ID = void 0;
|
|
4
4
|
const sha256BigInt_1 = require("../../utils/sha256BigInt");
|
|
5
5
|
exports.ASSET_ID = {
|
|
6
|
+
EVAA: (0, sha256BigInt_1.sha256Hash)('EVAA'),
|
|
7
|
+
// Main
|
|
6
8
|
TON: (0, sha256BigInt_1.sha256Hash)('TON'),
|
|
7
9
|
USDT: (0, sha256BigInt_1.sha256Hash)('USDT'),
|
|
8
10
|
jUSDT: (0, sha256BigInt_1.sha256Hash)('jUSDT'),
|
|
@@ -12,7 +14,6 @@ exports.ASSET_ID = {
|
|
|
12
14
|
tgBTC: (0, sha256BigInt_1.sha256Hash)('tgBTC'),
|
|
13
15
|
USDe: (0, sha256BigInt_1.sha256Hash)('USDe'),
|
|
14
16
|
tsUSDe: (0, sha256BigInt_1.sha256Hash)('tsUSDe'),
|
|
15
|
-
PT_tsUSDe_01Sep2025: (0, sha256BigInt_1.sha256Hash)('PT_tsUSDe_01Sep2025'),
|
|
16
17
|
// LP
|
|
17
18
|
TONUSDT_DEDUST: (0, sha256BigInt_1.sha256Hash)('TONUSDT_DEDUST'),
|
|
18
19
|
TONUSDT_STONFI: (0, sha256BigInt_1.sha256Hash)('TONUSDT_STONFI'),
|
|
@@ -23,6 +24,9 @@ exports.ASSET_ID = {
|
|
|
23
24
|
DOGS: (0, sha256BigInt_1.sha256Hash)('DOGS'),
|
|
24
25
|
CATI: (0, sha256BigInt_1.sha256Hash)('CATI'),
|
|
25
26
|
STON: (0, sha256BigInt_1.sha256Hash)('STON'),
|
|
27
|
+
// STABLE
|
|
28
|
+
PT_tsUSDe_01Sep2025: (0, sha256BigInt_1.sha256Hash)('PT_tsUSDe_01Sep2025'),
|
|
29
|
+
PT_tsUSDe_18Dec2025: (0, sha256BigInt_1.sha256Hash)('PT_tsUSDe_18Dec2025'),
|
|
26
30
|
// Testnet assets, faucet t.me/evaabuidl
|
|
27
31
|
EUSDT: (0, sha256BigInt_1.sha256Hash)('EUSDT'),
|
|
28
32
|
EUSDC: (0, sha256BigInt_1.sha256Hash)('EUSDC'),
|
|
@@ -15,5 +15,7 @@ export declare const NOT_MAINNET: PoolAssetConfig;
|
|
|
15
15
|
export declare const USDE_MAINNET: PoolAssetConfig;
|
|
16
16
|
export declare const TSUSDE_MAINNET: PoolAssetConfig;
|
|
17
17
|
export declare const PT_tsUSDe_01Sep2025_MAINNET: PoolAssetConfig;
|
|
18
|
+
export declare const PT_tsUSDe_18Dec2025_MAINNET: PoolAssetConfig;
|
|
18
19
|
export declare const TONUSDT_STONFI_MAINNET: PoolAssetConfig;
|
|
19
20
|
export declare const STON_MAINNET: PoolAssetConfig;
|
|
21
|
+
export declare const EVAA_MAINNET: PoolAssetConfig;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.STON_MAINNET = exports.TONUSDT_STONFI_MAINNET = exports.PT_tsUSDe_01Sep2025_MAINNET = exports.TSUSDE_MAINNET = exports.USDE_MAINNET = exports.NOT_MAINNET = exports.DOGS_MAINNET = exports.CATI_MAINNET = exports.USDT_STORM_MAINNET = exports.TON_STORM_MAINNET = exports.TONUSDT_DEDUST_MAINNET = exports.USDT_MAINNET = exports.TSTON_MAINNET = exports.STTON_MAINNET = exports.JUSDC_MAINNET = exports.JUSDT_MAINNET = exports.TON_MAINNET = exports.UNDEFINED_ASSET = void 0;
|
|
3
|
+
exports.EVAA_MAINNET = exports.STON_MAINNET = exports.TONUSDT_STONFI_MAINNET = exports.PT_tsUSDe_18Dec2025_MAINNET = exports.PT_tsUSDe_01Sep2025_MAINNET = exports.TSUSDE_MAINNET = exports.USDE_MAINNET = exports.NOT_MAINNET = exports.DOGS_MAINNET = exports.CATI_MAINNET = exports.USDT_STORM_MAINNET = exports.TON_STORM_MAINNET = exports.TONUSDT_DEDUST_MAINNET = exports.USDT_MAINNET = exports.TSTON_MAINNET = exports.STTON_MAINNET = exports.JUSDC_MAINNET = exports.JUSDT_MAINNET = exports.TON_MAINNET = exports.UNDEFINED_ASSET = void 0;
|
|
4
4
|
const core_1 = require("@ton/core");
|
|
5
5
|
const general_1 = require("../general");
|
|
6
6
|
const assetId_1 = require("./assetId");
|
|
@@ -100,6 +100,12 @@ exports.PT_tsUSDe_01Sep2025_MAINNET = {
|
|
|
100
100
|
jettonMasterAddress: core_1.Address.parse('EQDb90Bss5FnIyq7VMmnG2UeZIzZomQsILw9Hjo1wxaF1df3'),
|
|
101
101
|
jettonWalletCode: core_1.Cell.fromBoc(Buffer.from('b5ee9c7201020f010003c2000114ff00f4a413f4bcf2c80b0102016202030202ce0405001da0f605da89a1f401f481f48061f05504b3420c700925f04e001d0d3030171b08e85135f03db3ce0fa40fa4031fa003171d721fa0031fa003073a9b40002d31f012082100f8a7ea5ba8e85303459db3ce0208210178d4519ba8e8630444403db3ce035248210595f07bcba80607080900114fa4430c000f2e14d800848020d721ed44d0fa00fa40fa403003d31f018200fff0218210178d4519ba0282107bdd97deba12b1f2f4d33f0130fa003012a002c85003fa0201cf1601cf16c9ed5401f403d33f0101fa00fa4021f002ed44d0fa00fa40fa40305125a15219c705f2e2c127c2fff2e2c2f82a5424207054201314c85003fa0201cf1601cf16c922c8cb0112f400f400cb00c920f9007074c8cb02ca07cbffc9d003fa40f40431fa0020d749c200f2e2c4c88210178d451901cb1f500901cb3f5007fa02250a02f4ed44d0fa00fa40fa403007d33f0101fa005141a004fa40fa4053bac705f82a5464e07054201314c85003fa0201cf1601cf16c922c8cb0112f400f400cb00c9f9007074c8cb02ca07cbffc9d0500cc7051bb1f2e2c309fa005197a121951049385f04e30d038208989680b60972fb0224d70b01c30002c20012b00b0c02ce8e843459db3ce06c22ed44d0fa00fa40fa403030312382106d8e5e3cba8e37335222c705f2e2c1820898968070fb02c8801001cb0558cf1670fa027001cb6a8210d53276db01cb1f01d33f013101cb3fc9810082fb00e0038210768a50b2bae3025f03840ff2f00d0e009ccf1601cf1625fa025006cf16c9c8801801cb055003cf1670fa025052775003cb6bcccc2291729171e25007a812a082096e3600a013bcf2e2c503c98040fb0058c85003fa0201cf1601cf16c9ed5400725219a017a1c882107362d09c01cb1f2401cb3f5003fa0201cf165007cf16c9c8801001cb0523cf165005fa0250047158cb6accc971fb00102400748e25c8801001cb055004cf1670fa027001cb6a8210d53276db01cb1f5801cb3fc9810082fb0001926c22e202c85003fa0201cf1601cf16c9ed5400deed44d0fa00fa40fa403006d33f0101fa00fa40305141a15238c705f2e2c126c2fff2e2c2048208d59f80a015bcf2e2c3c882107bdd97de01cb1f500401cb3f58fa0222cf1601cf16c9c8801801cb0524cf1670fa02017158cb6accc98040fb0058c85003fa0201cf1601cf16c9ed5400965222c705f2e2c1d33f0101fa40fa00f40430c8801801cb055003cf1670fa0270c882100f8a7ea501cb1f500501cb3f58fa0224cf165004cf16f40070fa02ca00c97158cb6accc98040fb00', 'hex'))[0],
|
|
102
102
|
};
|
|
103
|
+
exports.PT_tsUSDe_18Dec2025_MAINNET = {
|
|
104
|
+
name: 'PT_tsUSDe_18Dec2025',
|
|
105
|
+
assetId: assetId_1.ASSET_ID.PT_tsUSDe_18Dec2025,
|
|
106
|
+
jettonMasterAddress: core_1.Address.parse('EQBxIkea3baUXLtPVuVaSMsWIkC5S0It3OcM8MeYpPnoEWeM'),
|
|
107
|
+
jettonWalletCode: core_1.Cell.fromBoc(Buffer.from('b5ee9c7201020f010003eb000114ff00f4a413f4bcf2c80b0102016202030202ce0405001da0f605da89a1f401f481f48061f05504b3420c700925f04e001d0d3030171b08e85135f03db3ce0fa40fa4031fa003171d721fa0031fa003073a9b40002d31f012082100f8a7ea5ba8e85303459db3ce0208210178d4519ba8e8630444403db3ce035248210595f07bcba80607080900114fa4430c000f2e14d800848020d721ed44d0fa00fa40fa403003d31f018200fff0218210178d4519ba0282107bdd97deba12b1f2f4d33f0130fa003012a002c85003fa0201cf1601cf16c9ed5401f603d33f0101fa00fa4021f002ed44d0fa00fa40fa40305125a15219c705f2e2c127c2fff2e2c2f82a5424207054201314c85003fa0201cf1601cf16c9227871c8cb00cb04cb0012f400f400cb00c95301fa44318100ffaaf7b001f90084f7b0b17074c8cb02ca07cbffc9d003fa40f40431fa0020d749c200f2e2c40a02f2ed44d0fa00fa40fa403007d33f0101fa005141a004fa40fa40f82a5463d07054201314c85003fa0201cf1601cf16c9227871c8cb00cb04cb0012f400f400cb00c92cfa44318100ffaaf7b001f90084f7b0b17074c8cb02ca07cbffc9d053cbc7050cc7051bb1f2e2c309fa005197a121951049385f04e30d030b0c02ce8e843459db3ce06c22ed44d0fa00fa40fa403030312382106d8e5e3cba8e37335222c705f2e2c1820898968070fb02c8801001cb0558cf1670fa027001cb6a8210d53276db01cb1f01d33f013101cb3fc9810082fb00e0038210768a50b2bae3025f03840ff2f00d0e00c4c88210178d451901cb1f500901cb3f5007fa0225cf1601cf1625fa025006cf16c9c8801801cb055003cf1670fa025052775003cb6bcccc2291729171e25007a812a082096e3600a013bcf2e2c503c98040fb0058c85003fa0201cf1601cf16c9ed5400725219a017a1c882107362d09c01cb1f2401cb3f5003fa0201cf165007cf16c9c8801001cb0523cf165005fa0250047158cb6accc971fb001024009e8208989680b60972fb0224d70b01c30002c20012b08e25c8801001cb055004cf1670fa027001cb6a8210d53276db01cb1f5801cb3fc9810082fb0001926c22e202c85003fa0201cf1601cf16c9ed5400deed44d0fa00fa40fa403006d33f0101fa00fa40305141a15238c705f2e2c126c2fff2e2c2048208d59f80a015bcf2e2c3c882107bdd97de01cb1f500401cb3f58fa0222cf1601cf16c9c8801801cb0524cf1670fa02017158cb6accc98040fb0058c85003fa0201cf1601cf16c9ed5400965222c705f2e2c1d33f0101fa40fa00f40430c8801801cb055003cf1670fa0270c882100f8a7ea501cb1f500501cb3f58fa0224cf165004cf16f40070fa02ca00c97158cb6accc98040fb00', 'hex'))[0],
|
|
108
|
+
};
|
|
103
109
|
exports.TONUSDT_STONFI_MAINNET = {
|
|
104
110
|
name: 'TONUSDT_STONFI',
|
|
105
111
|
assetId: assetId_1.ASSET_ID.TONUSDT_STONFI,
|
|
@@ -112,3 +118,9 @@ exports.STON_MAINNET = {
|
|
|
112
118
|
jettonMasterAddress: core_1.Address.parse('EQA2kCVNwVsil2EM2mB0SkXytxCqQjS4mttjDpnXmwG9T6bO'),
|
|
113
119
|
jettonWalletCode: core_1.Cell.fromBoc(Buffer.from('b5ee9c7201021201000334000114ff00f4a413f4bcf2c80b0102016202030202cc0405001ba0f605da89a1f401f481f481a8610201d40607020148080900c30831c02497c138007434c0c05c6c2544d7c0fc02f83e903e900c7e800c5c75c87e800c7e800c1cea6d0000b4c7e08403e29fa954882ea54c4d167c0238208405e3514654882ea58c511100fc02780d60841657c1ef2ea4d67c02b817c12103fcbc2000113e910c1c2ebcb853600201200a0b020120101101f100f4cffe803e90087c007b51343e803e903e90350c144da8548ab1c17cb8b04a30bffcb8b0950d109c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c032483e401c1d3232c0b281f2fff274013e903d010c7e800835d270803cb8b11de0063232c1540233c59c3e8085f2dac4f3200c03f73b51343e803e903e90350c0234cffe80145468017e903e9014d6f1c1551cdb5c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c0327e401c1d3232c0b281f2fff274140371c1472c7cb8b0c2be80146a2860822625a020822625a004ad8228608239387028062849f8c3c975c2c070c008e00d0e0f00ae8210178d4519c8cb1f19cb3f5007fa0222cf165006cf1625fa025003cf16c95005cc2391729171e25008a813a08208e4e1c0aa008208989680a0a014bcf2e2c504c98040fb001023c85004fa0258cf1601cf16ccc9ed5400705279a018a182107362d09cc8cb1f5230cb3f58fa025007cf165007cf16c9718010c8cb0524cf165006fa0215cb6a14ccc971fb0010241023000e10491038375f040076c200b08e218210d53276db708010c8cb055008cf165004fa0216cb6a12cb1f12cb3fc972fb0093356c21e203c85004fa0258cf1601cf16ccc9ed5400db3b51343e803e903e90350c01f4cffe803e900c145468549271c17cb8b049f0bffcb8b0a0823938702a8005a805af3cb8b0e0841ef765f7b232c7c572cfd400fe8088b3c58073c5b25c60063232c14933c59c3e80b2dab33260103ec01004f214013e809633c58073c5b3327b55200083200835c87b51343e803e903e90350c0134c7e08405e3514654882ea0841ef765f784ee84ac7cb8b174cfcc7e800c04e81408f214013e809633c58073c5b3327b5520', 'hex'))[0],
|
|
114
120
|
};
|
|
121
|
+
exports.EVAA_MAINNET = {
|
|
122
|
+
name: 'EVAA',
|
|
123
|
+
assetId: assetId_1.ASSET_ID.EVAA,
|
|
124
|
+
jettonMasterAddress: core_1.Address.parse('EQBKMfjX_a_dsOLm-juxyVZytFP7_KKnzGv6J01kGc72gVBp'),
|
|
125
|
+
jettonWalletCode: core_1.Cell.fromBoc(Buffer.from('b5ee9c7201021101000323000114ff00f4a413f4bcf2c80b0102016202030202cc0405001ba0f605da89a1f401f481f481a8610201d40607020120080900c30831c02497c138007434c0c05c6c2544d7c0fc03383e903e900c7e800c5c75c87e800c7e800c1cea6d0000b4c7e08403e29fa954882ea54c4d167c0278208405e3514654882ea58c511100fc02b80d60841657c1ef2ea4d67c02f817c12103fcbc2000113e910c1c2ebcb853600201200a0b0083d40106b90f6a2687d007d207d206a1802698fc1080bc6a28ca9105d41083deecbef09dd0958f97162e99f98fd001809d02811e428027d012c678b00e78b6664f6aa401f1503d33ffa00fa4021f001ed44d0fa00fa40fa40d4305136a1522ac705f2e2c128c2fff2e2c254344270542013541403c85004fa0258cf1601cf16ccc922c8cb0112f400f400cb00c920f9007074c8cb02ca07cbffc9d004fa40f40431fa0020d749c200f2e2c4778018c8cb055008cf1670fa0217cb6b13cc80c0201200d0e009e8210178d4519c8cb1f19cb3f5007fa0222cf165006cf1625fa025003cf16c95005cc2391729171e25008a813a08209c9c380a014bcf2e2c504c98040fb001023c85004fa0258cf1601cf16ccc9ed5402f73b51343e803e903e90350c0234cffe80145468017e903e9014d6f1c1551cdb5c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c0327e401c1d3232c0b281f2fff274140371c1472c7cb8b0c2be80146a2860822625a019ad822860822625a028062849e5c412440e0dd7c138c34975c2c0600f1000d73b51343e803e903e90350c01f4cffe803e900c145468549271c17cb8b049f0bffcb8b08160824c4b402805af3cb8b0e0841ef765f7b232c7c572cfd400fe8088b3c58073c5b25c60063232c14933c59c3e80b2dab33260103ec01004f214013e809633c58073c5b3327b552000705279a018a182107362d09cc8cb1f5230cb3f58fa025007cf165007cf16c9718010c8cb0524cf165006fa0215cb6a14ccc971fb0010241023007cc30023c200b08e218210d53276db708010c8cb055008cf165004fa0216cb6a12cb1f12cb3fc972fb0093356c21e203c85004fa0258cf1601cf16ccc9ed54', 'hex'))[0],
|
|
126
|
+
};
|
|
@@ -14,6 +14,7 @@ export declare const EVAA_PYTH_TOB_MAINNET: Address;
|
|
|
14
14
|
export declare const EVAA_PYTH_TOB_VERSION = 0;
|
|
15
15
|
export declare const EVAA_USDT_REWARDS_MASTER_MAINNET: Address;
|
|
16
16
|
export declare const EVAA_TON_REWARDS_MASTER_MAINNET: Address;
|
|
17
|
+
export declare const EVAA_EVAA_REWARDS_MASTER_MAINNET: Address;
|
|
17
18
|
export declare const ORACLES_MAINNET: ExtendedEvaaOracle[];
|
|
18
19
|
export declare const PYTH_ORACLE_MAINNET: Address;
|
|
19
20
|
export declare const ORACLES_LP: ExtendedEvaaOracle[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EVAA_REWARDS_USER_CODE_MAINNET = exports.EVAA_REWARDS_MASTER_CODE_MAINNET = exports.JETTON_WALLET_STANDART_CODE = exports.LENDING_CODE = exports.ORACLES_ALTS = exports.ORACLES_LP = exports.PYTH_ORACLE_MAINNET = exports.ORACLES_MAINNET = exports.EVAA_TON_REWARDS_MASTER_MAINNET = exports.EVAA_USDT_REWARDS_MASTER_MAINNET = exports.EVAA_PYTH_TOB_VERSION = exports.EVAA_PYTH_TOB_MAINNET = exports.EVAA_TOB_VERSION = exports.EVAA_TOB_MAINNET = exports.STABLE_VERSION = exports.EVAA_STABLE_MAINNET = exports.EVAA_ALTS_MAINNET_VERSION = exports.EVAA_ALTS_MAINNET = exports.EVAA_LP_MAINNET_VERSION = exports.EVAA_LP_MAINNET = exports.MAINNET_VERSION = exports.EVAA_MASTER_MAINNET = void 0;
|
|
3
|
+
exports.EVAA_REWARDS_USER_CODE_MAINNET = exports.EVAA_REWARDS_MASTER_CODE_MAINNET = exports.JETTON_WALLET_STANDART_CODE = exports.LENDING_CODE = exports.ORACLES_ALTS = exports.ORACLES_LP = exports.PYTH_ORACLE_MAINNET = exports.ORACLES_MAINNET = exports.EVAA_EVAA_REWARDS_MASTER_MAINNET = exports.EVAA_TON_REWARDS_MASTER_MAINNET = exports.EVAA_USDT_REWARDS_MASTER_MAINNET = exports.EVAA_PYTH_TOB_VERSION = exports.EVAA_PYTH_TOB_MAINNET = exports.EVAA_TOB_VERSION = exports.EVAA_TOB_MAINNET = exports.STABLE_VERSION = exports.EVAA_STABLE_MAINNET = exports.EVAA_ALTS_MAINNET_VERSION = exports.EVAA_ALTS_MAINNET = exports.EVAA_LP_MAINNET_VERSION = exports.EVAA_LP_MAINNET = exports.MAINNET_VERSION = exports.EVAA_MASTER_MAINNET = void 0;
|
|
4
4
|
const core_1 = require("@ton/core");
|
|
5
5
|
/* MAIN POOL */
|
|
6
6
|
exports.EVAA_MASTER_MAINNET = core_1.Address.parse('EQC8rUZqR_pWV1BylWUlPNBzyiTYVoBEmQkMIQDZXICfnuRr');
|
|
@@ -22,6 +22,7 @@ exports.EVAA_PYTH_TOB_MAINNET = core_1.Address.parse('EQCsOdQPDO1Xndzutn9dDclool
|
|
|
22
22
|
exports.EVAA_PYTH_TOB_VERSION = 0;
|
|
23
23
|
exports.EVAA_USDT_REWARDS_MASTER_MAINNET = core_1.Address.parse('EQD22Fhylp1tX-xoVX81aMTSJNPV8j9klwApTLgjGmofISVD');
|
|
24
24
|
exports.EVAA_TON_REWARDS_MASTER_MAINNET = core_1.Address.parse('EQDM_gdrntBg4fy5Rg9DgDF0AUu3FYoqxHEOsHNIC4_DTDuC');
|
|
25
|
+
exports.EVAA_EVAA_REWARDS_MASTER_MAINNET = core_1.Address.parse('EQBLjRyn69hqC9WAVjqjSjF0nnxxWBW-Atx_3T7dCF-tBdnM');
|
|
25
26
|
exports.ORACLES_MAINNET = [
|
|
26
27
|
{
|
|
27
28
|
id: 0,
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { PoolConfig } from '../../types/Master';
|
|
2
2
|
import { EvaaRewardsConfig } from '../../types/MasterRewards';
|
|
3
3
|
export declare const MAINNET_POOL_ASSETS_CONFIG: import("../../types/Master").PoolAssetConfig[];
|
|
4
|
+
export declare const MAINNET_STABLE_POOL_ASSETS_CONFIG: import("../../types/Master").PoolAssetConfig[];
|
|
5
|
+
export declare const MAINNET_LP_POOL_ASSETS_CONFIG: import("../../types/Master").PoolAssetConfig[];
|
|
6
|
+
export declare const MAINNET_ALTS_POOL_ASSETS_CONFIG: import("../../types/Master").PoolAssetConfig[];
|
|
4
7
|
export declare const MAINNET_POOL_CONFIG: PoolConfig;
|
|
5
8
|
export declare const MAINNET_STABLE_POOL_CONFIG: PoolConfig;
|
|
6
9
|
export declare const MAINNET_LP_POOL_CONFIG: PoolConfig;
|
|
@@ -11,4 +14,5 @@ export declare const MAINNET_V8_TOB_POOL_ASSETS_CONFIG: import("../../types/Mast
|
|
|
11
14
|
export declare const MAINNET_V8_TOB_POOL_CONFIG: PoolConfig;
|
|
12
15
|
export declare const MAINNET_MASTER_TON_REWARD_CONFIG: EvaaRewardsConfig;
|
|
13
16
|
export declare const MAINNET_MASTER_USDT_REWARD_CONFIG: EvaaRewardsConfig;
|
|
17
|
+
export declare const MAINNET_MASTER_EVAA_REWARD_CONFIG: EvaaRewardsConfig;
|
|
14
18
|
export declare const ALL_MAINNET_POOLS: PoolConfig[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ALL_MAINNET_POOLS = exports.MAINNET_MASTER_USDT_REWARD_CONFIG = exports.MAINNET_MASTER_TON_REWARD_CONFIG = exports.MAINNET_V8_TOB_POOL_CONFIG = exports.MAINNET_V8_TOB_POOL_ASSETS_CONFIG = exports.MAINNET_PYTH_V8_TOB_POOL_CONFIG = exports.MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG = exports.MAINNET_ALTS_POOL_CONFIG = exports.MAINNET_LP_POOL_CONFIG = exports.MAINNET_STABLE_POOL_CONFIG = exports.MAINNET_POOL_CONFIG = exports.MAINNET_POOL_ASSETS_CONFIG = void 0;
|
|
3
|
+
exports.ALL_MAINNET_POOLS = exports.MAINNET_MASTER_EVAA_REWARD_CONFIG = exports.MAINNET_MASTER_USDT_REWARD_CONFIG = exports.MAINNET_MASTER_TON_REWARD_CONFIG = exports.MAINNET_V8_TOB_POOL_CONFIG = exports.MAINNET_V8_TOB_POOL_ASSETS_CONFIG = exports.MAINNET_PYTH_V8_TOB_POOL_CONFIG = exports.MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG = exports.MAINNET_ALTS_POOL_CONFIG = exports.MAINNET_LP_POOL_CONFIG = exports.MAINNET_STABLE_POOL_CONFIG = exports.MAINNET_POOL_CONFIG = exports.MAINNET_ALTS_POOL_ASSETS_CONFIG = exports.MAINNET_LP_POOL_ASSETS_CONFIG = exports.MAINNET_STABLE_POOL_ASSETS_CONFIG = exports.MAINNET_POOL_ASSETS_CONFIG = void 0;
|
|
4
4
|
const core_1 = require("@ton/core");
|
|
5
5
|
const feeds_1 = require("../../api/feeds");
|
|
6
6
|
const oracles_1 = require("../../oracles");
|
|
@@ -17,8 +17,14 @@ exports.MAINNET_POOL_ASSETS_CONFIG = [
|
|
|
17
17
|
assets_1.USDE_MAINNET,
|
|
18
18
|
assets_1.TSUSDE_MAINNET,
|
|
19
19
|
];
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
exports.MAINNET_STABLE_POOL_ASSETS_CONFIG = [
|
|
21
|
+
assets_1.USDT_MAINNET,
|
|
22
|
+
assets_1.USDE_MAINNET,
|
|
23
|
+
assets_1.TSUSDE_MAINNET,
|
|
24
|
+
assets_1.PT_tsUSDe_01Sep2025_MAINNET,
|
|
25
|
+
assets_1.PT_tsUSDe_18Dec2025_MAINNET,
|
|
26
|
+
];
|
|
27
|
+
exports.MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
22
28
|
assets_1.TON_MAINNET,
|
|
23
29
|
assets_1.USDT_MAINNET,
|
|
24
30
|
assets_1.TONUSDT_DEDUST_MAINNET,
|
|
@@ -26,7 +32,7 @@ const MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
|
26
32
|
assets_1.USDT_STORM_MAINNET,
|
|
27
33
|
assets_1.TONUSDT_STONFI_MAINNET,
|
|
28
34
|
];
|
|
29
|
-
|
|
35
|
+
exports.MAINNET_ALTS_POOL_ASSETS_CONFIG = [assets_1.TON_MAINNET, assets_1.USDT_MAINNET, assets_1.CATI_MAINNET, assets_1.NOT_MAINNET, assets_1.DOGS_MAINNET];
|
|
30
36
|
exports.MAINNET_POOL_CONFIG = {
|
|
31
37
|
masterAddress: general_1.EVAA_MASTER_MAINNET,
|
|
32
38
|
masterVersion: general_1.MAINNET_VERSION,
|
|
@@ -57,11 +63,11 @@ exports.MAINNET_STABLE_POOL_CONFIG = {
|
|
|
57
63
|
masterVersion: general_1.STABLE_VERSION,
|
|
58
64
|
masterConstants: general_1.MASTER_CONSTANTS,
|
|
59
65
|
collector: new oracles_1.ClassicCollector({
|
|
60
|
-
poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
66
|
+
poolAssetsConfig: exports.MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
61
67
|
minimalOracles: 3,
|
|
62
68
|
evaaOracles: general_1.ORACLES_MAINNET,
|
|
63
69
|
}),
|
|
64
|
-
poolAssetsConfig: MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
70
|
+
poolAssetsConfig: exports.MAINNET_STABLE_POOL_ASSETS_CONFIG,
|
|
65
71
|
lendingCode: general_1.LENDING_CODE,
|
|
66
72
|
};
|
|
67
73
|
exports.MAINNET_LP_POOL_CONFIG = {
|
|
@@ -69,11 +75,11 @@ exports.MAINNET_LP_POOL_CONFIG = {
|
|
|
69
75
|
masterVersion: general_1.EVAA_LP_MAINNET_VERSION,
|
|
70
76
|
masterConstants: general_1.MASTER_CONSTANTS,
|
|
71
77
|
collector: new oracles_1.ClassicCollector({
|
|
72
|
-
poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
78
|
+
poolAssetsConfig: exports.MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
73
79
|
minimalOracles: 3,
|
|
74
80
|
evaaOracles: general_1.ORACLES_LP,
|
|
75
81
|
}),
|
|
76
|
-
poolAssetsConfig: MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
82
|
+
poolAssetsConfig: exports.MAINNET_LP_POOL_ASSETS_CONFIG,
|
|
77
83
|
lendingCode: general_1.LENDING_CODE,
|
|
78
84
|
};
|
|
79
85
|
exports.MAINNET_ALTS_POOL_CONFIG = {
|
|
@@ -81,11 +87,11 @@ exports.MAINNET_ALTS_POOL_CONFIG = {
|
|
|
81
87
|
masterVersion: general_1.EVAA_ALTS_MAINNET_VERSION,
|
|
82
88
|
masterConstants: general_1.MASTER_CONSTANTS,
|
|
83
89
|
collector: new oracles_1.ClassicCollector({
|
|
84
|
-
poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
90
|
+
poolAssetsConfig: exports.MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
85
91
|
minimalOracles: 3,
|
|
86
92
|
evaaOracles: general_1.ORACLES_ALTS,
|
|
87
93
|
}),
|
|
88
|
-
poolAssetsConfig: MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
94
|
+
poolAssetsConfig: exports.MAINNET_ALTS_POOL_ASSETS_CONFIG,
|
|
89
95
|
lendingCode: general_1.LENDING_CODE,
|
|
90
96
|
};
|
|
91
97
|
exports.MAINNET_PYTH_V8_TOB_POOL_ASSETS_CONFIG = [assets_1.TON_MAINNET, assets_1.USDT_MAINNET, assets_1.JUSDT_MAINNET];
|
|
@@ -139,6 +145,15 @@ exports.MAINNET_MASTER_USDT_REWARD_CONFIG = {
|
|
|
139
145
|
availableReward: 0,
|
|
140
146
|
publicKey: Buffer.from('9813725d6cead1c9bbc0e24b21d4fc62a7fa8ac4bb01b6758df30169a71dba67', 'hex'), // adminAddress publicKey
|
|
141
147
|
};
|
|
148
|
+
exports.MAINNET_MASTER_EVAA_REWARD_CONFIG = {
|
|
149
|
+
adminAddress: general_1.EVAA_EVAA_REWARDS_MASTER_MAINNET,
|
|
150
|
+
evaaMasterAddress: new core_1.Address(0, Buffer.alloc(32, 0)),
|
|
151
|
+
rewardMasterCode: general_1.EVAA_REWARDS_MASTER_CODE_MAINNET,
|
|
152
|
+
rewardUserCode: general_1.EVAA_REWARDS_USER_CODE_MAINNET,
|
|
153
|
+
asset: assets_1.EVAA_MAINNET,
|
|
154
|
+
availableReward: 0,
|
|
155
|
+
publicKey: Buffer.from('b8eb0e312a9aa6394edceef21573f2d45e7d7a616a924e33190bd52fa31c8bb1', 'hex'), // adminAddress publicKey
|
|
156
|
+
};
|
|
142
157
|
exports.ALL_MAINNET_POOLS = [
|
|
143
158
|
exports.MAINNET_POOL_CONFIG,
|
|
144
159
|
exports.MAINNET_LP_POOL_CONFIG,
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateCloseAddress = void 0;
|
|
4
|
+
const core_1 = require("@ton/core");
|
|
5
|
+
const sha256BigInt_1 = require("./sha256BigInt");
|
|
6
|
+
function calculateCloseAddress(address, closeToAddress) {
|
|
7
|
+
const curHashpart = BigInt('0x' + address.hash.toString('hex'));
|
|
8
|
+
const desiredHashpart = BigInt('0x' + closeToAddress.hash.toString('hex'));
|
|
9
|
+
const rewriteBits = 8;
|
|
10
|
+
const mask = (1n << BigInt(256 - rewriteBits)) - 1n;
|
|
11
|
+
const antimask = invertBigInt(mask, 256);
|
|
12
|
+
const newHashpart = (curHashpart & mask) | (desiredHashpart & antimask);
|
|
13
|
+
return new core_1.Address(0, (0, sha256BigInt_1.bigIntToBuffer)(newHashpart));
|
|
14
|
+
}
|
|
15
|
+
exports.calculateCloseAddress = calculateCloseAddress;
|
|
16
|
+
function invertBigInt(value, bits) {
|
|
17
|
+
const maxValue = (1n << BigInt(bits)) - 1n;
|
|
18
|
+
return value ^ maxValue;
|
|
19
|
+
}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getUserJettonWallet = void 0;
|
|
4
4
|
const core_1 = require("@ton/core");
|
|
5
5
|
const assets_1 = require("../constants/assets");
|
|
6
|
+
const fivaUtils_1 = require("./fivaUtils");
|
|
6
7
|
function getUserJettonData(ownerAddress, assetName, jettonWalletCode, jettonMasterAddress) {
|
|
7
8
|
switch (assetName) {
|
|
8
9
|
case 'DOGS':
|
|
@@ -16,6 +17,7 @@ function getUserJettonData(ownerAddress, assetName, jettonWalletCode, jettonMast
|
|
|
16
17
|
.storeAddress(jettonMasterAddress)
|
|
17
18
|
.endCell();
|
|
18
19
|
case 'PT_tsUSDe_01Sep2025':
|
|
20
|
+
case 'PT_tsUSDe_18Dec2025':
|
|
19
21
|
return (0, core_1.beginCell)()
|
|
20
22
|
.storeCoins(0)
|
|
21
23
|
.storeAddress(ownerAddress)
|
|
@@ -65,12 +67,24 @@ function getUserJettonWallet(ownerAddress, poolAssetConfig) {
|
|
|
65
67
|
jettonWalletCode = new core_1.Cell({ exotic: true, bits: lib_prep.bits, refs: lib_prep.refs });
|
|
66
68
|
}
|
|
67
69
|
const jettonData = getUserJettonData(ownerAddress, assetName, jettonWalletCode, poolAssetConfig.jettonMasterAddress);
|
|
68
|
-
|
|
70
|
+
let stateInit = (0, core_1.beginCell)()
|
|
69
71
|
.store((0, core_1.storeStateInit)({
|
|
70
72
|
code: jettonWalletCode,
|
|
71
73
|
data: jettonData
|
|
72
74
|
}))
|
|
73
75
|
.endCell();
|
|
76
|
+
if (poolAssetConfig.name === 'PT_tsUSDe_18Dec2025') {
|
|
77
|
+
stateInit = (0, core_1.beginCell)()
|
|
78
|
+
.storeUint(1, 1) // fixed_prefix_length
|
|
79
|
+
.storeUint(8, 5) // rewrite_bits
|
|
80
|
+
.storeUint(0, 1) // special (Maybe=0)
|
|
81
|
+
.storeMaybeRef(jettonWalletCode) // code (Maybe)
|
|
82
|
+
.storeMaybeRef(jettonData) // data (Maybe)
|
|
83
|
+
.storeUint(0, 1) // libraries empty
|
|
84
|
+
.endCell();
|
|
85
|
+
const addr = new core_1.Address(0, stateInit.hash());
|
|
86
|
+
return (0, fivaUtils_1.calculateCloseAddress)(addr, poolAssetConfig.jettonMasterAddress);
|
|
87
|
+
}
|
|
74
88
|
return new core_1.Address(0, stateInit.hash());
|
|
75
89
|
}
|
|
76
90
|
exports.getUserJettonWallet = getUserJettonWallet;
|
package/package.json
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { sha256Hash } from '../../utils/sha256BigInt';
|
|
2
2
|
|
|
3
3
|
export const ASSET_ID = {
|
|
4
|
+
EVAA: sha256Hash('EVAA'),
|
|
5
|
+
|
|
6
|
+
// Main
|
|
4
7
|
TON: sha256Hash('TON'),
|
|
5
8
|
USDT: sha256Hash('USDT'),
|
|
6
9
|
jUSDT: sha256Hash('jUSDT'),
|
|
@@ -10,7 +13,6 @@ export const ASSET_ID = {
|
|
|
10
13
|
tgBTC: sha256Hash('tgBTC'),
|
|
11
14
|
USDe: sha256Hash('USDe'),
|
|
12
15
|
tsUSDe: sha256Hash('tsUSDe'),
|
|
13
|
-
PT_tsUSDe_01Sep2025: sha256Hash('PT_tsUSDe_01Sep2025'),
|
|
14
16
|
|
|
15
17
|
// LP
|
|
16
18
|
TONUSDT_DEDUST: sha256Hash('TONUSDT_DEDUST'),
|
|
@@ -24,6 +26,10 @@ export const ASSET_ID = {
|
|
|
24
26
|
CATI: sha256Hash('CATI'),
|
|
25
27
|
STON: sha256Hash('STON'),
|
|
26
28
|
|
|
29
|
+
// STABLE
|
|
30
|
+
PT_tsUSDe_01Sep2025: sha256Hash('PT_tsUSDe_01Sep2025'),
|
|
31
|
+
PT_tsUSDe_18Dec2025: sha256Hash('PT_tsUSDe_18Dec2025'),
|
|
32
|
+
|
|
27
33
|
// Testnet assets, faucet t.me/evaabuidl
|
|
28
34
|
EUSDT: sha256Hash('EUSDT'),
|
|
29
35
|
EUSDC: sha256Hash('EUSDC'),
|
|
@@ -169,6 +169,18 @@ export const PT_tsUSDe_01Sep2025_MAINNET: PoolAssetConfig = {
|
|
|
169
169
|
)[0],
|
|
170
170
|
};
|
|
171
171
|
|
|
172
|
+
export const PT_tsUSDe_18Dec2025_MAINNET: PoolAssetConfig = {
|
|
173
|
+
name: 'PT_tsUSDe_18Dec2025',
|
|
174
|
+
assetId: ASSET_ID.PT_tsUSDe_18Dec2025,
|
|
175
|
+
jettonMasterAddress: Address.parse('EQBxIkea3baUXLtPVuVaSMsWIkC5S0It3OcM8MeYpPnoEWeM'),
|
|
176
|
+
jettonWalletCode: Cell.fromBoc(
|
|
177
|
+
Buffer.from(
|
|
178
|
+
'b5ee9c7201020f010003eb000114ff00f4a413f4bcf2c80b0102016202030202ce0405001da0f605da89a1f401f481f48061f05504b3420c700925f04e001d0d3030171b08e85135f03db3ce0fa40fa4031fa003171d721fa0031fa003073a9b40002d31f012082100f8a7ea5ba8e85303459db3ce0208210178d4519ba8e8630444403db3ce035248210595f07bcba80607080900114fa4430c000f2e14d800848020d721ed44d0fa00fa40fa403003d31f018200fff0218210178d4519ba0282107bdd97deba12b1f2f4d33f0130fa003012a002c85003fa0201cf1601cf16c9ed5401f603d33f0101fa00fa4021f002ed44d0fa00fa40fa40305125a15219c705f2e2c127c2fff2e2c2f82a5424207054201314c85003fa0201cf1601cf16c9227871c8cb00cb04cb0012f400f400cb00c95301fa44318100ffaaf7b001f90084f7b0b17074c8cb02ca07cbffc9d003fa40f40431fa0020d749c200f2e2c40a02f2ed44d0fa00fa40fa403007d33f0101fa005141a004fa40fa40f82a5463d07054201314c85003fa0201cf1601cf16c9227871c8cb00cb04cb0012f400f400cb00c92cfa44318100ffaaf7b001f90084f7b0b17074c8cb02ca07cbffc9d053cbc7050cc7051bb1f2e2c309fa005197a121951049385f04e30d030b0c02ce8e843459db3ce06c22ed44d0fa00fa40fa403030312382106d8e5e3cba8e37335222c705f2e2c1820898968070fb02c8801001cb0558cf1670fa027001cb6a8210d53276db01cb1f01d33f013101cb3fc9810082fb00e0038210768a50b2bae3025f03840ff2f00d0e00c4c88210178d451901cb1f500901cb3f5007fa0225cf1601cf1625fa025006cf16c9c8801801cb055003cf1670fa025052775003cb6bcccc2291729171e25007a812a082096e3600a013bcf2e2c503c98040fb0058c85003fa0201cf1601cf16c9ed5400725219a017a1c882107362d09c01cb1f2401cb3f5003fa0201cf165007cf16c9c8801001cb0523cf165005fa0250047158cb6accc971fb001024009e8208989680b60972fb0224d70b01c30002c20012b08e25c8801001cb055004cf1670fa027001cb6a8210d53276db01cb1f5801cb3fc9810082fb0001926c22e202c85003fa0201cf1601cf16c9ed5400deed44d0fa00fa40fa403006d33f0101fa00fa40305141a15238c705f2e2c126c2fff2e2c2048208d59f80a015bcf2e2c3c882107bdd97de01cb1f500401cb3f58fa0222cf1601cf16c9c8801801cb0524cf1670fa02017158cb6accc98040fb0058c85003fa0201cf1601cf16c9ed5400965222c705f2e2c1d33f0101fa40fa00f40430c8801801cb055003cf1670fa0270c882100f8a7ea501cb1f500501cb3f58fa0224cf165004cf16f40070fa02ca00c97158cb6accc98040fb00',
|
|
179
|
+
'hex',
|
|
180
|
+
),
|
|
181
|
+
)[0],
|
|
182
|
+
};
|
|
183
|
+
|
|
172
184
|
export const TONUSDT_STONFI_MAINNET: PoolAssetConfig = {
|
|
173
185
|
name: 'TONUSDT_STONFI',
|
|
174
186
|
assetId: ASSET_ID.TONUSDT_STONFI,
|
|
@@ -192,3 +204,15 @@ export const STON_MAINNET: PoolAssetConfig = {
|
|
|
192
204
|
),
|
|
193
205
|
)[0],
|
|
194
206
|
};
|
|
207
|
+
|
|
208
|
+
export const EVAA_MAINNET: PoolAssetConfig = {
|
|
209
|
+
name: 'EVAA',
|
|
210
|
+
assetId: ASSET_ID.EVAA,
|
|
211
|
+
jettonMasterAddress: Address.parse('EQBKMfjX_a_dsOLm-juxyVZytFP7_KKnzGv6J01kGc72gVBp'),
|
|
212
|
+
jettonWalletCode: Cell.fromBoc(
|
|
213
|
+
Buffer.from(
|
|
214
|
+
'b5ee9c7201021101000323000114ff00f4a413f4bcf2c80b0102016202030202cc0405001ba0f605da89a1f401f481f481a8610201d40607020120080900c30831c02497c138007434c0c05c6c2544d7c0fc03383e903e900c7e800c5c75c87e800c7e800c1cea6d0000b4c7e08403e29fa954882ea54c4d167c0278208405e3514654882ea58c511100fc02b80d60841657c1ef2ea4d67c02f817c12103fcbc2000113e910c1c2ebcb853600201200a0b0083d40106b90f6a2687d007d207d206a1802698fc1080bc6a28ca9105d41083deecbef09dd0958f97162e99f98fd001809d02811e428027d012c678b00e78b6664f6aa401f1503d33ffa00fa4021f001ed44d0fa00fa40fa40d4305136a1522ac705f2e2c128c2fff2e2c254344270542013541403c85004fa0258cf1601cf16ccc922c8cb0112f400f400cb00c920f9007074c8cb02ca07cbffc9d004fa40f40431fa0020d749c200f2e2c4778018c8cb055008cf1670fa0217cb6b13cc80c0201200d0e009e8210178d4519c8cb1f19cb3f5007fa0222cf165006cf1625fa025003cf16c95005cc2391729171e25008a813a08209c9c380a014bcf2e2c504c98040fb001023c85004fa0258cf1601cf16ccc9ed5402f73b51343e803e903e90350c0234cffe80145468017e903e9014d6f1c1551cdb5c150804d50500f214013e809633c58073c5b33248b232c044bd003d0032c0327e401c1d3232c0b281f2fff274140371c1472c7cb8b0c2be80146a2860822625a019ad822860822625a028062849e5c412440e0dd7c138c34975c2c0600f1000d73b51343e803e903e90350c01f4cffe803e900c145468549271c17cb8b049f0bffcb8b08160824c4b402805af3cb8b0e0841ef765f7b232c7c572cfd400fe8088b3c58073c5b25c60063232c14933c59c3e80b2dab33260103ec01004f214013e809633c58073c5b3327b552000705279a018a182107362d09cc8cb1f5230cb3f58fa025007cf165007cf16c9718010c8cb0524cf165006fa0215cb6a14ccc971fb0010241023007cc30023c200b08e218210d53276db708010c8cb055008cf165004fa0216cb6a12cb1f12cb3fc972fb0093356c21e203c85004fa0258cf1601cf16ccc9ed54',
|
|
215
|
+
'hex',
|
|
216
|
+
),
|
|
217
|
+
)[0],
|
|
218
|
+
};
|
|
@@ -27,6 +27,7 @@ export const EVAA_PYTH_TOB_VERSION = 0;
|
|
|
27
27
|
|
|
28
28
|
export const EVAA_USDT_REWARDS_MASTER_MAINNET = Address.parse('EQD22Fhylp1tX-xoVX81aMTSJNPV8j9klwApTLgjGmofISVD');
|
|
29
29
|
export const EVAA_TON_REWARDS_MASTER_MAINNET = Address.parse('EQDM_gdrntBg4fy5Rg9DgDF0AUu3FYoqxHEOsHNIC4_DTDuC');
|
|
30
|
+
export const EVAA_EVAA_REWARDS_MASTER_MAINNET = Address.parse('EQBLjRyn69hqC9WAVjqjSjF0nnxxWBW-Atx_3T7dCF-tBdnM');
|
|
30
31
|
|
|
31
32
|
export const ORACLES_MAINNET: ExtendedEvaaOracle[] = [
|
|
32
33
|
{
|
|
@@ -8,10 +8,12 @@ import {
|
|
|
8
8
|
ASSET_ID,
|
|
9
9
|
CATI_MAINNET,
|
|
10
10
|
DOGS_MAINNET,
|
|
11
|
+
EVAA_MAINNET,
|
|
11
12
|
JUSDC_MAINNET,
|
|
12
13
|
JUSDT_MAINNET,
|
|
13
14
|
NOT_MAINNET,
|
|
14
15
|
PT_tsUSDe_01Sep2025_MAINNET,
|
|
16
|
+
PT_tsUSDe_18Dec2025_MAINNET,
|
|
15
17
|
STTON_MAINNET,
|
|
16
18
|
TON_MAINNET,
|
|
17
19
|
TON_STORM_MAINNET,
|
|
@@ -26,6 +28,7 @@ import {
|
|
|
26
28
|
import {
|
|
27
29
|
EVAA_ALTS_MAINNET,
|
|
28
30
|
EVAA_ALTS_MAINNET_VERSION,
|
|
31
|
+
EVAA_EVAA_REWARDS_MASTER_MAINNET,
|
|
29
32
|
EVAA_LP_MAINNET,
|
|
30
33
|
EVAA_LP_MAINNET_VERSION,
|
|
31
34
|
EVAA_MASTER_MAINNET,
|
|
@@ -60,9 +63,15 @@ export const MAINNET_POOL_ASSETS_CONFIG = [
|
|
|
60
63
|
TSUSDE_MAINNET,
|
|
61
64
|
];
|
|
62
65
|
|
|
63
|
-
const MAINNET_STABLE_POOL_ASSETS_CONFIG = [
|
|
66
|
+
export const MAINNET_STABLE_POOL_ASSETS_CONFIG = [
|
|
67
|
+
USDT_MAINNET,
|
|
68
|
+
USDE_MAINNET,
|
|
69
|
+
TSUSDE_MAINNET,
|
|
70
|
+
PT_tsUSDe_01Sep2025_MAINNET,
|
|
71
|
+
PT_tsUSDe_18Dec2025_MAINNET,
|
|
72
|
+
];
|
|
64
73
|
|
|
65
|
-
const MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
74
|
+
export const MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
66
75
|
TON_MAINNET,
|
|
67
76
|
USDT_MAINNET,
|
|
68
77
|
TONUSDT_DEDUST_MAINNET,
|
|
@@ -71,7 +80,7 @@ const MAINNET_LP_POOL_ASSETS_CONFIG = [
|
|
|
71
80
|
TONUSDT_STONFI_MAINNET,
|
|
72
81
|
];
|
|
73
82
|
|
|
74
|
-
const MAINNET_ALTS_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, CATI_MAINNET, NOT_MAINNET, DOGS_MAINNET];
|
|
83
|
+
export const MAINNET_ALTS_POOL_ASSETS_CONFIG = [TON_MAINNET, USDT_MAINNET, CATI_MAINNET, NOT_MAINNET, DOGS_MAINNET];
|
|
75
84
|
|
|
76
85
|
export const MAINNET_POOL_CONFIG: PoolConfig = {
|
|
77
86
|
masterAddress: EVAA_MASTER_MAINNET,
|
|
@@ -195,6 +204,16 @@ export const MAINNET_MASTER_USDT_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
|
195
204
|
publicKey: Buffer.from('9813725d6cead1c9bbc0e24b21d4fc62a7fa8ac4bb01b6758df30169a71dba67', 'hex'), // adminAddress publicKey
|
|
196
205
|
};
|
|
197
206
|
|
|
207
|
+
export const MAINNET_MASTER_EVAA_REWARD_CONFIG: EvaaRewardsConfig = {
|
|
208
|
+
adminAddress: EVAA_EVAA_REWARDS_MASTER_MAINNET,
|
|
209
|
+
evaaMasterAddress: new Address(0, Buffer.alloc(32, 0)),
|
|
210
|
+
rewardMasterCode: EVAA_REWARDS_MASTER_CODE_MAINNET,
|
|
211
|
+
rewardUserCode: EVAA_REWARDS_USER_CODE_MAINNET,
|
|
212
|
+
asset: EVAA_MAINNET,
|
|
213
|
+
availableReward: 0,
|
|
214
|
+
publicKey: Buffer.from('b8eb0e312a9aa6394edceef21573f2d45e7d7a616a924e33190bd52fa31c8bb1', 'hex'), // adminAddress publicKey
|
|
215
|
+
};
|
|
216
|
+
|
|
198
217
|
export const ALL_MAINNET_POOLS: PoolConfig[] = [
|
|
199
218
|
MAINNET_POOL_CONFIG,
|
|
200
219
|
MAINNET_LP_POOL_CONFIG,
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Address } from "@ton/core";
|
|
2
|
+
import { bigIntToBuffer } from "./sha256BigInt";
|
|
3
|
+
|
|
4
|
+
export function calculateCloseAddress(address: Address, closeToAddress: Address): Address {
|
|
5
|
+
const curHashpart = BigInt('0x' + address.hash.toString('hex'));
|
|
6
|
+
const desiredHashpart = BigInt('0x' + closeToAddress.hash.toString('hex'));
|
|
7
|
+
|
|
8
|
+
const rewriteBits = 8;
|
|
9
|
+
const mask = (1n << BigInt(256 - rewriteBits)) - 1n;
|
|
10
|
+
const antimask = invertBigInt(mask, 256);
|
|
11
|
+
|
|
12
|
+
const newHashpart = (curHashpart & mask) | (desiredHashpart & antimask);
|
|
13
|
+
return new Address(0, bigIntToBuffer(newHashpart));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function invertBigInt(value: bigint, bits: number): bigint {
|
|
17
|
+
const maxValue = (1n << BigInt(bits)) - 1n;
|
|
18
|
+
return value ^ maxValue;
|
|
19
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Address, beginCell, Cell, storeStateInit } from '@ton/core';
|
|
2
2
|
import { PoolAssetConfig } from '../types/Master';
|
|
3
3
|
import { UNDEFINED_ASSET } from '../constants/assets';
|
|
4
|
+
import { calculateCloseAddress } from './fivaUtils';
|
|
4
5
|
|
|
5
6
|
function getUserJettonData(ownerAddress: Address, assetName: string, jettonWalletCode: Cell, jettonMasterAddress: Address) {
|
|
6
7
|
switch (assetName) {
|
|
@@ -15,6 +16,7 @@ function getUserJettonData(ownerAddress: Address, assetName: string, jettonWalle
|
|
|
15
16
|
.storeAddress(jettonMasterAddress)
|
|
16
17
|
.endCell();
|
|
17
18
|
case 'PT_tsUSDe_01Sep2025':
|
|
19
|
+
case 'PT_tsUSDe_18Dec2025':
|
|
18
20
|
return beginCell()
|
|
19
21
|
.storeCoins(0)
|
|
20
22
|
.storeAddress(ownerAddress)
|
|
@@ -67,7 +69,7 @@ export function getUserJettonWallet(ownerAddress: Address, poolAssetConfig: Pool
|
|
|
67
69
|
|
|
68
70
|
const jettonData = getUserJettonData(ownerAddress, assetName, jettonWalletCode, poolAssetConfig.jettonMasterAddress);
|
|
69
71
|
|
|
70
|
-
|
|
72
|
+
let stateInit = beginCell()
|
|
71
73
|
.store(
|
|
72
74
|
storeStateInit({
|
|
73
75
|
code: jettonWalletCode,
|
|
@@ -76,5 +78,20 @@ export function getUserJettonWallet(ownerAddress: Address, poolAssetConfig: Pool
|
|
|
76
78
|
)
|
|
77
79
|
.endCell();
|
|
78
80
|
|
|
81
|
+
|
|
82
|
+
if (poolAssetConfig.name === 'PT_tsUSDe_18Dec2025') {
|
|
83
|
+
stateInit = beginCell()
|
|
84
|
+
.storeUint(1, 1) // fixed_prefix_length
|
|
85
|
+
.storeUint(8, 5) // rewrite_bits
|
|
86
|
+
.storeUint(0, 1) // special (Maybe=0)
|
|
87
|
+
.storeMaybeRef(jettonWalletCode) // code (Maybe)
|
|
88
|
+
.storeMaybeRef(jettonData) // data (Maybe)
|
|
89
|
+
.storeUint(0, 1) // libraries empty
|
|
90
|
+
.endCell();
|
|
91
|
+
|
|
92
|
+
const addr = new Address(0, stateInit.hash());
|
|
93
|
+
return calculateCloseAddress(addr, poolAssetConfig.jettonMasterAddress);
|
|
94
|
+
}
|
|
95
|
+
|
|
79
96
|
return new Address(0, stateInit.hash());
|
|
80
97
|
}
|