@triadxyz/triad-protocol 0.3.1-beta → 0.3.2-beta
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/stake.d.ts +4 -12
- package/dist/stake.js +24 -26
- package/dist/test.js +13 -7
- package/dist/types/idl_triad_protocol.json +9 -3
- package/dist/types/triad_protocol.d.ts +8 -2
- package/package.json +1 -1
package/dist/stake.d.ts
CHANGED
|
@@ -11,6 +11,10 @@ export default class Stake {
|
|
|
11
11
|
* Get all Stake Vaults
|
|
12
12
|
*/
|
|
13
13
|
getStakeVaults(): Promise<import("./types/stake").StakeVaultResponse[]>;
|
|
14
|
+
/**
|
|
15
|
+
* Get Stake Rewards
|
|
16
|
+
*/
|
|
17
|
+
getStakeRewards({ wallet, mint, stakeVault, nftName }: ClaimStakeRewardsArgs): Promise<void>;
|
|
14
18
|
/**
|
|
15
19
|
* Get Stake Vault by name
|
|
16
20
|
* @param stakeVault - Stake Vault name
|
|
@@ -29,18 +33,6 @@ export default class Stake {
|
|
|
29
33
|
*
|
|
30
34
|
*/
|
|
31
35
|
getStakeByWallet(wallet: PublicKey, stakeVault: string): Promise<StakeResponse[]>;
|
|
32
|
-
/**
|
|
33
|
-
* Get Stake Vault Rewards details
|
|
34
|
-
* @param stakeVault - Stake Vault name
|
|
35
|
-
*/
|
|
36
|
-
getStakeVaultRewards(stakeVault: string): Promise<{
|
|
37
|
-
amount: number;
|
|
38
|
-
perDay: number;
|
|
39
|
-
perWeek: number;
|
|
40
|
-
perMonth: number;
|
|
41
|
-
period: number;
|
|
42
|
-
days: number[];
|
|
43
|
-
}>;
|
|
44
36
|
/**
|
|
45
37
|
* Get Stakes by day
|
|
46
38
|
* @param stakeVault - Stake Vault name
|
package/dist/stake.js
CHANGED
|
@@ -27,6 +27,29 @@ class Stake {
|
|
|
27
27
|
return response.map((stakeVault) => (0, helpers_1.formatStakeVault)(stakeVault.account));
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Get Stake Rewards
|
|
32
|
+
*/
|
|
33
|
+
getStakeRewards({ wallet, mint, stakeVault, nftName }) {
|
|
34
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
const StakeVault = (0, helpers_1.getStakeVaultAddressSync)(this.program.programId, stakeVault);
|
|
36
|
+
const Stake = (0, helpers_1.getStakeAddressSync)(this.program.programId, wallet, nftName);
|
|
37
|
+
const FromAta = (0, helpers_1.getATASync)(StakeVault, mint);
|
|
38
|
+
const ToAta = (0, helpers_1.getATASync)(wallet, mint);
|
|
39
|
+
const method = this.program.methods
|
|
40
|
+
.claimStakeRewards()
|
|
41
|
+
.accounts({
|
|
42
|
+
signer: wallet,
|
|
43
|
+
fromAta: FromAta,
|
|
44
|
+
mint: mint,
|
|
45
|
+
toAta: ToAta,
|
|
46
|
+
stake: Stake,
|
|
47
|
+
stakeVault: StakeVault
|
|
48
|
+
})
|
|
49
|
+
.simulate();
|
|
50
|
+
console.log(method);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
30
53
|
/**
|
|
31
54
|
* Get Stake Vault by name
|
|
32
55
|
* @param stakeVault - Stake Vault name
|
|
@@ -64,31 +87,6 @@ class Stake {
|
|
|
64
87
|
return myStakes;
|
|
65
88
|
});
|
|
66
89
|
}
|
|
67
|
-
/**
|
|
68
|
-
* Get Stake Vault Rewards details
|
|
69
|
-
* @param stakeVault - Stake Vault name
|
|
70
|
-
*/
|
|
71
|
-
getStakeVaultRewards(stakeVault) {
|
|
72
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
-
const StakeVault = (0, helpers_1.getStakeVaultAddressSync)(this.program.programId, stakeVault);
|
|
74
|
-
const response = yield this.program.account.stakeVault.fetch(StakeVault);
|
|
75
|
-
const amount = response.amount.toNumber() / Math.pow(10, constants_1.TTRIAD_DECIMALS);
|
|
76
|
-
const period = (response.endTs.toNumber() - response.initTs.toNumber()) / (60 * 60 * 24);
|
|
77
|
-
const netAmount = amount - (amount * constants_1.TTRIAD_FEE) / 100;
|
|
78
|
-
const data = {
|
|
79
|
-
amount: netAmount,
|
|
80
|
-
perDay: netAmount / period,
|
|
81
|
-
perWeek: (netAmount / period) * 7,
|
|
82
|
-
perMonth: (netAmount / period) * 30,
|
|
83
|
-
period,
|
|
84
|
-
days: []
|
|
85
|
-
};
|
|
86
|
-
for (let ts = response.initTs.toNumber(); ts <= response.endTs.toNumber(); ts += 60 * 60 * 24) {
|
|
87
|
-
data.days.push(ts);
|
|
88
|
-
}
|
|
89
|
-
return data;
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
90
|
/**
|
|
93
91
|
* Get Stakes by day
|
|
94
92
|
* @param stakeVault - Stake Vault name
|
|
@@ -361,7 +359,7 @@ class Stake {
|
|
|
361
359
|
const Stake = (0, helpers_1.getStakeAddressSync)(this.program.programId, wallet, nftName);
|
|
362
360
|
const FromAta = (0, helpers_1.getATASync)(StakeVault, mint);
|
|
363
361
|
const ToAta = (0, helpers_1.getATASync)(wallet, mint);
|
|
364
|
-
const method = this.program.methods.
|
|
362
|
+
const method = this.program.methods.claimStakeRewards().accounts({
|
|
365
363
|
signer: wallet,
|
|
366
364
|
fromAta: FromAta,
|
|
367
365
|
mint: mint,
|
package/dist/test.js
CHANGED
|
@@ -36,12 +36,9 @@ const updateStakeVaultStatus = () => __awaiter(void 0, void 0, void 0, function*
|
|
|
36
36
|
console.log(response);
|
|
37
37
|
});
|
|
38
38
|
const getStake = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
39
|
-
|
|
40
|
-
// new PublicKey('BCTdjdcjMiECGFbF5Ps15yjLRPzy5YZGJNa4VdGRbhjB'),
|
|
41
|
-
// STAKE_SEASON
|
|
42
|
-
// )
|
|
39
|
+
const response = yield triadProtocol.stake.getStakeByWallet(new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'), constants_1.STAKE_SEASON);
|
|
43
40
|
const stakeVaults = yield triadProtocol.stake.getStakeVaults();
|
|
44
|
-
|
|
41
|
+
console.log(response);
|
|
45
42
|
console.log(stakeVaults);
|
|
46
43
|
});
|
|
47
44
|
const getUsers = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -49,7 +46,7 @@ const getUsers = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
49
46
|
console.log(response);
|
|
50
47
|
});
|
|
51
48
|
const getUser = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
52
|
-
const response = yield triadProtocol.getUser(new web3_js_1.PublicKey('
|
|
49
|
+
const response = yield triadProtocol.getUser(new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'));
|
|
53
50
|
console.log(response);
|
|
54
51
|
});
|
|
55
52
|
const getReferral = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -65,4 +62,13 @@ const createUser = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
65
62
|
microLamports: 10000
|
|
66
63
|
});
|
|
67
64
|
});
|
|
68
|
-
|
|
65
|
+
const getRewards = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
66
|
+
const response = yield triadProtocol.stake.getStakeRewards({
|
|
67
|
+
wallet: new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'),
|
|
68
|
+
mint: new web3_js_1.PublicKey('BPK5P2YVnBaJJ4GRESCKQHYFmENzVspd7tZ2Mw7HmJYZ'),
|
|
69
|
+
nftName: 'Triad 3081',
|
|
70
|
+
stakeVault: constants_1.STAKE_SEASON
|
|
71
|
+
});
|
|
72
|
+
console.log(response);
|
|
73
|
+
});
|
|
74
|
+
getRewards();
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
},
|
|
9
9
|
"instructions": [
|
|
10
10
|
{
|
|
11
|
-
"name": "
|
|
12
|
-
"discriminator": [
|
|
11
|
+
"name": "claim_stake_rewards",
|
|
12
|
+
"discriminator": [107, 91, 233, 196, 211, 47, 218, 21],
|
|
13
13
|
"accounts": [
|
|
14
14
|
{
|
|
15
15
|
"name": "signer",
|
|
@@ -77,7 +77,8 @@
|
|
|
77
77
|
"address": "11111111111111111111111111111111"
|
|
78
78
|
}
|
|
79
79
|
],
|
|
80
|
-
"args": []
|
|
80
|
+
"args": [],
|
|
81
|
+
"returns": "u64"
|
|
81
82
|
},
|
|
82
83
|
{
|
|
83
84
|
"name": "close_position",
|
|
@@ -1075,6 +1076,11 @@
|
|
|
1075
1076
|
"code": 6021,
|
|
1076
1077
|
"name": "SwapsReachedLimit",
|
|
1077
1078
|
"msg": "Swaps reached limit"
|
|
1079
|
+
},
|
|
1080
|
+
{
|
|
1081
|
+
"code": 6022,
|
|
1082
|
+
"name": "InsufficientFunds",
|
|
1083
|
+
"msg": "Insufficient funds"
|
|
1078
1084
|
}
|
|
1079
1085
|
],
|
|
1080
1086
|
"types": [
|
|
@@ -14,8 +14,8 @@ export type TriadProtocol = {
|
|
|
14
14
|
};
|
|
15
15
|
instructions: [
|
|
16
16
|
{
|
|
17
|
-
name: '
|
|
18
|
-
discriminator: [
|
|
17
|
+
name: 'claimStakeRewards';
|
|
18
|
+
discriminator: [107, 91, 233, 196, 211, 47, 218, 21];
|
|
19
19
|
accounts: [
|
|
20
20
|
{
|
|
21
21
|
name: 'signer';
|
|
@@ -56,6 +56,7 @@ export type TriadProtocol = {
|
|
|
56
56
|
}
|
|
57
57
|
];
|
|
58
58
|
args: [];
|
|
59
|
+
returns: 'u64';
|
|
59
60
|
},
|
|
60
61
|
{
|
|
61
62
|
name: 'closePosition';
|
|
@@ -987,6 +988,11 @@ export type TriadProtocol = {
|
|
|
987
988
|
code: 6021;
|
|
988
989
|
name: 'swapsReachedLimit';
|
|
989
990
|
msg: 'Swaps reached limit';
|
|
991
|
+
},
|
|
992
|
+
{
|
|
993
|
+
code: 6022;
|
|
994
|
+
name: 'insufficientFunds';
|
|
995
|
+
msg: 'Insufficient funds';
|
|
990
996
|
}
|
|
991
997
|
];
|
|
992
998
|
types: [
|