hedge-web3 0.1.34 → 0.1.37
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/declarations/Constants.d.ts +1 -1
- package/declarations/idl/vault.d.ts +12 -12
- package/declarations/instructions/claimStakingPoolPosition.d.ts +2 -2
- package/lib/Constants.js +1 -1
- package/lib/idl/vault.js +12 -12
- package/lib/instructions/claimStakingPoolPosition.js +4 -4
- package/package.json +1 -1
- package/src/Constants.ts +1 -1
- package/src/idl/vault.ts +24 -24
- package/src/instructions/claimStakingPoolPosition.ts +4 -3
@@ -1,5 +1,5 @@
|
|
1
1
|
import { PublicKey } from '@solana/web3.js';
|
2
|
-
export declare const HEDGE_PROGRAM_ID = "
|
2
|
+
export declare const HEDGE_PROGRAM_ID = "HDG4FDos8fyrB79qMCe98gaFjNEy5kpxGNjMc5V8M6TJ";
|
3
3
|
export declare const HEDGE_PROGRAM_PUBLICKEY: PublicKey;
|
4
4
|
export declare const CHAINLINK_SOL_USD_ID = "FmAmfoyPXiA8Vhhe6MZTr3U6rZfEZ1ctEHay1ysqCqcf";
|
5
5
|
export declare const CHAINLINK_SOL_USD_PUBLICKEY: PublicKey;
|
@@ -1802,18 +1802,6 @@ export declare type Vault = {
|
|
1802
1802
|
"type": {
|
1803
1803
|
"kind": "struct";
|
1804
1804
|
"fields": [
|
1805
|
-
{
|
1806
|
-
"name": "owner";
|
1807
|
-
"type": "publicKey";
|
1808
|
-
},
|
1809
|
-
{
|
1810
|
-
"name": "pool";
|
1811
|
-
"type": "publicKey";
|
1812
|
-
},
|
1813
|
-
{
|
1814
|
-
"name": "deposited";
|
1815
|
-
"type": "u64";
|
1816
|
-
},
|
1817
1805
|
{
|
1818
1806
|
"name": "startHedgeRewardAccumulator";
|
1819
1807
|
"type": "u128";
|
@@ -1852,6 +1840,18 @@ export declare type Vault = {
|
|
1852
1840
|
"name": "closedRewardedTokens";
|
1853
1841
|
"type": "u64";
|
1854
1842
|
},
|
1843
|
+
{
|
1844
|
+
"name": "deposited";
|
1845
|
+
"type": "u64";
|
1846
|
+
},
|
1847
|
+
{
|
1848
|
+
"name": "owner";
|
1849
|
+
"type": "publicKey";
|
1850
|
+
},
|
1851
|
+
{
|
1852
|
+
"name": "pool";
|
1853
|
+
"type": "publicKey";
|
1854
|
+
},
|
1855
1855
|
{
|
1856
1856
|
"name": "state";
|
1857
1857
|
"type": {
|
@@ -1,5 +1,5 @@
|
|
1
|
-
import { Program } from '@project-serum/anchor';
|
1
|
+
import { Program, Provider } from '@project-serum/anchor';
|
2
2
|
import { PublicKey, Signer, TransactionInstruction } from '@solana/web3.js';
|
3
3
|
import { Vault } from 'idl/vault';
|
4
|
-
export declare function claimStakingPoolPosition(program: Program<Vault>, poolPosition: PublicKey, payer: Signer, collateralType: string): Promise<PublicKey>;
|
4
|
+
export declare function claimStakingPoolPosition(program: Program<Vault>, provider: Provider, poolPosition: PublicKey, payer: Signer, collateralType: string): Promise<PublicKey>;
|
5
5
|
export declare function claimStakingPoolPositionInstruction(program: Program<Vault>, feePool: PublicKey, feePoolAssociatedTokenAccount: PublicKey, stakedTokenMint: PublicKey, vaultTypeAccount: PublicKey, collateralMint: PublicKey, poolPosition: PublicKey, payer: PublicKey, payerAssociatedTokenAccount: PublicKey): Promise<TransactionInstruction>;
|
package/lib/Constants.js
CHANGED
@@ -12,7 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.findAssociatedTokenAddress = exports.findVaultAddress = exports.getVaultTypeOracleAccountPublicKey = exports.getVaultTypeAccountPublicKey = exports.getPoolPublicKeyForMint = exports.getHedgeMintPublicKey = exports.getVaultSystemStatePublicKey = exports.getUshMintPublicKey = exports.getLiquidationPoolUshAccountPublicKey = exports.getLiquidationPoolStatePublicKey = exports.CHAINLINK_SOL_USD_PUBLICKEY = exports.CHAINLINK_SOL_USD_ID = exports.HEDGE_PROGRAM_PUBLICKEY = exports.HEDGE_PROGRAM_ID = void 0;
|
13
13
|
const spl_token_1 = require("@solana/spl-token");
|
14
14
|
const web3_js_1 = require("@solana/web3.js");
|
15
|
-
exports.HEDGE_PROGRAM_ID = '
|
15
|
+
exports.HEDGE_PROGRAM_ID = 'HDG4FDos8fyrB79qMCe98gaFjNEy5kpxGNjMc5V8M6TJ';
|
16
16
|
exports.HEDGE_PROGRAM_PUBLICKEY = new web3_js_1.PublicKey(exports.HEDGE_PROGRAM_ID);
|
17
17
|
exports.CHAINLINK_SOL_USD_ID = 'FmAmfoyPXiA8Vhhe6MZTr3U6rZfEZ1ctEHay1ysqCqcf';
|
18
18
|
exports.CHAINLINK_SOL_USD_PUBLICKEY = new web3_js_1.PublicKey(exports.CHAINLINK_SOL_USD_ID);
|
package/lib/idl/vault.js
CHANGED
@@ -1805,18 +1805,6 @@ exports.IDL = {
|
|
1805
1805
|
"type": {
|
1806
1806
|
"kind": "struct",
|
1807
1807
|
"fields": [
|
1808
|
-
{
|
1809
|
-
"name": "owner",
|
1810
|
-
"type": "publicKey"
|
1811
|
-
},
|
1812
|
-
{
|
1813
|
-
"name": "pool",
|
1814
|
-
"type": "publicKey"
|
1815
|
-
},
|
1816
|
-
{
|
1817
|
-
"name": "deposited",
|
1818
|
-
"type": "u64"
|
1819
|
-
},
|
1820
1808
|
{
|
1821
1809
|
"name": "startHedgeRewardAccumulator",
|
1822
1810
|
"type": "u128"
|
@@ -1855,6 +1843,18 @@ exports.IDL = {
|
|
1855
1843
|
"name": "closedRewardedTokens",
|
1856
1844
|
"type": "u64"
|
1857
1845
|
},
|
1846
|
+
{
|
1847
|
+
"name": "deposited",
|
1848
|
+
"type": "u64"
|
1849
|
+
},
|
1850
|
+
{
|
1851
|
+
"name": "owner",
|
1852
|
+
"type": "publicKey"
|
1853
|
+
},
|
1854
|
+
{
|
1855
|
+
"name": "pool",
|
1856
|
+
"type": "publicKey"
|
1857
|
+
},
|
1858
1858
|
{
|
1859
1859
|
"name": "state",
|
1860
1860
|
"type": {
|
@@ -14,17 +14,17 @@ const spl_token_1 = require("@solana/spl-token");
|
|
14
14
|
const web3_js_1 = require("@solana/web3.js");
|
15
15
|
const Errors_1 = require("../utils/Errors");
|
16
16
|
const Constants_1 = require("../Constants");
|
17
|
-
function claimStakingPoolPosition(program, poolPosition, payer, collateralType) {
|
17
|
+
function claimStakingPoolPosition(program, provider, poolPosition, payer, collateralType) {
|
18
18
|
return __awaiter(this, void 0, void 0, function* () {
|
19
19
|
const vaultTypeAccount = yield (0, Constants_1.getVaultTypeAccountPublicKey)(collateralType);
|
20
20
|
const vaultTypeAccountInfo = yield program.account.vaultType.fetch(vaultTypeAccount);
|
21
21
|
const collateralMint = vaultTypeAccountInfo.collateralMint;
|
22
22
|
const stakedTokenMint = yield (0, Constants_1.getHedgeMintPublicKey)();
|
23
23
|
const [feePool] = yield (0, Constants_1.getPoolPublicKeyForMint)(stakedTokenMint);
|
24
|
-
const feePoolAssociatedTokenAccount = yield (0, spl_token_1.getOrCreateAssociatedTokenAccount)(
|
25
|
-
const payerAssociatedTokenAccount = yield (0, spl_token_1.getOrCreateAssociatedTokenAccount)(
|
24
|
+
const feePoolAssociatedTokenAccount = yield (0, spl_token_1.getOrCreateAssociatedTokenAccount)(provider.connection, payer, collateralMint, feePool, true);
|
25
|
+
const payerAssociatedTokenAccount = yield (0, spl_token_1.getOrCreateAssociatedTokenAccount)(provider.connection, payer, collateralMint, payer.publicKey);
|
26
26
|
const transaction = new web3_js_1.Transaction().add(yield claimStakingPoolPositionInstruction(program, feePool, feePoolAssociatedTokenAccount.address, stakedTokenMint, vaultTypeAccount, collateralMint, poolPosition, payer.publicKey, payerAssociatedTokenAccount.address));
|
27
|
-
yield (0, web3_js_1.sendAndConfirmTransaction)(
|
27
|
+
yield (0, web3_js_1.sendAndConfirmTransaction)(provider.connection, transaction, [payer]).catch(Errors_1.parseAnchorErrors);
|
28
28
|
return payerAssociatedTokenAccount.address;
|
29
29
|
});
|
30
30
|
}
|
package/package.json
CHANGED
package/src/Constants.ts
CHANGED
@@ -4,7 +4,7 @@ import {
|
|
4
4
|
} from '@solana/spl-token'
|
5
5
|
import { PublicKey } from '@solana/web3.js'
|
6
6
|
|
7
|
-
export const HEDGE_PROGRAM_ID = '
|
7
|
+
export const HEDGE_PROGRAM_ID = 'HDG4FDos8fyrB79qMCe98gaFjNEy5kpxGNjMc5V8M6TJ'
|
8
8
|
export const HEDGE_PROGRAM_PUBLICKEY = new PublicKey(HEDGE_PROGRAM_ID)
|
9
9
|
|
10
10
|
export const CHAINLINK_SOL_USD_ID =
|
package/src/idl/vault.ts
CHANGED
@@ -1802,18 +1802,6 @@ export type Vault = {
|
|
1802
1802
|
"type": {
|
1803
1803
|
"kind": "struct",
|
1804
1804
|
"fields": [
|
1805
|
-
{
|
1806
|
-
"name": "owner",
|
1807
|
-
"type": "publicKey"
|
1808
|
-
},
|
1809
|
-
{
|
1810
|
-
"name": "pool",
|
1811
|
-
"type": "publicKey"
|
1812
|
-
},
|
1813
|
-
{
|
1814
|
-
"name": "deposited",
|
1815
|
-
"type": "u64"
|
1816
|
-
},
|
1817
1805
|
{
|
1818
1806
|
"name": "startHedgeRewardAccumulator",
|
1819
1807
|
"type": "u128"
|
@@ -1852,6 +1840,18 @@ export type Vault = {
|
|
1852
1840
|
"name": "closedRewardedTokens",
|
1853
1841
|
"type": "u64"
|
1854
1842
|
},
|
1843
|
+
{
|
1844
|
+
"name": "deposited",
|
1845
|
+
"type": "u64"
|
1846
|
+
},
|
1847
|
+
{
|
1848
|
+
"name": "owner",
|
1849
|
+
"type": "publicKey"
|
1850
|
+
},
|
1851
|
+
{
|
1852
|
+
"name": "pool",
|
1853
|
+
"type": "publicKey"
|
1854
|
+
},
|
1855
1855
|
{
|
1856
1856
|
"name": "state",
|
1857
1857
|
"type": {
|
@@ -4373,18 +4373,6 @@ export const IDL: Vault = {
|
|
4373
4373
|
"type": {
|
4374
4374
|
"kind": "struct",
|
4375
4375
|
"fields": [
|
4376
|
-
{
|
4377
|
-
"name": "owner",
|
4378
|
-
"type": "publicKey"
|
4379
|
-
},
|
4380
|
-
{
|
4381
|
-
"name": "pool",
|
4382
|
-
"type": "publicKey"
|
4383
|
-
},
|
4384
|
-
{
|
4385
|
-
"name": "deposited",
|
4386
|
-
"type": "u64"
|
4387
|
-
},
|
4388
4376
|
{
|
4389
4377
|
"name": "startHedgeRewardAccumulator",
|
4390
4378
|
"type": "u128"
|
@@ -4423,6 +4411,18 @@ export const IDL: Vault = {
|
|
4423
4411
|
"name": "closedRewardedTokens",
|
4424
4412
|
"type": "u64"
|
4425
4413
|
},
|
4414
|
+
{
|
4415
|
+
"name": "deposited",
|
4416
|
+
"type": "u64"
|
4417
|
+
},
|
4418
|
+
{
|
4419
|
+
"name": "owner",
|
4420
|
+
"type": "publicKey"
|
4421
|
+
},
|
4422
|
+
{
|
4423
|
+
"name": "pool",
|
4424
|
+
"type": "publicKey"
|
4425
|
+
},
|
4426
4426
|
{
|
4427
4427
|
"name": "state",
|
4428
4428
|
"type": {
|
@@ -21,6 +21,7 @@ import { Vault } from 'idl/vault'
|
|
21
21
|
|
22
22
|
export async function claimStakingPoolPosition(
|
23
23
|
program: Program<Vault>,
|
24
|
+
provider: Provider,
|
24
25
|
poolPosition: PublicKey,
|
25
26
|
payer: Signer,
|
26
27
|
collateralType: string
|
@@ -31,14 +32,14 @@ export async function claimStakingPoolPosition(
|
|
31
32
|
const stakedTokenMint = await getHedgeMintPublicKey()
|
32
33
|
const [feePool] = await getPoolPublicKeyForMint(stakedTokenMint)
|
33
34
|
const feePoolAssociatedTokenAccount = await getOrCreateAssociatedTokenAccount(
|
34
|
-
|
35
|
+
provider.connection,
|
35
36
|
payer,
|
36
37
|
collateralMint,
|
37
38
|
feePool,
|
38
39
|
true
|
39
40
|
)
|
40
41
|
const payerAssociatedTokenAccount = await getOrCreateAssociatedTokenAccount(
|
41
|
-
|
42
|
+
provider.connection,
|
42
43
|
payer,
|
43
44
|
collateralMint,
|
44
45
|
payer.publicKey
|
@@ -57,7 +58,7 @@ export async function claimStakingPoolPosition(
|
|
57
58
|
payerAssociatedTokenAccount.address
|
58
59
|
)
|
59
60
|
)
|
60
|
-
await sendAndConfirmTransaction(
|
61
|
+
await sendAndConfirmTransaction(provider.connection, transaction, [payer]).catch(parseAnchorErrors)
|
61
62
|
return payerAssociatedTokenAccount.address
|
62
63
|
}
|
63
64
|
|