@triadxyz/triad-protocol 0.3.3-beta → 0.3.5-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 +2 -2
- package/dist/stake.js +22 -8
- package/dist/test.js +15 -32
- package/dist/types/idl_triad_protocol.json +31 -1
- package/dist/types/stake.d.ts +2 -1
- package/dist/types/triad_protocol.d.ts +31 -1
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.js +2 -1
- package/package.json +2 -1
package/dist/stake.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export default class Stake {
|
|
|
14
14
|
/**
|
|
15
15
|
* Get Stake Rewards
|
|
16
16
|
*/
|
|
17
|
-
getStakeRewards({ wallet,
|
|
17
|
+
getStakeRewards({ wallet, stakeVault, nftName, collections, rank }: ClaimStakeRewardsArgs): Promise<number>;
|
|
18
18
|
/**
|
|
19
19
|
* Get Stake Vault by name
|
|
20
20
|
* @param stakeVault - Stake Vault name
|
|
@@ -106,5 +106,5 @@ export default class Stake {
|
|
|
106
106
|
* @param nftName - Name of the nft
|
|
107
107
|
*
|
|
108
108
|
*/
|
|
109
|
-
claimStakeRewards({ wallet,
|
|
109
|
+
claimStakeRewards({ wallet, stakeVault, nftName, collections, rank }: ClaimStakeRewardsArgs, options?: RpcOptions): Promise<string>;
|
|
110
110
|
}
|
package/dist/stake.js
CHANGED
|
@@ -13,6 +13,7 @@ const anchor_1 = require("@coral-xyz/anchor");
|
|
|
13
13
|
const web3_js_1 = require("@solana/web3.js");
|
|
14
14
|
const helpers_1 = require("./utils/helpers");
|
|
15
15
|
const constants_1 = require("./utils/constants");
|
|
16
|
+
const base64_js_1 = require("base64-js");
|
|
16
17
|
class Stake {
|
|
17
18
|
constructor(program, provider) {
|
|
18
19
|
this.provider = provider;
|
|
@@ -30,24 +31,30 @@ class Stake {
|
|
|
30
31
|
/**
|
|
31
32
|
* Get Stake Rewards
|
|
32
33
|
*/
|
|
33
|
-
getStakeRewards({ wallet,
|
|
34
|
+
getStakeRewards({ wallet, stakeVault, nftName, collections, rank }) {
|
|
34
35
|
return __awaiter(this, void 0, void 0, function* () {
|
|
35
36
|
const StakeVault = (0, helpers_1.getStakeVaultAddressSync)(this.program.programId, stakeVault);
|
|
37
|
+
const mint = new web3_js_1.PublicKey(constants_1.TTRIAD_MINT);
|
|
36
38
|
const Stake = (0, helpers_1.getStakeAddressSync)(this.program.programId, wallet, nftName);
|
|
37
39
|
const FromAta = (0, helpers_1.getATASync)(StakeVault, mint);
|
|
38
40
|
const ToAta = (0, helpers_1.getATASync)(wallet, mint);
|
|
39
|
-
const method = this.program.methods
|
|
40
|
-
.claimStakeRewards(
|
|
41
|
+
const method = yield this.program.methods
|
|
42
|
+
.claimStakeRewards({
|
|
43
|
+
collections,
|
|
44
|
+
rank
|
|
45
|
+
})
|
|
41
46
|
.accounts({
|
|
42
47
|
signer: wallet,
|
|
43
48
|
fromAta: FromAta,
|
|
44
49
|
mint: mint,
|
|
45
50
|
toAta: ToAta,
|
|
46
51
|
stake: Stake,
|
|
47
|
-
stakeVault: StakeVault
|
|
52
|
+
stakeVault: StakeVault,
|
|
53
|
+
verifier: new web3_js_1.PublicKey(constants_1.VERIFIER)
|
|
48
54
|
})
|
|
49
55
|
.simulate();
|
|
50
|
-
|
|
56
|
+
let value = method.raw[method.raw.length - 2].split(' ')[3];
|
|
57
|
+
return new anchor_1.BN((0, base64_js_1.toByteArray)(value), 'le').toNumber() / Math.pow(10, constants_1.TTRIAD_DECIMALS);
|
|
51
58
|
});
|
|
52
59
|
}
|
|
53
60
|
/**
|
|
@@ -353,19 +360,26 @@ class Stake {
|
|
|
353
360
|
* @param nftName - Name of the nft
|
|
354
361
|
*
|
|
355
362
|
*/
|
|
356
|
-
claimStakeRewards({ wallet,
|
|
363
|
+
claimStakeRewards({ wallet, stakeVault, nftName, collections, rank }, options) {
|
|
357
364
|
return __awaiter(this, void 0, void 0, function* () {
|
|
358
365
|
const StakeVault = (0, helpers_1.getStakeVaultAddressSync)(this.program.programId, stakeVault);
|
|
366
|
+
const mint = new web3_js_1.PublicKey(constants_1.TTRIAD_MINT);
|
|
359
367
|
const Stake = (0, helpers_1.getStakeAddressSync)(this.program.programId, wallet, nftName);
|
|
360
368
|
const FromAta = (0, helpers_1.getATASync)(StakeVault, mint);
|
|
361
369
|
const ToAta = (0, helpers_1.getATASync)(wallet, mint);
|
|
362
|
-
const method = this.program.methods
|
|
370
|
+
const method = this.program.methods
|
|
371
|
+
.claimStakeRewards({
|
|
372
|
+
collections,
|
|
373
|
+
rank
|
|
374
|
+
})
|
|
375
|
+
.accounts({
|
|
363
376
|
signer: wallet,
|
|
364
377
|
fromAta: FromAta,
|
|
365
378
|
mint: mint,
|
|
366
379
|
toAta: ToAta,
|
|
367
380
|
stake: Stake,
|
|
368
|
-
stakeVault: StakeVault
|
|
381
|
+
stakeVault: StakeVault,
|
|
382
|
+
verifier: new web3_js_1.PublicKey(constants_1.VERIFIER)
|
|
369
383
|
});
|
|
370
384
|
if (options === null || options === void 0 ? void 0 : options.microLamports) {
|
|
371
385
|
method.postInstructions([
|
package/dist/test.js
CHANGED
|
@@ -36,39 +36,22 @@ 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
|
-
const response = yield triadProtocol.stake.getStakeByWallet(new web3_js_1.PublicKey('
|
|
40
|
-
const stakeVaults = yield triadProtocol.stake.getStakeVaults();
|
|
39
|
+
const response = yield triadProtocol.stake.getStakeByWallet(new web3_js_1.PublicKey('BCTdjdcjMiECGFbF5Ps15yjLRPzy5YZGJNa4VdGRbhjB'), constants_1.STAKE_SEASON);
|
|
41
40
|
console.log(response);
|
|
42
|
-
console.log(stakeVaults);
|
|
43
|
-
});
|
|
44
|
-
const getUsers = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const response = yield triadProtocol.getUsers();
|
|
46
|
-
console.log(response);
|
|
47
|
-
});
|
|
48
|
-
const getUser = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
49
|
-
const response = yield triadProtocol.getUser(new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'));
|
|
50
|
-
console.log(response);
|
|
51
|
-
});
|
|
52
|
-
const getReferral = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
53
|
-
const response = yield triadProtocol.hasUser(new web3_js_1.PublicKey('6MuTdUhc4LDHDW3fiTemyns4NgR99oAWvHM2SwCSTcau'));
|
|
54
|
-
console.log(response);
|
|
55
|
-
});
|
|
56
|
-
const createUser = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
-
const response = yield triadProtocol.createUser({
|
|
58
|
-
wallet: wallet.publicKey,
|
|
59
|
-
referral: new web3_js_1.PublicKey('5vPF9vByRCUB2pr1oGmJsRPm9WDrH9a2v6iF4pbMiobK'),
|
|
60
|
-
name: 'Builder'
|
|
61
|
-
}, {
|
|
62
|
-
microLamports: 10000
|
|
63
|
-
});
|
|
64
41
|
});
|
|
65
42
|
const getRewards = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
43
|
+
let sum = 0;
|
|
44
|
+
const a = yield triadProtocol.stake.getStakeByWallet(new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'), constants_1.STAKE_SEASON);
|
|
45
|
+
for (let i = 0; i < a.length; i++) {
|
|
46
|
+
const stake = a[i];
|
|
47
|
+
const response = yield triadProtocol.stake.getStakeRewards({
|
|
48
|
+
wallet: new web3_js_1.PublicKey('HjJQdfTHgC3EBX3471w4st8BXbBmtbaMyCAXNgcUb7dq'),
|
|
49
|
+
nftName: stake.name,
|
|
50
|
+
stakeVault: constants_1.STAKE_SEASON,
|
|
51
|
+
collections: 5,
|
|
52
|
+
rank: i
|
|
53
|
+
});
|
|
54
|
+
sum += response;
|
|
55
|
+
}
|
|
56
|
+
console.log(sum);
|
|
73
57
|
});
|
|
74
|
-
getRewards();
|
|
@@ -16,6 +16,11 @@
|
|
|
16
16
|
"writable": true,
|
|
17
17
|
"signer": true
|
|
18
18
|
},
|
|
19
|
+
{
|
|
20
|
+
"name": "verifier",
|
|
21
|
+
"writable": true,
|
|
22
|
+
"signer": true
|
|
23
|
+
},
|
|
19
24
|
{
|
|
20
25
|
"name": "stake_vault",
|
|
21
26
|
"writable": true
|
|
@@ -77,7 +82,16 @@
|
|
|
77
82
|
"address": "11111111111111111111111111111111"
|
|
78
83
|
}
|
|
79
84
|
],
|
|
80
|
-
"args": [
|
|
85
|
+
"args": [
|
|
86
|
+
{
|
|
87
|
+
"name": "args",
|
|
88
|
+
"type": {
|
|
89
|
+
"defined": {
|
|
90
|
+
"name": "ClaimStakeRewardsArgs"
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
],
|
|
81
95
|
"returns": "u64"
|
|
82
96
|
},
|
|
83
97
|
{
|
|
@@ -1084,6 +1098,22 @@
|
|
|
1084
1098
|
}
|
|
1085
1099
|
],
|
|
1086
1100
|
"types": [
|
|
1101
|
+
{
|
|
1102
|
+
"name": "ClaimStakeRewardsArgs",
|
|
1103
|
+
"type": {
|
|
1104
|
+
"kind": "struct",
|
|
1105
|
+
"fields": [
|
|
1106
|
+
{
|
|
1107
|
+
"name": "rank",
|
|
1108
|
+
"type": "u16"
|
|
1109
|
+
},
|
|
1110
|
+
{
|
|
1111
|
+
"name": "collections",
|
|
1112
|
+
"type": "u8"
|
|
1113
|
+
}
|
|
1114
|
+
]
|
|
1115
|
+
}
|
|
1116
|
+
},
|
|
1087
1117
|
{
|
|
1088
1118
|
"name": "ClosePositionArgs",
|
|
1089
1119
|
"type": {
|
package/dist/types/stake.d.ts
CHANGED
|
@@ -55,9 +55,10 @@ export type UpdateStakeVaultStatusArgs = {
|
|
|
55
55
|
};
|
|
56
56
|
export type ClaimStakeRewardsArgs = {
|
|
57
57
|
wallet: PublicKey;
|
|
58
|
-
mint: PublicKey;
|
|
59
58
|
stakeVault: string;
|
|
60
59
|
nftName: string;
|
|
60
|
+
collections: number;
|
|
61
|
+
rank: number;
|
|
61
62
|
};
|
|
62
63
|
export type UpdateStakeRewardsArgs = {
|
|
63
64
|
day: number;
|
|
@@ -22,6 +22,11 @@ export type TriadProtocol = {
|
|
|
22
22
|
writable: true;
|
|
23
23
|
signer: true;
|
|
24
24
|
},
|
|
25
|
+
{
|
|
26
|
+
name: 'verifier';
|
|
27
|
+
writable: true;
|
|
28
|
+
signer: true;
|
|
29
|
+
},
|
|
25
30
|
{
|
|
26
31
|
name: 'stakeVault';
|
|
27
32
|
writable: true;
|
|
@@ -55,7 +60,16 @@ export type TriadProtocol = {
|
|
|
55
60
|
address: '11111111111111111111111111111111';
|
|
56
61
|
}
|
|
57
62
|
];
|
|
58
|
-
args: [
|
|
63
|
+
args: [
|
|
64
|
+
{
|
|
65
|
+
name: 'args';
|
|
66
|
+
type: {
|
|
67
|
+
defined: {
|
|
68
|
+
name: 'claimStakeRewardsArgs';
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
];
|
|
59
73
|
returns: 'u64';
|
|
60
74
|
},
|
|
61
75
|
{
|
|
@@ -996,6 +1010,22 @@ export type TriadProtocol = {
|
|
|
996
1010
|
}
|
|
997
1011
|
];
|
|
998
1012
|
types: [
|
|
1013
|
+
{
|
|
1014
|
+
name: 'claimStakeRewardsArgs';
|
|
1015
|
+
type: {
|
|
1016
|
+
kind: 'struct';
|
|
1017
|
+
fields: [
|
|
1018
|
+
{
|
|
1019
|
+
name: 'rank';
|
|
1020
|
+
type: 'u16';
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
name: 'collections';
|
|
1024
|
+
type: 'u8';
|
|
1025
|
+
}
|
|
1026
|
+
];
|
|
1027
|
+
};
|
|
1028
|
+
},
|
|
999
1029
|
{
|
|
1000
1030
|
name: 'closePositionArgs';
|
|
1001
1031
|
type: {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const TRIAD_PROTOCOL_PROGRAM_ID = "TRDwq3BN4mP3m9KsuNUWSN6QDff93VKGSwE95Jbr9Ss";
|
|
2
2
|
export declare const ATA_PROGRAM_ID = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
|
|
3
3
|
export declare const ADMIN = "";
|
|
4
|
+
export declare const VERIFIER = "42n6BHufivUKrb5Bi6tXbMZvM8NHovrDLX1Rt5w2a919";
|
|
4
5
|
export declare const STAKE_SEASON = "Triad Share 1";
|
|
5
6
|
export declare const TTRIAD_DECIMALS = 6;
|
|
6
7
|
export declare const TTRIAD_MINT = "t3DohmswhKk94PPbPYwA6ZKACyY3y5kbcqeQerAJjmV";
|
package/dist/utils/constants.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RARITY_RANK_SEASON_1 = exports.TTRIAD_FEE = exports.TTRIAD_MINT = exports.TTRIAD_DECIMALS = exports.STAKE_SEASON = exports.ADMIN = exports.ATA_PROGRAM_ID = exports.TRIAD_PROTOCOL_PROGRAM_ID = void 0;
|
|
3
|
+
exports.RARITY_RANK_SEASON_1 = exports.TTRIAD_FEE = exports.TTRIAD_MINT = exports.TTRIAD_DECIMALS = exports.STAKE_SEASON = exports.VERIFIER = exports.ADMIN = exports.ATA_PROGRAM_ID = exports.TRIAD_PROTOCOL_PROGRAM_ID = void 0;
|
|
4
4
|
exports.TRIAD_PROTOCOL_PROGRAM_ID = 'TRDwq3BN4mP3m9KsuNUWSN6QDff93VKGSwE95Jbr9Ss';
|
|
5
5
|
exports.ATA_PROGRAM_ID = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
|
|
6
6
|
exports.ADMIN = '';
|
|
7
|
+
exports.VERIFIER = '42n6BHufivUKrb5Bi6tXbMZvM8NHovrDLX1Rt5w2a919';
|
|
7
8
|
exports.STAKE_SEASON = 'Triad Share 1';
|
|
8
9
|
exports.TTRIAD_DECIMALS = 6;
|
|
9
10
|
exports.TTRIAD_MINT = 't3DohmswhKk94PPbPYwA6ZKACyY3y5kbcqeQerAJjmV';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@triadxyz/triad-protocol",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.5-beta",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
"@solana/spl-token": "0.4.6",
|
|
37
37
|
"@solana/web3.js": "1.89.1",
|
|
38
38
|
"axios": "^1.5.1",
|
|
39
|
+
"base64-js": "^1.5.1",
|
|
39
40
|
"bn.js": "^5.2.1",
|
|
40
41
|
"bs58": "5.0.0",
|
|
41
42
|
"uuid": "^9.0.1"
|