@sonarwatch/portfolio-plugins 0.12.157 → 0.12.158
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +1422 -1418
- package/README.md +3 -3
- package/package.json +1 -1
- package/src/plugins/balancer/helpers/pools.js +21 -21
- package/src/plugins/meteora/dlmmPositionsFetcher.js +4 -5
- package/src/plugins/meteora/dlmmPositionsFetcher.js.map +1 -1
- package/src/plugins/raydium/getRaydiumCLMMPositions.js +66 -19
- package/src/plugins/raydium/getRaydiumCLMMPositions.js.map +1 -1
- package/src/plugins/raydium/helpers.d.ts +4 -0
- package/src/plugins/raydium/helpers.js +142 -1
- package/src/plugins/raydium/helpers.js.map +1 -1
- package/src/plugins/raydium/structs/clmms.d.ts +23 -2
- package/src/plugins/raydium/structs/clmms.js +21 -2
- package/src/plugins/raydium/structs/clmms.js.map +1 -1
- package/src/plugins/raydium/types.d.ts +125 -0
- package/src/plugins/raydium/types.js.map +1 -1
- package/src/plugins/sushiswap/helpers.js +24 -24
- package/src/plugins/uniswap-v2/helpers.js +22 -22
- package/src/plugins/zeta/airdropFetcher.js +14 -14
- package/src/utils/misc/toBN.d.ts +1 -1
- package/src/utils/misc/toBN.js +4 -1
- package/src/utils/misc/toBN.js.map +1 -1
- package/src/utils/sei/constants.js +8 -8
- package/src/utils/sei/getQueryBalanceByOwner.js +4 -4
package/README.md
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
# @sonarwatch/portfolio-plugins
|
2
|
-
|
3
|
-
This library is @sonarwatch/portfolio-plugins
|
1
|
+
# @sonarwatch/portfolio-plugins
|
2
|
+
|
3
|
+
This library is @sonarwatch/portfolio-plugins
|
package/package.json
CHANGED
@@ -36,27 +36,27 @@ exports.getBalancerPoolsV2 = void 0;
|
|
36
36
|
const graphql_request_1 = __importStar(require("graphql-request"));
|
37
37
|
function getBalancerPoolsV2(url) {
|
38
38
|
return __awaiter(this, void 0, void 0, function* () {
|
39
|
-
const query = (0, graphql_request_1.gql) `
|
40
|
-
query pools {
|
41
|
-
pools(
|
42
|
-
first: 1000
|
43
|
-
orderBy: totalLiquidity
|
44
|
-
orderDirection: desc
|
45
|
-
where: { totalLiquidity_gt: "500" }
|
46
|
-
) {
|
47
|
-
id
|
48
|
-
address
|
49
|
-
symbol
|
50
|
-
totalLiquidity
|
51
|
-
totalShares
|
52
|
-
tokens {
|
53
|
-
balance
|
54
|
-
decimals
|
55
|
-
symbol
|
56
|
-
address
|
57
|
-
}
|
58
|
-
}
|
59
|
-
}
|
39
|
+
const query = (0, graphql_request_1.gql) `
|
40
|
+
query pools {
|
41
|
+
pools(
|
42
|
+
first: 1000
|
43
|
+
orderBy: totalLiquidity
|
44
|
+
orderDirection: desc
|
45
|
+
where: { totalLiquidity_gt: "500" }
|
46
|
+
) {
|
47
|
+
id
|
48
|
+
address
|
49
|
+
symbol
|
50
|
+
totalLiquidity
|
51
|
+
totalShares
|
52
|
+
tokens {
|
53
|
+
balance
|
54
|
+
decimals
|
55
|
+
symbol
|
56
|
+
address
|
57
|
+
}
|
58
|
+
}
|
59
|
+
}
|
60
60
|
`;
|
61
61
|
const res = yield (0, graphql_request_1.default)(url, query);
|
62
62
|
const pools = res.pools;
|
@@ -120,7 +120,6 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
|
|
120
120
|
const positionData = (0, dlmmHelper_1.processPosition)(constants_1.dlmmProgramId, positionVersion, lbPairAcc, account, baseTokenDecimal, quoteTokenDecimal, lowerBinArray, upperBinArray);
|
121
121
|
const assets = [];
|
122
122
|
const rewardAssets = [];
|
123
|
-
const tags = [];
|
124
123
|
if (positionData &&
|
125
124
|
(!positionData.totalXAmount.isZero() ||
|
126
125
|
!positionData.totalYAmount.isZero())) {
|
@@ -142,6 +141,10 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
|
|
142
141
|
rewardAssets.push((0, tokenPriceToAssetToken_1.default)(tokenPriceRewardY.address, positionData.rewardTwo
|
143
142
|
.dividedBy(Math.pow(10, tokenPriceRewardY.decimals))
|
144
143
|
.toNumber(), portfolio_core_1.NetworkId.solana, tokenPriceRewardY));
|
144
|
+
if (positionData.totalXAmount.isZero())
|
145
|
+
assets[0].attributes.tags = ['Out Of Range'];
|
146
|
+
if (positionData.totalYAmount.isZero())
|
147
|
+
assets[1].attributes.tags = ['Out Of Range'];
|
145
148
|
const liquidities = [
|
146
149
|
{
|
147
150
|
assets,
|
@@ -152,9 +155,6 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
|
|
152
155
|
yields: [],
|
153
156
|
},
|
154
157
|
];
|
155
|
-
const activeBinInPosition = positionData.positionBinData.find((bin) => bin.binXAmount !== '0' && bin.binYAmount !== '0');
|
156
|
-
if (!activeBinInPosition)
|
157
|
-
tags.push('Out Of Range');
|
158
158
|
elements.push({
|
159
159
|
type: portfolio_core_1.PortfolioElementType.liquidity,
|
160
160
|
label: 'LiquidityPool',
|
@@ -162,7 +162,6 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
|
|
162
162
|
platformId: constants_1.platformId,
|
163
163
|
value: (0, portfolio_core_1.getUsdValueSum)(liquidities.map((a) => a.value)),
|
164
164
|
name: 'DLMM',
|
165
|
-
tags,
|
166
165
|
data: {
|
167
166
|
liquidities,
|
168
167
|
},
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"dlmmPositionsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/meteora/dlmmPositionsFetcher.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"dlmmPositionsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/meteora/dlmmPositionsFetcher.ts"],"names":[],"mappings":"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"}
|
@@ -21,6 +21,7 @@ const solana_1 = require("../../utils/solana");
|
|
21
21
|
const clients_1 = require("../../utils/clients");
|
22
22
|
const clmms_1 = require("./structs/clmms");
|
23
23
|
const tokenAmountFromLiquidity_1 = require("../../utils/clmm/tokenAmountFromLiquidity");
|
24
|
+
const helpers_1 = require("./helpers");
|
24
25
|
function getRaydiumCLMMPositions(cache, nfts) {
|
25
26
|
return __awaiter(this, void 0, void 0, function* () {
|
26
27
|
const client = (0, clients_1.getClientSolana)();
|
@@ -41,8 +42,36 @@ function getRaydiumCLMMPositions(cache, nfts) {
|
|
41
42
|
prefix: constants_1.poolStatesPrefix,
|
42
43
|
networkId: portfolio_core_1.NetworkId.solana,
|
43
44
|
});
|
44
|
-
const
|
45
|
-
|
45
|
+
const mints = new Set();
|
46
|
+
personalPositionsInfo.forEach((personalPositionInfo, index) => {
|
47
|
+
if (!personalPositionInfo)
|
48
|
+
return;
|
49
|
+
const poolStateInfo = poolStatesInfo[index];
|
50
|
+
if (!poolStateInfo)
|
51
|
+
return;
|
52
|
+
mints.add(poolStateInfo.tokenMint0.toString());
|
53
|
+
mints.add(poolStateInfo.tokenMint1.toString());
|
54
|
+
poolStateInfo.rewardInfos.forEach((ri) => {
|
55
|
+
if (ri.tokenMint.toString() !== '11111111111111111111111111111111') {
|
56
|
+
mints.add(ri.tokenMint.toString());
|
57
|
+
}
|
58
|
+
});
|
59
|
+
});
|
60
|
+
const [tickArrays, tokenPrices] = yield Promise.all([
|
61
|
+
Promise.all(personalPositionsInfo.map((personalPositionInfo, index) => {
|
62
|
+
if (!personalPositionInfo)
|
63
|
+
return [];
|
64
|
+
const poolStateInfo = poolStatesInfo[index];
|
65
|
+
if (!poolStateInfo)
|
66
|
+
return [];
|
67
|
+
return (0, solana_1.getParsedMultipleAccountsInfo)(client, clmms_1.tickArrayStatetruct, [
|
68
|
+
(0, helpers_1.getTickArrayAddress)(constants_1.raydiumProgram.toString(), poolStateInfo.pubkey.toString(), personalPositionInfo.tickLowerIndex, poolStateInfo.tickSpacing),
|
69
|
+
(0, helpers_1.getTickArrayAddress)(constants_1.raydiumProgram.toString(), poolStateInfo.pubkey.toString(), personalPositionInfo.tickUpperIndex, poolStateInfo.tickSpacing),
|
70
|
+
]);
|
71
|
+
})),
|
72
|
+
cache.getTokenPricesAsMap([...Array.from(mints)], portfolio_core_1.NetworkId.solana),
|
73
|
+
]);
|
74
|
+
const liquidities = [];
|
46
75
|
for (let index = 0; index < personalPositionsInfo.length; index++) {
|
47
76
|
const poolStateInfo = poolStatesInfo[index];
|
48
77
|
if (!poolStateInfo)
|
@@ -57,31 +86,49 @@ function getRaydiumCLMMPositions(cache, nfts) {
|
|
57
86
|
const { tokenAmountA, tokenAmountB } = (0, tokenAmountFromLiquidity_1.getTokenAmountsFromLiquidity)(personalPositionInfo.liquidity, poolStateInfo.tickCurrent, personalPositionInfo.tickLowerIndex, personalPositionInfo.tickUpperIndex, false);
|
58
87
|
if (!tokenAmountA || !tokenAmountB)
|
59
88
|
continue;
|
60
|
-
const tokenPriceA =
|
61
|
-
|
62
|
-
|
63
|
-
const assetTokenA = (0, tokenPriceToAssetToken_1.default)(poolStateInfo.tokenMint0.toString(), tokenAmountA.dividedBy(Math.pow(10, tokenPriceA.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, tokenPriceA);
|
64
|
-
const tokenPriceB = yield cache.getTokenPrice(poolStateInfo.tokenMint1.toString(), portfolio_core_1.NetworkId.solana);
|
65
|
-
if (!tokenPriceB)
|
89
|
+
const tokenPriceA = tokenPrices.get(poolStateInfo.tokenMint0.toString());
|
90
|
+
const tokenPriceB = tokenPrices.get(poolStateInfo.tokenMint1.toString());
|
91
|
+
if (!tokenPriceA || !tokenPriceB)
|
66
92
|
continue;
|
67
|
-
const
|
93
|
+
const assetTokenA = (0, tokenPriceToAssetToken_1.default)(tokenPriceA.address, tokenAmountA.dividedBy(Math.pow(10, tokenPriceA.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, tokenPriceA);
|
94
|
+
const assetTokenB = (0, tokenPriceToAssetToken_1.default)(tokenPriceB.address, tokenAmountB.dividedBy(Math.pow(10, tokenPriceB.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, tokenPriceB);
|
68
95
|
if (!assetTokenB ||
|
69
96
|
!assetTokenA ||
|
70
97
|
assetTokenB.value === null ||
|
71
98
|
assetTokenA.value === null)
|
72
99
|
continue;
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
100
|
+
if (tokenAmountA.isZero())
|
101
|
+
assetTokenA.attributes.tags = ['Out Of Range'];
|
102
|
+
if (tokenAmountB.isZero())
|
103
|
+
assetTokenB.attributes.tags = ['Out Of Range'];
|
104
|
+
const rewardAssets = [];
|
105
|
+
const rewardBalances = (0, helpers_1.getRewardBalance)(personalPositionInfo, poolStateInfo, tickArrays[index]);
|
106
|
+
rewardBalances.forEach((rewardBalance, i) => {
|
107
|
+
if (rewardBalance.isZero() ||
|
108
|
+
poolStateInfo.rewardInfos[i].tokenMint.toString() ===
|
109
|
+
'11111111111111111111111111111111')
|
110
|
+
return;
|
111
|
+
const rewardTokenPrice = tokenPrices.get(poolStateInfo.rewardInfos[i].tokenMint.toString());
|
112
|
+
if (!rewardTokenPrice)
|
113
|
+
return;
|
114
|
+
rewardAssets.push((0, tokenPriceToAssetToken_1.default)(poolStateInfo.rewardInfos[i].tokenMint.toString(), rewardBalance.dividedBy(Math.pow(10, rewardTokenPrice.decimals)).toNumber(), portfolio_core_1.NetworkId.solana, rewardTokenPrice));
|
115
|
+
});
|
116
|
+
const assets = [assetTokenA, assetTokenB];
|
117
|
+
const assetsValue = (0, portfolio_core_1.getUsdValueSum)(assets.map((a) => a.value));
|
118
|
+
const rewardAssetsValue = (0, portfolio_core_1.getUsdValueSum)(rewardAssets.map((a) => a.value));
|
119
|
+
const value = (0, portfolio_core_1.getUsdValueSum)([...assets, ...rewardAssets].map((a) => a.value));
|
120
|
+
if (!value)
|
121
|
+
continue;
|
122
|
+
liquidities.push({
|
123
|
+
assets,
|
124
|
+
assetsValue,
|
125
|
+
rewardAssets,
|
126
|
+
rewardAssetsValue,
|
79
127
|
value,
|
80
128
|
yields: [],
|
81
129
|
});
|
82
|
-
totalLiquidityValue += value;
|
83
130
|
}
|
84
|
-
if (
|
131
|
+
if (liquidities.length === 0)
|
85
132
|
return [];
|
86
133
|
const elements = [];
|
87
134
|
elements.push({
|
@@ -90,9 +137,9 @@ function getRaydiumCLMMPositions(cache, nfts) {
|
|
90
137
|
platformId: constants_1.platformId,
|
91
138
|
label: 'LiquidityPool',
|
92
139
|
name: 'Concentrated',
|
93
|
-
value:
|
140
|
+
value: (0, portfolio_core_1.getUsdValueSum)(liquidities.map((a) => a.value)),
|
94
141
|
data: {
|
95
|
-
liquidities
|
142
|
+
liquidities,
|
96
143
|
},
|
97
144
|
});
|
98
145
|
return elements;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getRaydiumCLMMPositions.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/raydium/getRaydiumCLMMPositions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+
|
1
|
+
{"version":3,"file":"getRaydiumCLMMPositions.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/raydium/getRaydiumCLMMPositions.ts"],"names":[],"mappings":"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"}
|
@@ -2,6 +2,8 @@ import BigNumber from 'bignumber.js';
|
|
2
2
|
import BN from 'bn.js';
|
3
3
|
import { PortfolioAssetCollectible, PortfolioAssetToken, TokenPrice, Yield } from '@sonarwatch/portfolio-core';
|
4
4
|
import { PublicKey } from '@solana/web3.js';
|
5
|
+
import { PersonalPositionState, PoolState, TickArrayState } from './structs/clmms';
|
6
|
+
import { ParsedAccount } from '../../utils/solana';
|
5
7
|
export declare function isARaydiumPosition(nft: PortfolioAssetCollectible): boolean;
|
6
8
|
export declare function raydiumTickToPriceX64(tick: number): BN;
|
7
9
|
export declare function getRaydiumTokenAmountsFromLiquidity(sqrtPriceCurrentX64: BigNumber, sqrtPriceX64A: BigNumber, sqrtPriceX64B: BigNumber, liquidity: BigNumber, roundUp: boolean): {
|
@@ -11,3 +13,5 @@ export declare function getRaydiumTokenAmountsFromLiquidity(sqrtPriceCurrentX64:
|
|
11
13
|
export declare function getStakePubKey(owner: string): PublicKey;
|
12
14
|
export declare function getFarmYield(rewardToken: TokenPrice, rewardPerBlock: BigNumber, tvl: number, slotsPerSec?: number): Yield;
|
13
15
|
export declare function getPendingAssetToken(depositBalance: BigNumber, rewardDebt: BigNumber, perShare: BigNumber, rewardToken: TokenPrice, multiplier: number | BigNumber): PortfolioAssetToken;
|
16
|
+
export declare const getTickArrayAddress: (programId: string, poolId: string, tickNumber: number, tickSpacing: number) => PublicKey;
|
17
|
+
export declare const getRewardBalance: (personalPositionInfo: ParsedAccount<PersonalPositionState>, poolStateInfo: ParsedAccount<PoolState>, tickArrays: (ParsedAccount<TickArrayState> | null)[]) => BigNumber[];
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.getPendingAssetToken = exports.getFarmYield = exports.getStakePubKey = exports.getRaydiumTokenAmountsFromLiquidity = exports.raydiumTickToPriceX64 = exports.isARaydiumPosition = void 0;
|
6
|
+
exports.getRewardBalance = exports.getTickArrayAddress = exports.getPendingAssetToken = exports.getFarmYield = exports.getStakePubKey = exports.getRaydiumTokenAmountsFromLiquidity = exports.raydiumTickToPriceX64 = exports.isARaydiumPosition = void 0;
|
7
7
|
/* eslint-disable eqeqeq */
|
8
8
|
/* eslint-disable @typescript-eslint/naming-convention */
|
9
9
|
/* eslint-disable no-underscore-dangle */
|
@@ -15,6 +15,7 @@ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
|
|
15
15
|
const web3_js_1 = require("@solana/web3.js");
|
16
16
|
const constants_1 = require("./constants");
|
17
17
|
const tokenPriceToAssetToken_1 = __importDefault(require("../../utils/misc/tokenPriceToAssetToken"));
|
18
|
+
const toBN_1 = require("../../utils/misc/toBN");
|
18
19
|
function isARaydiumPosition(nft) {
|
19
20
|
return nft.name === constants_1.positionsIdentifier;
|
20
21
|
}
|
@@ -119,6 +120,9 @@ function mulDivFloor(a, b, denominator) {
|
|
119
120
|
}
|
120
121
|
return a.mul(b).div(denominator);
|
121
122
|
}
|
123
|
+
function wrappingSubU128(n0, n1) {
|
124
|
+
return n0.add(Q128).sub(n1).mod(Q128);
|
125
|
+
}
|
122
126
|
function mulDivCeil(a, b, denominator) {
|
123
127
|
if (denominator.eq(ZERO)) {
|
124
128
|
throw new Error('division by 0');
|
@@ -201,4 +205,141 @@ function getPendingAssetToken(depositBalance, rewardDebt, perShare, rewardToken,
|
|
201
205
|
return (0, tokenPriceToAssetToken_1.default)(rewardToken.address, amount, portfolio_core_1.NetworkId.solana, rewardToken);
|
202
206
|
}
|
203
207
|
exports.getPendingAssetToken = getPendingAssetToken;
|
208
|
+
function getRewardGrowthInsideV2(tickCurrentIndex, tickLowerState, tickUpperState, rewardInfos) {
|
209
|
+
const rewardGrowthsInside = [];
|
210
|
+
for (let i = 0; i < rewardInfos.length; i++) {
|
211
|
+
let rewardGrowthsBelow = new bn_js_1.default(0);
|
212
|
+
if (tickLowerState.liquidityGross.eqn(0)) {
|
213
|
+
rewardGrowthsBelow = rewardInfos[i].rewardGrowthGlobalX64;
|
214
|
+
}
|
215
|
+
else if (tickCurrentIndex < tickLowerState.tick) {
|
216
|
+
rewardGrowthsBelow = rewardInfos[i].rewardGrowthGlobalX64.sub(tickLowerState.rewardGrowthsOutsideX64[i]);
|
217
|
+
}
|
218
|
+
else {
|
219
|
+
rewardGrowthsBelow = tickLowerState.rewardGrowthsOutsideX64[i];
|
220
|
+
}
|
221
|
+
let rewardGrowthsAbove = new bn_js_1.default(0);
|
222
|
+
if (tickUpperState.liquidityGross.eqn(0)) {
|
223
|
+
//
|
224
|
+
}
|
225
|
+
else if (tickCurrentIndex < tickUpperState.tick) {
|
226
|
+
rewardGrowthsAbove = tickUpperState.rewardGrowthsOutsideX64[i];
|
227
|
+
}
|
228
|
+
else {
|
229
|
+
rewardGrowthsAbove = rewardInfos[i].rewardGrowthGlobalX64.sub(tickUpperState.rewardGrowthsOutsideX64[i]);
|
230
|
+
}
|
231
|
+
rewardGrowthsInside.push(wrappingSubU128(wrappingSubU128(rewardInfos[i].rewardGrowthGlobalX64, rewardGrowthsBelow), rewardGrowthsAbove));
|
232
|
+
}
|
233
|
+
return rewardGrowthsInside;
|
234
|
+
}
|
235
|
+
const GetPositionRewardsV2 = (ammPool, positionState, tickLowerState, tickUpperState) => {
|
236
|
+
const rewards = [];
|
237
|
+
const rewardGrowthsInside = getRewardGrowthInsideV2(ammPool.tickCurrent, tickLowerState, tickUpperState, ammPool.rewardInfos);
|
238
|
+
for (let i = 0; i < rewardGrowthsInside.length; i++) {
|
239
|
+
const rewardGrowthInside = rewardGrowthsInside[i];
|
240
|
+
const currRewardInfo = positionState.rewardInfos[i];
|
241
|
+
const rewardGrowthDelta = wrappingSubU128(rewardGrowthInside, currRewardInfo.growthInsideLastX64);
|
242
|
+
const amountOwedDelta = mulDivFloor(rewardGrowthDelta, positionState.liquidity, Q64);
|
243
|
+
const rewardAmountOwed = currRewardInfo.rewardAmountOwed.add(amountOwedDelta);
|
244
|
+
rewards.push(rewardAmountOwed);
|
245
|
+
}
|
246
|
+
return rewards;
|
247
|
+
};
|
248
|
+
const getTickArrayAddress = (programId, poolId, tickNumber, tickSpacing) => getTickArrayAddressByTick(new web3_js_1.PublicKey(programId), new web3_js_1.PublicKey(poolId), tickNumber, tickSpacing);
|
249
|
+
exports.getTickArrayAddress = getTickArrayAddress;
|
250
|
+
const TICK_ARRAY_SIZE = 60;
|
251
|
+
function tickCount(tickSpacing) {
|
252
|
+
return TICK_ARRAY_SIZE * tickSpacing;
|
253
|
+
}
|
254
|
+
function getTickArrayBitIndex(tickIndex, tickSpacing) {
|
255
|
+
const ticksInArray = tickCount(tickSpacing);
|
256
|
+
let startIndex = tickIndex / ticksInArray;
|
257
|
+
if (tickIndex < 0 && tickIndex % ticksInArray != 0) {
|
258
|
+
startIndex = Math.ceil(startIndex) - 1;
|
259
|
+
}
|
260
|
+
else {
|
261
|
+
startIndex = Math.floor(startIndex);
|
262
|
+
}
|
263
|
+
return startIndex;
|
264
|
+
}
|
265
|
+
function getTickArrayStartIndexByTick(tickIndex, tickSpacing) {
|
266
|
+
return getTickArrayBitIndex(tickIndex, tickSpacing) * tickCount(tickSpacing);
|
267
|
+
}
|
268
|
+
const TICK_ARRAY_SEED = Buffer.from('tick_array', 'utf8');
|
269
|
+
function getPdaTickArrayAddress(programId, poolId, startIndex) {
|
270
|
+
return findProgramAddress([TICK_ARRAY_SEED, poolId.toBuffer(), i32ToBytes(startIndex)], programId);
|
271
|
+
}
|
272
|
+
function getTickArrayAddressByTick(programId, poolId, tickIndex, tickSpacing) {
|
273
|
+
const startIndex = getTickArrayStartIndexByTick(tickIndex, tickSpacing);
|
274
|
+
const { publicKey: tickArrayAddress } = getPdaTickArrayAddress(programId, poolId, startIndex);
|
275
|
+
return tickArrayAddress;
|
276
|
+
}
|
277
|
+
function i32ToBytes(num) {
|
278
|
+
const arr = new ArrayBuffer(4);
|
279
|
+
const view = new DataView(arr);
|
280
|
+
view.setInt32(0, num, false);
|
281
|
+
return new Uint8Array(arr);
|
282
|
+
}
|
283
|
+
function findProgramAddress(seeds, programId) {
|
284
|
+
const [publicKey, nonce] = web3_js_1.PublicKey.findProgramAddressSync(seeds, programId);
|
285
|
+
return { publicKey, nonce };
|
286
|
+
}
|
287
|
+
function getTickOffsetInArray(tickIndex, tickSpacing) {
|
288
|
+
if (tickIndex % tickSpacing != 0) {
|
289
|
+
throw new Error('tickIndex % tickSpacing not equal 0');
|
290
|
+
}
|
291
|
+
const startTickIndex = getTickArrayStartIndexByTick(tickIndex, tickSpacing);
|
292
|
+
const offsetInArray = Math.floor((tickIndex - startTickIndex) / tickSpacing);
|
293
|
+
if (offsetInArray < 0 || offsetInArray >= TICK_ARRAY_SIZE) {
|
294
|
+
throw new Error('tick offset in array overflow');
|
295
|
+
}
|
296
|
+
return offsetInArray;
|
297
|
+
}
|
298
|
+
const getRewardBalance = (personalPositionInfo, poolStateInfo, tickArrays) => {
|
299
|
+
const [tickArrayLower, tickArrayUpper] = tickArrays;
|
300
|
+
if (!tickArrayLower || !tickArrayUpper)
|
301
|
+
return [];
|
302
|
+
const tickLowerState = tickArrayLower &&
|
303
|
+
tickArrayLower.ticks[getTickOffsetInArray(personalPositionInfo.tickLowerIndex, poolStateInfo.tickSpacing)];
|
304
|
+
const tickUpperState = tickArrayUpper &&
|
305
|
+
tickArrayUpper.ticks[getTickOffsetInArray(personalPositionInfo.tickUpperIndex, poolStateInfo.tickSpacing)];
|
306
|
+
if (!tickLowerState || !tickUpperState)
|
307
|
+
return [];
|
308
|
+
return GetPositionRewardsV2({
|
309
|
+
tickCurrent: poolStateInfo.tickCurrent,
|
310
|
+
feeGrowthGlobalX64B: (0, toBN_1.toBN)(poolStateInfo.feeGrowthGlobal0X64),
|
311
|
+
rewardInfos: poolStateInfo.rewardInfos.map((ri) => ({
|
312
|
+
rewardGrowthGlobalX64: (0, toBN_1.toBN)(ri.rewardGrowthGlobalX64),
|
313
|
+
})),
|
314
|
+
}, {
|
315
|
+
liquidity: (0, toBN_1.toBN)(personalPositionInfo.liquidity),
|
316
|
+
rewardInfos: personalPositionInfo.rewardInfos.map((ri) => ({
|
317
|
+
growthInsideLastX64: (0, toBN_1.toBN)(ri.growthInsideLastX64),
|
318
|
+
rewardAmountOwed: (0, toBN_1.toBN)(ri.rewardAmountOwed),
|
319
|
+
})),
|
320
|
+
}, {
|
321
|
+
tick: tickLowerState.tick,
|
322
|
+
liquidityNet: (0, toBN_1.toBN)(tickLowerState.liquidityNet),
|
323
|
+
liquidityGross: (0, toBN_1.toBN)(tickLowerState.liquidityGross),
|
324
|
+
feeGrowthOutsideX64A: (0, toBN_1.toBN)(tickLowerState.feeGrowthOutsideX64A),
|
325
|
+
feeGrowthOutsideX64B: (0, toBN_1.toBN)(tickLowerState.feeGrowthOutsideX64B),
|
326
|
+
rewardGrowthsOutsideX64: [
|
327
|
+
(0, toBN_1.toBN)(tickLowerState.rewardGrowthsOutsideX640),
|
328
|
+
(0, toBN_1.toBN)(tickLowerState.rewardGrowthsOutsideX641),
|
329
|
+
(0, toBN_1.toBN)(tickLowerState.rewardGrowthsOutsideX642),
|
330
|
+
],
|
331
|
+
}, {
|
332
|
+
tick: tickUpperState.tick,
|
333
|
+
liquidityNet: (0, toBN_1.toBN)(tickUpperState.liquidityNet),
|
334
|
+
liquidityGross: (0, toBN_1.toBN)(tickUpperState.liquidityGross),
|
335
|
+
feeGrowthOutsideX64A: (0, toBN_1.toBN)(tickUpperState.feeGrowthOutsideX64A),
|
336
|
+
feeGrowthOutsideX64B: (0, toBN_1.toBN)(tickUpperState.feeGrowthOutsideX64B),
|
337
|
+
rewardGrowthsOutsideX64: [
|
338
|
+
(0, toBN_1.toBN)(tickUpperState.rewardGrowthsOutsideX640),
|
339
|
+
(0, toBN_1.toBN)(tickUpperState.rewardGrowthsOutsideX641),
|
340
|
+
(0, toBN_1.toBN)(tickUpperState.rewardGrowthsOutsideX642),
|
341
|
+
],
|
342
|
+
}).map((bn) => new bignumber_js_1.default(bn.toString(10)));
|
343
|
+
};
|
344
|
+
exports.getRewardBalance = getRewardBalance;
|
204
345
|
//# sourceMappingURL=helpers.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/raydium/helpers.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/raydium/helpers.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA2B;AAC3B,yDAAyD;AACzD,yCAAyC;AACzC,sCAAsC;AACtC,+BAA+B;AAC/B,gEAAqC;AACrC,kDAAuB;AACvB,+DAOoC;AACpC,6CAA4C;AAC5C,2CAAqE;AACrE,qGAA6E;AAE7E,gDAA6C;AAQ7C,SAAgB,kBAAkB,CAAC,GAA8B;IAC/D,OAAO,GAAG,CAAC,IAAI,KAAK,+BAAmB,CAAC;AAC1C,CAAC;AAFD,gDAEC;AAED,MAAM,IAAI,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC;AACvB,MAAM,GAAG,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC;AACtB,MAAM,GAAG,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/B,MAAM,IAAI,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjC,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC;AACzB,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC;AAE3B,SAAS,gBAAgB,CAAC,EAAM,EAAE,OAAe,EAAE,QAAgB;IACjE,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,aAAa,CAAC,GAAO,EAAE,KAAS;IACvC,OAAO,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;AACnD,CAAC;AAED,SAAgB,qBAAqB,CAAC,IAAY;IAChD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,IAAI,GAAG,QAAQ,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5C,IAAI,KAAK,GACP,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC,CAAC,IAAI,eAAE,CAAC,sBAAsB,CAAC;QAChC,CAAC,CAAC,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,eAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,IAAI,GAAG,CAAC;QAAE,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC;AACf,CAAC;AAtED,sDAsEC;AAED,SAAS,gBAAgB,CAAC,CAAK,EAAE,CAAK,EAAE,WAAe;IACrD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,CAAK,EAAE,CAAK,EAAE,WAAe;IAChD,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,eAAe,CAAC,EAAM,EAAE,EAAM;IACrC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,UAAU,CAAC,CAAK,EAAE,CAAK,EAAE,WAAe;IAC/C,IAAI,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,OAAO,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,4BAA4B,CACnC,aAAiB,EACjB,aAAiB,EACjB,SAAa,EACb,OAAgB;IAEhB,IAAI,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAEpD,OAAO,OAAO;QACZ,CAAC,CAAC,gBAAgB,CACd,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,EACjD,GAAG,EACH,aAAa,CACd;QACH,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,4BAA4B,CACnC,aAAiB,EACjB,aAAiB,EACjB,SAAa,EACb,OAAgB;IAEhB,IAAI,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,OAAO;QACZ,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC;QAC9D,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,CAAC;AACpE,CAAC;AAED,SAAgB,mCAAmC,CACjD,mBAA8B,EAC9B,aAAwB,EACxB,aAAwB,EACxB,SAAoB,EACpB,OAAgB;IAEhB,IAAI,aAAa,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3C,OAAO;YACL,YAAY,EAAE,IAAI,sBAAS,CACzB,4BAA4B,CAC1B,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAC5B,OAAO,CACR,CAAC,QAAQ,EAAE,CACb;YACD,YAAY,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;SAC/B,CAAC;IACJ,CAAC;IACD,IAAI,mBAAmB,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,sBAAS,CAC3B,4BAA4B,CAC1B,IAAI,eAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,EACtC,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAC5B,OAAO,CACR,CAAC,QAAQ,EAAE,CACb,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,sBAAS,CAC3B,4BAA4B,CAC1B,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC,EACtC,IAAI,eAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAC5B,OAAO,CACR,CAAC,QAAQ,EAAE,CACb,CAAC;QACF,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO;QACL,YAAY,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC;QAC9B,YAAY,EAAE,IAAI,sBAAS,CACzB,4BAA4B,CAC1B,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAChC,IAAI,eAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAC5B,OAAO,CACR,CAAC,QAAQ,EAAE,CACb;KACF,CAAC;AACJ,CAAC;AAtDD,kFAsDC;AAED,SAAgB,cAAc,CAAC,KAAa;IAC1C,OAAO,mBAAS,CAAC,sBAAsB,CACrC;QACE,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC,QAAQ,EAAE;QACxE,IAAI,mBAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;QAC/B,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,CAAC;KACvD,EACD,6BAAiB,CAClB,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AATD,wCASC;AAED,SAAgB,YAAY,CAC1B,WAAuB,EACvB,cAAyB,EACzB,GAAW,EACX,WAAW,GAAG,CAAC;IAEf,MAAM,GAAG,GAAG,cAAc;SACvB,GAAG,CAAC,SAAA,EAAE,EAAI,WAAW,CAAC,QAAQ,CAAA,CAAC;SAC/B,KAAK,CAAC,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC;SAC3D,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE,CAAC;IACd,OAAO;QACL,GAAG;QACH,GAAG,EAAE,IAAA,yBAAQ,EAAC,GAAG,CAAC;KACnB,CAAC;AACJ,CAAC;AAfD,oCAeC;AAED,SAAgB,oBAAoB,CAClC,cAAyB,EACzB,UAAqB,EACrB,QAAmB,EACnB,WAAuB,EACvB,UAA8B;IAE9B,MAAM,MAAM,GAAG,cAAc;SAC1B,KAAK,CAAC,QAAQ,CAAC;SACf,GAAG,CAAC,UAAU,CAAC;SACf,KAAK,CAAC,UAAU,CAAC;SACjB,GAAG,CAAC,SAAA,EAAE,EAAI,WAAW,CAAC,QAAQ,CAAA,CAAC;SAC/B,QAAQ,EAAE,CAAC;IACd,OAAO,IAAA,gCAAsB,EAC3B,WAAW,CAAC,OAAO,EACnB,MAAM,EACN,0BAAS,CAAC,MAAM,EAChB,WAAW,CACZ,CAAC;AACJ,CAAC;AAnBD,oDAmBC;AAED,SAAS,uBAAuB,CAC9B,gBAAwB,EACxB,cAAoB,EACpB,cAAoB,EACpB,WAAgE;IAEhE,MAAM,mBAAmB,GAAS,EAAE,CAAC;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,kBAAkB,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;QAC5D,CAAC;aAAM,IAAI,gBAAgB,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;YAClD,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAC3D,cAAc,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAC1C,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,kBAAkB,GAAG,cAAc,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,kBAAkB,GAAG,IAAI,eAAE,CAAC,CAAC,CAAC,CAAC;QACnC,IAAI,cAAc,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,EAAE;QACJ,CAAC;aAAM,IAAI,gBAAgB,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;YAClD,kBAAkB,GAAG,cAAc,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAC3D,cAAc,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,mBAAmB,CAAC,IAAI,CACtB,eAAe,CACb,eAAe,CACb,WAAW,CAAC,CAAC,CAAC,CAAC,qBAAqB,EACpC,kBAAkB,CACnB,EACD,kBAAkB,CACnB,CACF,CAAC;IACJ,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AACD,MAAM,oBAAoB,GAAG,CAC3B,OAEC,EACD,aAMC,EACD,cAAoB,EACpB,cAAoB,EACd,EAAE;IACR,MAAM,OAAO,GAAS,EAAE,CAAC;IACzB,MAAM,mBAAmB,GAAG,uBAAuB,CACjD,OAAO,CAAC,WAAW,EACnB,cAAc,EACd,cAAc,EACd,OAAO,CAAC,WAAW,CACpB,CAAC;IACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpD,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAClD,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAEpD,MAAM,iBAAiB,GAAG,eAAe,CACvC,kBAAkB,EAClB,cAAc,CAAC,mBAAmB,CACnC,CAAC;QACF,MAAM,eAAe,GAAG,WAAW,CACjC,iBAAiB,EACjB,aAAa,CAAC,SAAS,EACvB,GAAG,CACJ,CAAC;QACF,MAAM,gBAAgB,GACpB,cAAc,CAAC,gBAAgB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEK,MAAM,mBAAmB,GAAG,CACjC,SAAiB,EACjB,MAAc,EACd,UAAkB,EAClB,WAAmB,EACnB,EAAE,CACF,yBAAyB,CACvB,IAAI,mBAAS,CAAC,SAAS,CAAC,EACxB,IAAI,mBAAS,CAAC,MAAM,CAAC,EACrB,UAAU,EACV,WAAW,CACZ,CAAC;AAXS,QAAA,mBAAmB,uBAW5B;AAEJ,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,SAAS,CAAC,WAAmB;IACpC,OAAO,eAAe,GAAG,WAAW,CAAC;AACvC,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,WAAmB;IAClE,MAAM,YAAY,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,UAAU,GAAW,SAAS,GAAG,YAAY,CAAC;IAClD,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,YAAY,IAAI,CAAC,EAAE,CAAC;QACnD,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,4BAA4B,CACnC,SAAiB,EACjB,WAAmB;IAEnB,OAAO,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAE1D,SAAS,sBAAsB,CAC7B,SAAoB,EACpB,MAAiB,EACjB,UAAkB;IAKlB,OAAO,kBAAkB,CACvB,CAAC,eAAe,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,EAC5D,SAAS,CACV,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,SAAoB,EACpB,MAAiB,EACjB,SAAiB,EACjB,WAAmB;IAEnB,MAAM,UAAU,GAAG,4BAA4B,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,sBAAsB,CAC5D,SAAS,EACT,MAAM,EACN,UAAU,CACX,CAAC;IACF,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7B,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAiC,EACjC,SAAoB;IAKpB,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,mBAAS,CAAC,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB,EAAE,WAAmB;IAClE,IAAI,SAAS,GAAG,WAAW,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,cAAc,GAAG,4BAA4B,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,cAAc,CAAC,GAAG,WAAW,CAAC,CAAC;IAC7E,IAAI,aAAa,GAAG,CAAC,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAEM,MAAM,gBAAgB,GAAG,CAC9B,oBAA0D,EAC1D,aAAuC,EACvC,UAAoD,EACvC,EAAE;IACf,MAAM,CAAC,cAAc,EAAE,cAAc,CAAC,GAAG,UAAU,CAAC;IAEpD,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAElD,MAAM,cAAc,GAClB,cAAc;QACd,cAAc,CAAC,KAAK,CAClB,oBAAoB,CAClB,oBAAoB,CAAC,cAAc,EACnC,aAAa,CAAC,WAAW,CAC1B,CACF,CAAC;IACJ,MAAM,cAAc,GAClB,cAAc;QACd,cAAc,CAAC,KAAK,CAClB,oBAAoB,CAClB,oBAAoB,CAAC,cAAc,EACnC,aAAa,CAAC,WAAW,CAC1B,CACF,CAAC;IAEJ,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAElD,OAAO,oBAAoB,CACzB;QACE,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,mBAAmB,EAAE,IAAA,WAAI,EAAC,aAAa,CAAC,mBAAmB,CAAC;QAC5D,WAAW,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAClD,qBAAqB,EAAE,IAAA,WAAI,EAAC,EAAE,CAAC,qBAAqB,CAAC;SACtD,CAAC,CAAC;KACJ,EACD;QACE,SAAS,EAAE,IAAA,WAAI,EAAC,oBAAoB,CAAC,SAAS,CAAC;QAC/C,WAAW,EAAE,oBAAoB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACzD,mBAAmB,EAAE,IAAA,WAAI,EAAC,EAAE,CAAC,mBAAmB,CAAC;YACjD,gBAAgB,EAAE,IAAA,WAAI,EAAC,EAAE,CAAC,gBAAgB,CAAC;SAC5C,CAAC,CAAC;KACJ,EACD;QACE,IAAI,EAAE,cAAc,CAAC,IAAI;QACzB,YAAY,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,YAAY,CAAC;QAC/C,cAAc,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,cAAc,CAAC;QACnD,oBAAoB,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,oBAAoB,CAAC;QAC/D,oBAAoB,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,oBAAoB,CAAC;QAC/D,uBAAuB,EAAE;YACvB,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;YAC7C,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;YAC7C,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;SAC9C;KACF,EACD;QACE,IAAI,EAAE,cAAc,CAAC,IAAI;QACzB,YAAY,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,YAAY,CAAC;QAC/C,cAAc,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,cAAc,CAAC;QACnD,oBAAoB,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,oBAAoB,CAAC;QAC/D,oBAAoB,EAAE,IAAA,WAAI,EAAC,cAAc,CAAC,oBAAoB,CAAC;QAC/D,uBAAuB,EAAE;YACvB,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;YAC7C,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;YAC7C,IAAA,WAAI,EAAC,cAAc,CAAC,wBAAwB,CAAC;SAC9C;KACF,CACF,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,sBAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC;AApEW,QAAA,gBAAgB,oBAoE3B"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/// <reference types="node" />
|
2
|
-
import { BeetStruct } from '@metaplex-foundation/beet';
|
2
|
+
import { BeetStruct, FixableBeetStruct } from '@metaplex-foundation/beet';
|
3
3
|
import BigNumber from 'bignumber.js';
|
4
4
|
import { PublicKey } from '@solana/web3.js';
|
5
5
|
export type PositionRewardInfo = {
|
@@ -24,7 +24,7 @@ export type PersonalPositionState = {
|
|
24
24
|
};
|
25
25
|
export declare const personalPositionStateStruct: BeetStruct<PersonalPositionState, Partial<PersonalPositionState>>;
|
26
26
|
export type RewardInfo = {
|
27
|
-
rewardState:
|
27
|
+
rewardState: number;
|
28
28
|
openTime: BigNumber;
|
29
29
|
endTime: BigNumber;
|
30
30
|
lastUpdateTime: BigNumber;
|
@@ -78,3 +78,24 @@ export type PoolState = {
|
|
78
78
|
padding2: BigNumber[];
|
79
79
|
};
|
80
80
|
export declare const poolStateStruct: BeetStruct<PoolState, Partial<PoolState>>;
|
81
|
+
export type TickState = {
|
82
|
+
tick: number;
|
83
|
+
liquidityNet: BigNumber;
|
84
|
+
liquidityGross: BigNumber;
|
85
|
+
feeGrowthOutsideX64A: BigNumber;
|
86
|
+
feeGrowthOutsideX64B: BigNumber;
|
87
|
+
rewardGrowthsOutsideX640: BigNumber;
|
88
|
+
rewardGrowthsOutsideX641: BigNumber;
|
89
|
+
rewardGrowthsOutsideX642: BigNumber;
|
90
|
+
padding: number[];
|
91
|
+
};
|
92
|
+
export declare const tickStatetruct: BeetStruct<TickState, Partial<TickState>>;
|
93
|
+
export type TickArrayState = {
|
94
|
+
buffer: Buffer;
|
95
|
+
poolId: PublicKey;
|
96
|
+
startTickIndex: number;
|
97
|
+
ticks: TickState[];
|
98
|
+
initializedTickCount: number;
|
99
|
+
padding: number[];
|
100
|
+
};
|
101
|
+
export declare const tickArrayStatetruct: FixableBeetStruct<TickArrayState, Partial<TickArrayState>>;
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.poolStateStruct = exports.rewardInfoStruct = exports.personalPositionStateStruct = exports.positionRewardInfoStruct = void 0;
|
3
|
+
exports.tickArrayStatetruct = exports.tickStatetruct = exports.poolStateStruct = exports.rewardInfoStruct = exports.personalPositionStateStruct = exports.positionRewardInfoStruct = void 0;
|
4
4
|
const beet_1 = require("@metaplex-foundation/beet");
|
5
5
|
const beet_solana_1 = require("@metaplex-foundation/beet-solana");
|
6
6
|
const solana_1 = require("../../../utils/solana");
|
@@ -24,7 +24,7 @@ exports.personalPositionStateStruct = new beet_1.BeetStruct([
|
|
24
24
|
['padding', (0, beet_1.uniformFixedSizeArray)(solana_1.u64, 8)],
|
25
25
|
], (args) => args);
|
26
26
|
exports.rewardInfoStruct = new beet_1.BeetStruct([
|
27
|
-
['rewardState',
|
27
|
+
['rewardState', beet_1.u8],
|
28
28
|
['openTime', solana_1.u64],
|
29
29
|
['endTime', solana_1.u64],
|
30
30
|
['lastUpdateTime', solana_1.u64],
|
@@ -76,4 +76,23 @@ exports.poolStateStruct = new beet_1.BeetStruct([
|
|
76
76
|
['padding1', (0, beet_1.uniformFixedSizeArray)(solana_1.u64, 26)],
|
77
77
|
['padding2', (0, beet_1.uniformFixedSizeArray)(solana_1.u64, 32)],
|
78
78
|
], (args) => args);
|
79
|
+
exports.tickStatetruct = new beet_1.BeetStruct([
|
80
|
+
['tick', beet_1.i32],
|
81
|
+
['liquidityNet', solana_1.i128],
|
82
|
+
['liquidityGross', solana_1.u128],
|
83
|
+
['feeGrowthOutsideX64A', solana_1.u128],
|
84
|
+
['feeGrowthOutsideX64B', solana_1.u128],
|
85
|
+
['rewardGrowthsOutsideX640', solana_1.u128],
|
86
|
+
['rewardGrowthsOutsideX641', solana_1.u128],
|
87
|
+
['rewardGrowthsOutsideX642', solana_1.u128],
|
88
|
+
['padding', (0, beet_1.uniformFixedSizeArray)(beet_1.u32, 13)],
|
89
|
+
], (args) => args);
|
90
|
+
exports.tickArrayStatetruct = new beet_1.FixableBeetStruct([
|
91
|
+
['buffer', (0, solana_1.blob)(8)],
|
92
|
+
['poolId', beet_solana_1.publicKey],
|
93
|
+
['startTickIndex', beet_1.i32],
|
94
|
+
['ticks', (0, beet_1.uniformFixedSizeArray)(exports.tickStatetruct, 60)],
|
95
|
+
['initializedTickCount', beet_1.u8],
|
96
|
+
['padding', (0, beet_1.uniformFixedSizeArray)(beet_1.u8, 115)],
|
97
|
+
], (args) => args);
|
79
98
|
//# sourceMappingURL=clmms.js.map
|