@triadxyz/triad-protocol 0.2.1-beta → 0.2.4-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/index.d.ts +10 -4
- package/dist/index.js +17 -10
- package/dist/stake.js +6 -2
- package/dist/test.js +1 -1
- package/dist/types/idl_triad_protocol.json +20 -3
- package/dist/types/index.d.ts +1 -1
- package/dist/types/triad_protocol.d.ts +20 -3
- package/dist/utils/helpers.d.ts +1 -1
- package/dist/utils/helpers.js +2 -2
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -13,14 +13,20 @@ export default class TriadProtocolClient {
|
|
|
13
13
|
stake: Stake;
|
|
14
14
|
constructor(connection: Connection, wallet: Wallet);
|
|
15
15
|
/**
|
|
16
|
-
* Get
|
|
16
|
+
* Get User by wallet
|
|
17
|
+
* @param wallet - User wallet
|
|
18
|
+
*/
|
|
19
|
+
getUser: (wallet: PublicKey) => Promise<import("./types/stake").UserResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* Get User by wallet
|
|
22
|
+
* @param wallet - User wallet
|
|
17
23
|
*/
|
|
18
24
|
getUsers: () => Promise<import("./types/stake").UserResponse[]>;
|
|
19
25
|
/**
|
|
20
|
-
* Check if user
|
|
21
|
-
* @param
|
|
26
|
+
* Check if user exists
|
|
27
|
+
* @param username - User name
|
|
22
28
|
*/
|
|
23
|
-
|
|
29
|
+
hasUser: (wallet: PublicKey) => Promise<boolean>;
|
|
24
30
|
getUserPositions: (userWallet: PublicKey) => Promise<{}[]>;
|
|
25
31
|
/**
|
|
26
32
|
* Create User
|
package/dist/index.js
CHANGED
|
@@ -22,21 +22,29 @@ const stake_1 = __importDefault(require("./stake"));
|
|
|
22
22
|
class TriadProtocolClient {
|
|
23
23
|
constructor(connection, wallet) {
|
|
24
24
|
/**
|
|
25
|
-
* Get
|
|
25
|
+
* Get User by wallet
|
|
26
|
+
* @param wallet - User wallet
|
|
27
|
+
*/
|
|
28
|
+
this.getUser = (wallet) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
const UserPDA = (0, helpers_1.getUserAddressSync)(this.program.programId, wallet);
|
|
30
|
+
const response = yield this.program.account.user.fetch(UserPDA);
|
|
31
|
+
return (0, helpers_1.formatUser)(response);
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* Get User by wallet
|
|
35
|
+
* @param wallet - User wallet
|
|
26
36
|
*/
|
|
27
37
|
this.getUsers = () => __awaiter(this, void 0, void 0, function* () {
|
|
28
38
|
const response = yield this.program.account.user.all();
|
|
29
|
-
return response
|
|
30
|
-
.map((item) => (0, helpers_1.formatUser)(item.account))
|
|
31
|
-
.sort((a, b) => b.referred - a.referred);
|
|
39
|
+
return response.map((item) => (0, helpers_1.formatUser)(item));
|
|
32
40
|
});
|
|
33
41
|
/**
|
|
34
|
-
* Check if user
|
|
35
|
-
* @param
|
|
42
|
+
* Check if user exists
|
|
43
|
+
* @param username - User name
|
|
36
44
|
*/
|
|
37
|
-
this.
|
|
45
|
+
this.hasUser = (wallet) => __awaiter(this, void 0, void 0, function* () {
|
|
38
46
|
try {
|
|
39
|
-
yield this.program.account.user.fetch((0, helpers_1.getUserAddressSync)(this.program.programId,
|
|
47
|
+
yield this.program.account.user.fetch((0, helpers_1.getUserAddressSync)(this.program.programId, wallet));
|
|
40
48
|
return true;
|
|
41
49
|
}
|
|
42
50
|
catch (_a) {
|
|
@@ -72,14 +80,13 @@ class TriadProtocolClient {
|
|
|
72
80
|
*
|
|
73
81
|
*/
|
|
74
82
|
this.createUser = ({ wallet, name, referral }, options) => {
|
|
75
|
-
const referralPDA = (0, helpers_1.getUserAddressSync)(this.program.programId, referral);
|
|
76
83
|
const method = this.program.methods
|
|
77
84
|
.createUser({
|
|
78
85
|
name
|
|
79
86
|
})
|
|
80
87
|
.accounts({
|
|
81
88
|
signer: wallet,
|
|
82
|
-
referral
|
|
89
|
+
referral
|
|
83
90
|
});
|
|
84
91
|
if (options === null || options === void 0 ? void 0 : options.microLamports) {
|
|
85
92
|
method.postInstructions([
|
package/dist/stake.js
CHANGED
|
@@ -164,6 +164,7 @@ class Stake {
|
|
|
164
164
|
return __awaiter(this, void 0, void 0, function* () {
|
|
165
165
|
const ttriad = new web3_js_1.PublicKey(constants_1.TTRIAD_MINT);
|
|
166
166
|
const FromAta = (0, helpers_1.getATASync)(wallet, ttriad);
|
|
167
|
+
const userPDA = (0, helpers_1.getUserAddressSync)(this.program.programId, wallet);
|
|
167
168
|
const method = this.program.methods
|
|
168
169
|
.stakeToken({
|
|
169
170
|
name,
|
|
@@ -173,7 +174,8 @@ class Stake {
|
|
|
173
174
|
.accounts({
|
|
174
175
|
signer: wallet,
|
|
175
176
|
fromAta: FromAta,
|
|
176
|
-
mint: ttriad
|
|
177
|
+
mint: ttriad,
|
|
178
|
+
user: userPDA
|
|
177
179
|
});
|
|
178
180
|
if (options === null || options === void 0 ? void 0 : options.microLamports) {
|
|
179
181
|
method.postInstructions([
|
|
@@ -282,6 +284,7 @@ class Stake {
|
|
|
282
284
|
withdrawStake({ wallet, name, mint, stakeVault }, options) {
|
|
283
285
|
return __awaiter(this, void 0, void 0, function* () {
|
|
284
286
|
const stakeVaultPDA = (0, helpers_1.getStakeVaultAddressSync)(this.program.programId, stakeVault);
|
|
287
|
+
const userPDA = (0, helpers_1.getUserAddressSync)(this.program.programId, wallet);
|
|
285
288
|
const FromAta = (0, helpers_1.getATASync)(stakeVaultPDA, mint);
|
|
286
289
|
const stakePDA = (0, helpers_1.getStakeAddressSync)(this.program.programId, wallet, name);
|
|
287
290
|
const method = this.program.methods.withdrawStake().accounts({
|
|
@@ -290,7 +293,8 @@ class Stake {
|
|
|
290
293
|
stake: stakePDA,
|
|
291
294
|
stakeVault: stakeVaultPDA,
|
|
292
295
|
admin: new web3_js_1.PublicKey('82ppCojm3yrEKgdpH8B5AmBJTU1r1uAWXFWhxvPs9UCR'),
|
|
293
|
-
mint: mint
|
|
296
|
+
mint: mint,
|
|
297
|
+
user: userPDA
|
|
294
298
|
});
|
|
295
299
|
if (options === null || options === void 0 ? void 0 : options.microLamports) {
|
|
296
300
|
method.postInstructions([
|
package/dist/test.js
CHANGED
|
@@ -47,6 +47,6 @@ const getUsers = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
47
47
|
});
|
|
48
48
|
getUsers();
|
|
49
49
|
const getReferral = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
50
|
-
const response = yield triadProtocol.
|
|
50
|
+
const response = yield triadProtocol.hasUser(new web3_js_1.PublicKey(''));
|
|
51
51
|
console.log(response);
|
|
52
52
|
});
|
|
@@ -233,8 +233,8 @@
|
|
|
233
233
|
"value": [117, 115, 101, 114]
|
|
234
234
|
},
|
|
235
235
|
{
|
|
236
|
-
"kind": "
|
|
237
|
-
"path": "
|
|
236
|
+
"kind": "account",
|
|
237
|
+
"path": "signer"
|
|
238
238
|
}
|
|
239
239
|
]
|
|
240
240
|
}
|
|
@@ -661,6 +661,10 @@
|
|
|
661
661
|
]
|
|
662
662
|
}
|
|
663
663
|
},
|
|
664
|
+
{
|
|
665
|
+
"name": "user",
|
|
666
|
+
"writable": true
|
|
667
|
+
},
|
|
664
668
|
{
|
|
665
669
|
"name": "stake",
|
|
666
670
|
"writable": true,
|
|
@@ -816,6 +820,10 @@
|
|
|
816
820
|
"name": "stake_vault",
|
|
817
821
|
"writable": true
|
|
818
822
|
},
|
|
823
|
+
{
|
|
824
|
+
"name": "user",
|
|
825
|
+
"writable": true
|
|
826
|
+
},
|
|
819
827
|
{
|
|
820
828
|
"name": "stake",
|
|
821
829
|
"writable": true
|
|
@@ -1020,6 +1028,11 @@
|
|
|
1020
1028
|
"code": 6019,
|
|
1021
1029
|
"name": "RewardsAlreadyClaimed",
|
|
1022
1030
|
"msg": "Rewards already claimed"
|
|
1031
|
+
},
|
|
1032
|
+
{
|
|
1033
|
+
"code": 6020,
|
|
1034
|
+
"name": "StakeOverflow",
|
|
1035
|
+
"msg": "Stake overflow"
|
|
1023
1036
|
}
|
|
1024
1037
|
],
|
|
1025
1038
|
"types": [
|
|
@@ -1514,10 +1527,14 @@
|
|
|
1514
1527
|
"name": "swaps_made",
|
|
1515
1528
|
"type": "i16"
|
|
1516
1529
|
},
|
|
1530
|
+
{
|
|
1531
|
+
"name": "staked",
|
|
1532
|
+
"type": "u64"
|
|
1533
|
+
},
|
|
1517
1534
|
{
|
|
1518
1535
|
"name": "padding",
|
|
1519
1536
|
"type": {
|
|
1520
|
-
"array": ["u8",
|
|
1537
|
+
"array": ["u8", 40]
|
|
1521
1538
|
}
|
|
1522
1539
|
}
|
|
1523
1540
|
]
|
package/dist/types/index.d.ts
CHANGED
|
@@ -314,8 +314,8 @@ export type TriadProtocol = {
|
|
|
314
314
|
value: [117, 115, 101, 114];
|
|
315
315
|
},
|
|
316
316
|
{
|
|
317
|
-
kind: '
|
|
318
|
-
path: '
|
|
317
|
+
kind: 'account';
|
|
318
|
+
path: 'signer';
|
|
319
319
|
}
|
|
320
320
|
];
|
|
321
321
|
};
|
|
@@ -887,6 +887,10 @@ export type TriadProtocol = {
|
|
|
887
887
|
];
|
|
888
888
|
};
|
|
889
889
|
},
|
|
890
|
+
{
|
|
891
|
+
name: 'user';
|
|
892
|
+
writable: true;
|
|
893
|
+
},
|
|
890
894
|
{
|
|
891
895
|
name: 'stake';
|
|
892
896
|
writable: true;
|
|
@@ -1100,6 +1104,10 @@ export type TriadProtocol = {
|
|
|
1100
1104
|
name: 'stakeVault';
|
|
1101
1105
|
writable: true;
|
|
1102
1106
|
},
|
|
1107
|
+
{
|
|
1108
|
+
name: 'user';
|
|
1109
|
+
writable: true;
|
|
1110
|
+
},
|
|
1103
1111
|
{
|
|
1104
1112
|
name: 'stake';
|
|
1105
1113
|
writable: true;
|
|
@@ -1362,6 +1370,11 @@ export type TriadProtocol = {
|
|
|
1362
1370
|
code: 6019;
|
|
1363
1371
|
name: 'rewardsAlreadyClaimed';
|
|
1364
1372
|
msg: 'Rewards already claimed';
|
|
1373
|
+
},
|
|
1374
|
+
{
|
|
1375
|
+
code: 6020;
|
|
1376
|
+
name: 'stakeOverflow';
|
|
1377
|
+
msg: 'Stake overflow';
|
|
1365
1378
|
}
|
|
1366
1379
|
];
|
|
1367
1380
|
types: [
|
|
@@ -1856,10 +1869,14 @@ export type TriadProtocol = {
|
|
|
1856
1869
|
name: 'swapsMade';
|
|
1857
1870
|
type: 'i16';
|
|
1858
1871
|
},
|
|
1872
|
+
{
|
|
1873
|
+
name: 'staked';
|
|
1874
|
+
type: 'u64';
|
|
1875
|
+
},
|
|
1859
1876
|
{
|
|
1860
1877
|
name: 'padding';
|
|
1861
1878
|
type: {
|
|
1862
|
-
array: ['u8',
|
|
1879
|
+
array: ['u8', 40];
|
|
1863
1880
|
};
|
|
1864
1881
|
}
|
|
1865
1882
|
];
|
package/dist/utils/helpers.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare const getStakeVaultAddressSync: (programId: PublicKey, vaultName:
|
|
|
11
11
|
export declare const getStakeAddressSync: (programId: PublicKey, wallet: PublicKey, name: string) => PublicKey;
|
|
12
12
|
export declare const getNFTRewardsAddressSync: (programId: PublicKey, stake: PublicKey) => PublicKey;
|
|
13
13
|
export declare const getATASync: (address: PublicKey, Mint: PublicKey) => PublicKey;
|
|
14
|
-
export declare const getUserAddressSync: (programId: PublicKey,
|
|
14
|
+
export declare const getUserAddressSync: (programId: PublicKey, wallet: PublicKey) => PublicKey;
|
|
15
15
|
export declare const formatNumber: (number: bigint | BN, decimals?: number) => number;
|
|
16
16
|
export declare const formatStakeVault: (stakeVault: any) => StakeVaultResponse;
|
|
17
17
|
export declare const formatStake: (stake: any) => StakeResponse;
|
package/dist/utils/helpers.js
CHANGED
|
@@ -91,8 +91,8 @@ const getATASync = (address, Mint) => {
|
|
|
91
91
|
return ATA;
|
|
92
92
|
};
|
|
93
93
|
exports.getATASync = getATASync;
|
|
94
|
-
const getUserAddressSync = (programId,
|
|
95
|
-
const [StakePDA] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('user'),
|
|
94
|
+
const getUserAddressSync = (programId, wallet) => {
|
|
95
|
+
const [StakePDA] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('user'), wallet.toBuffer()], programId);
|
|
96
96
|
return StakePDA;
|
|
97
97
|
};
|
|
98
98
|
exports.getUserAddressSync = getUserAddressSync;
|