@jup-ag/lend 0.1.9 → 0.1.10-beta.1
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/borrow/index.d.mts +8 -5
- package/dist/borrow/index.d.ts +8 -5
- package/dist/borrow/index.mjs +4 -5
- package/dist/earn/index.d.mts +25 -15
- package/dist/earn/index.d.ts +25 -15
- package/dist/earn/index.mjs +2247 -84
- package/dist/flashloan/index.d.mts +11 -7
- package/dist/flashloan/index.d.ts +11 -7
- package/dist/flashloan/index.mjs +759 -31
- package/dist/index.d.mts +39 -36
- package/dist/index.d.ts +39 -36
- package/dist/index.mjs +5 -6
- package/dist/refinance/index.d.mts +1 -1
- package/dist/refinance/index.d.ts +1 -1
- package/dist/refinance/index.mjs +4 -5
- package/dist/shared/lend.0Rjy1SRf.mjs +70 -0
- package/dist/shared/lend.BKZOr4CM.mjs +67 -0
- package/dist/shared/{lend.BzG5ldOV.mjs → lend.BjhqzIWk.mjs} +17 -16
- package/dist/shared/{lend.B1GEdPEJ.d.mts → lend.DTV5bfSW.d.mts} +10 -7
- package/dist/shared/{lend.B1GEdPEJ.d.ts → lend.DTV5bfSW.d.ts} +10 -7
- package/dist/shared/lend.TsM0oFXS.mjs +7900 -0
- package/dist/shared/lend.tU-yHdcH.mjs +204 -0
- package/package.json +1 -1
- package/dist/shared/lend.BaZsInAi.mjs +0 -3020
- package/dist/shared/lend.CioR9-te.mjs +0 -5
- package/dist/shared/lend.Cr2l14_0.mjs +0 -741
- package/dist/shared/lend.Cw-khlBI.mjs +0 -5014
- package/dist/shared/lend.DS0KoPpL.mjs +0 -2175
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import { PublicKey } from '@solana/web3.js';
|
|
2
|
+
import { getAssociatedTokenAddressSync } from '@solana/spl-token';
|
|
3
|
+
import BN from 'bn.js';
|
|
4
|
+
|
|
5
|
+
const MPL_TOKEN_METADATA_PROGRAM_ID = new PublicKey(
|
|
6
|
+
"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"
|
|
7
|
+
);
|
|
8
|
+
const getVaultsProgramId = (market) => {
|
|
9
|
+
return market === "ethena" ? new PublicKey("jupo974WCqAUMD3RtpayTap1me7StQCWtEkBbDb6Ba3") : new PublicKey("jupr81YtYssSyPt8jbnGuiWon5f6x9TcDEFxYe3Bdzi");
|
|
10
|
+
};
|
|
11
|
+
const getLiquidityProgramId = (market) => {
|
|
12
|
+
return market === "ethena" ? new PublicKey("jup6QF1sNDGpkkcu6F4qaFHcRBmnSS1VgyB4uFbBvNS") : new PublicKey("jupeiUmn818Jg1ekPURTpr4mFo29p46vygyykFJ3wZC");
|
|
13
|
+
};
|
|
14
|
+
const getVaultConfig = (vaultId, market) => {
|
|
15
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
16
|
+
[Buffer.from("vault_config"), new BN(vaultId).toArrayLike(Buffer, "le", 2)],
|
|
17
|
+
getVaultsProgramId(market)
|
|
18
|
+
);
|
|
19
|
+
return pda;
|
|
20
|
+
};
|
|
21
|
+
const getVaultMetadata = (vaultId, market) => {
|
|
22
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
23
|
+
[
|
|
24
|
+
Buffer.from("vault_metadata"),
|
|
25
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2)
|
|
26
|
+
],
|
|
27
|
+
getVaultsProgramId(market)
|
|
28
|
+
);
|
|
29
|
+
return pda;
|
|
30
|
+
};
|
|
31
|
+
const getVaultAdmin = (market) => {
|
|
32
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
33
|
+
[Buffer.from("vault_admin")],
|
|
34
|
+
getVaultsProgramId(market)
|
|
35
|
+
);
|
|
36
|
+
return pda;
|
|
37
|
+
};
|
|
38
|
+
const getVaultState = (vaultId, market) => {
|
|
39
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
40
|
+
[Buffer.from("vault_state"), new BN(vaultId).toArrayLike(Buffer, "le", 2)],
|
|
41
|
+
getVaultsProgramId(market)
|
|
42
|
+
);
|
|
43
|
+
return pda;
|
|
44
|
+
};
|
|
45
|
+
const getLiquidity = (market) => {
|
|
46
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
47
|
+
[Buffer.from("liquidity")],
|
|
48
|
+
getLiquidityProgramId(market)
|
|
49
|
+
);
|
|
50
|
+
return pda;
|
|
51
|
+
};
|
|
52
|
+
const getBranch = (vaultId, branchId, market) => {
|
|
53
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
54
|
+
[
|
|
55
|
+
Buffer.from("branch"),
|
|
56
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
57
|
+
new BN(branchId).toArrayLike(Buffer, "le", 4)
|
|
58
|
+
],
|
|
59
|
+
getVaultsProgramId(market)
|
|
60
|
+
);
|
|
61
|
+
return pda;
|
|
62
|
+
};
|
|
63
|
+
const getPositionMetadata = (vaultId, positionId, market) => {
|
|
64
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
65
|
+
[
|
|
66
|
+
Buffer.from("metadata"),
|
|
67
|
+
new PublicKey(MPL_TOKEN_METADATA_PROGRAM_ID).toBuffer(),
|
|
68
|
+
getPositionMint(vaultId, positionId, market).toBuffer()
|
|
69
|
+
],
|
|
70
|
+
new PublicKey(MPL_TOKEN_METADATA_PROGRAM_ID)
|
|
71
|
+
);
|
|
72
|
+
return pda;
|
|
73
|
+
};
|
|
74
|
+
const getPosition = (vaultId, positionId, market) => {
|
|
75
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
76
|
+
[
|
|
77
|
+
Buffer.from("position"),
|
|
78
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
79
|
+
new BN(positionId).toArrayLike(Buffer, "le", 4)
|
|
80
|
+
],
|
|
81
|
+
getVaultsProgramId(market)
|
|
82
|
+
);
|
|
83
|
+
return pda;
|
|
84
|
+
};
|
|
85
|
+
const MAX_TICK = 16383;
|
|
86
|
+
const getTick = (vaultId, tick, market) => {
|
|
87
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
88
|
+
[
|
|
89
|
+
Buffer.from("tick"),
|
|
90
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
91
|
+
new BN(tick + MAX_TICK).toArrayLike(Buffer, "le", 4)
|
|
92
|
+
],
|
|
93
|
+
getVaultsProgramId(market)
|
|
94
|
+
);
|
|
95
|
+
return pda;
|
|
96
|
+
};
|
|
97
|
+
const getTickIdLiquidation = (vaultId, tick, totalIds, market) => {
|
|
98
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
99
|
+
[
|
|
100
|
+
Buffer.from("tick_id_liquidation"),
|
|
101
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
102
|
+
new BN(tick + MAX_TICK).toArrayLike(Buffer, "le", 4),
|
|
103
|
+
new BN((totalIds + 2) / 3).toArrayLike(Buffer, "le", 4)
|
|
104
|
+
],
|
|
105
|
+
getVaultsProgramId(market)
|
|
106
|
+
);
|
|
107
|
+
return pda;
|
|
108
|
+
};
|
|
109
|
+
const getPositionMint = (vaultId, positionId, market) => {
|
|
110
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
111
|
+
[
|
|
112
|
+
Buffer.from("position_mint"),
|
|
113
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
114
|
+
new BN(positionId).toArrayLike(Buffer, "le", 4)
|
|
115
|
+
],
|
|
116
|
+
getVaultsProgramId(market)
|
|
117
|
+
);
|
|
118
|
+
return pda;
|
|
119
|
+
};
|
|
120
|
+
const getPositionTokenAccount = (vaultId, positionId, user, market) => {
|
|
121
|
+
return getAssociatedTokenAddressSync(
|
|
122
|
+
getPositionMint(vaultId, positionId, market),
|
|
123
|
+
user,
|
|
124
|
+
true
|
|
125
|
+
);
|
|
126
|
+
};
|
|
127
|
+
const getLiquidityReserve = (asset, market) => {
|
|
128
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
129
|
+
[Buffer.from("reserve"), asset.toBuffer()],
|
|
130
|
+
getLiquidityProgramId(market)
|
|
131
|
+
);
|
|
132
|
+
return pda;
|
|
133
|
+
};
|
|
134
|
+
const getRateModel = (asset, market) => {
|
|
135
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
136
|
+
[Buffer.from("rate_model"), asset.toBuffer()],
|
|
137
|
+
getLiquidityProgramId(market)
|
|
138
|
+
);
|
|
139
|
+
return pda;
|
|
140
|
+
};
|
|
141
|
+
const getClaimAccount = (asset, user, market) => {
|
|
142
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
143
|
+
[Buffer.from("user_claim"), user.toBuffer(), asset.toBuffer()],
|
|
144
|
+
getLiquidityProgramId(market)
|
|
145
|
+
);
|
|
146
|
+
return pda;
|
|
147
|
+
};
|
|
148
|
+
const getUserSupplyPosition = (asset, protocol, market) => {
|
|
149
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
150
|
+
[
|
|
151
|
+
Buffer.from("user_supply_position"),
|
|
152
|
+
asset.toBuffer(),
|
|
153
|
+
protocol.toBuffer()
|
|
154
|
+
],
|
|
155
|
+
getLiquidityProgramId(market)
|
|
156
|
+
);
|
|
157
|
+
return pda;
|
|
158
|
+
};
|
|
159
|
+
const getUserBorrowPosition = (asset, protocol, market) => {
|
|
160
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
161
|
+
[
|
|
162
|
+
Buffer.from("user_borrow_position"),
|
|
163
|
+
asset.toBuffer(),
|
|
164
|
+
protocol.toBuffer()
|
|
165
|
+
],
|
|
166
|
+
getLiquidityProgramId(market)
|
|
167
|
+
);
|
|
168
|
+
return pda;
|
|
169
|
+
};
|
|
170
|
+
const getTickHasDebt = (vaultId, index, market) => {
|
|
171
|
+
const [pda] = PublicKey.findProgramAddressSync(
|
|
172
|
+
[
|
|
173
|
+
Buffer.from("tick_has_debt"),
|
|
174
|
+
new BN(vaultId).toArrayLike(Buffer, "le", 2),
|
|
175
|
+
new BN(index).toArrayLike(Buffer, "le", 1)
|
|
176
|
+
],
|
|
177
|
+
getVaultsProgramId(market)
|
|
178
|
+
);
|
|
179
|
+
return pda;
|
|
180
|
+
};
|
|
181
|
+
|
|
182
|
+
const borrow = {
|
|
183
|
+
__proto__: null,
|
|
184
|
+
getBranch: getBranch,
|
|
185
|
+
getClaimAccount: getClaimAccount,
|
|
186
|
+
getLiquidity: getLiquidity,
|
|
187
|
+
getLiquidityReserve: getLiquidityReserve,
|
|
188
|
+
getPosition: getPosition,
|
|
189
|
+
getPositionMetadata: getPositionMetadata,
|
|
190
|
+
getPositionMint: getPositionMint,
|
|
191
|
+
getPositionTokenAccount: getPositionTokenAccount,
|
|
192
|
+
getRateModel: getRateModel,
|
|
193
|
+
getTick: getTick,
|
|
194
|
+
getTickHasDebt: getTickHasDebt,
|
|
195
|
+
getTickIdLiquidation: getTickIdLiquidation,
|
|
196
|
+
getUserBorrowPosition: getUserBorrowPosition,
|
|
197
|
+
getUserSupplyPosition: getUserSupplyPosition,
|
|
198
|
+
getVaultAdmin: getVaultAdmin,
|
|
199
|
+
getVaultConfig: getVaultConfig,
|
|
200
|
+
getVaultMetadata: getVaultMetadata,
|
|
201
|
+
getVaultState: getVaultState
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export { getTickHasDebt as a, borrow as b, getPosition as c, getTick as d, getTickIdLiquidation as e, getVaultConfig as f, getVaultAdmin as g, getBranch as h, getVaultState as i, getVaultMetadata as j, getLiquidity as k, getRateModel as l, getUserBorrowPosition as m, getUserSupplyPosition as n, getLiquidityReserve as o, getPositionTokenAccount as p, getPositionMetadata as q, getPositionMint as r, getClaimAccount as s };
|