@meteora-ag/cp-amm-sdk 1.0.11-rc.4 → 1.0.11-rc.6
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.mts +4 -5
- package/dist/index.d.ts +4 -5
- package/dist/index.js +28 -18
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +27 -17
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -6372,32 +6372,41 @@ var getUnClaimReward = (poolState, positionState) => {
|
|
|
6372
6372
|
rewards: positionState.rewardInfos.length > 0 ? positionState.rewardInfos.map((item) => item.rewardPendings) : []
|
|
6373
6373
|
};
|
|
6374
6374
|
};
|
|
6375
|
-
function
|
|
6376
|
-
const
|
|
6377
|
-
|
|
6378
|
-
|
|
6375
|
+
function getRewardPerTokenStore(poolReward, poolLiquidity, currentTime) {
|
|
6376
|
+
const lastTimeRewardApplicable = BN6.min(
|
|
6377
|
+
currentTime,
|
|
6378
|
+
poolReward.rewardDurationEnd
|
|
6379
|
+
);
|
|
6379
6380
|
const timePeriod = lastTimeRewardApplicable.sub(poolReward.lastUpdateTime);
|
|
6380
6381
|
const currentTotalReward = timePeriod.mul(poolReward.rewardRate);
|
|
6381
|
-
const rewardPerTokenStore = currentTotalReward.shln(128).div(
|
|
6382
|
-
const
|
|
6383
|
-
Buffer.from(
|
|
6384
|
-
);
|
|
6385
|
-
|
|
6386
|
-
|
|
6382
|
+
const rewardPerTokenStore = currentTotalReward.shln(128).div(poolLiquidity);
|
|
6383
|
+
const totalRewardPerTokenStore = new BN6(
|
|
6384
|
+
Buffer.from(poolReward.rewardPerTokenStored).reverse()
|
|
6385
|
+
).add(rewardPerTokenStore);
|
|
6386
|
+
return totalRewardPerTokenStore;
|
|
6387
|
+
}
|
|
6388
|
+
function getRewardInfo(poolState, rewardIndex, periodTime, currentTime) {
|
|
6389
|
+
const poolReward = poolState.rewardInfos[rewardIndex];
|
|
6387
6390
|
const totalRewardPerPeriod = poolReward.rewardRate.mul(periodTime);
|
|
6388
|
-
const rewardPerTokenStorePerPeriod = totalRewardPerPeriod.shln(128).div(poolState.liquidity);
|
|
6389
|
-
const totalUserRewardPerPeriod = totalPositionLiquidity.mul(rewardPerTokenStorePerPeriod).shrn(192);
|
|
6390
6391
|
const totalReward = poolReward.rewardRate.mul(poolReward.rewardDuration).shrn(64);
|
|
6392
|
+
const rewardPerTokenStore = getRewardPerTokenStore(poolReward, poolState.liquidity, currentTime);
|
|
6391
6393
|
const totalRewardDistributed = rewardPerTokenStore.mul(poolState.liquidity).shrn(192);
|
|
6392
|
-
console.log("userRewardInfo.rewardPendings: ", userRewardInfo.rewardPendings.toString());
|
|
6393
|
-
console.log("newReward: ", newReward.toString());
|
|
6394
6394
|
return {
|
|
6395
|
-
|
|
6396
|
-
totalUserRewardPerPeriod,
|
|
6397
|
-
totalPoolRewardPerPeriod: totalRewardPerPeriod,
|
|
6395
|
+
rewardPerPeriod: totalRewardPerPeriod.shrn(64),
|
|
6398
6396
|
rewardBalance: totalReward.sub(totalRewardDistributed)
|
|
6399
6397
|
};
|
|
6400
6398
|
}
|
|
6399
|
+
function getUserRewardPending(poolState, positionState, rewardIndex, currentTime) {
|
|
6400
|
+
const poolReward = poolState.rewardInfos[rewardIndex];
|
|
6401
|
+
const userRewardInfo = positionState.rewardInfos[rewardIndex];
|
|
6402
|
+
const rewardPerTokenStore = getRewardPerTokenStore(poolReward, poolState.liquidity, currentTime);
|
|
6403
|
+
const totalPositionLiquidity = positionState.unlockedLiquidity.add(positionState.vestedLiquidity).add(positionState.permanentLockedLiquidity);
|
|
6404
|
+
const userRewardPerTokenCheckPoint = new BN6(
|
|
6405
|
+
Buffer.from(userRewardInfo.rewardPerTokenCheckpoint).reverse()
|
|
6406
|
+
);
|
|
6407
|
+
const newReward = totalPositionLiquidity.mul(rewardPerTokenStore.sub(userRewardPerTokenCheckPoint)).shrn(192);
|
|
6408
|
+
return userRewardInfo.rewardPendings.add(newReward);
|
|
6409
|
+
}
|
|
6401
6410
|
|
|
6402
6411
|
// src/helpers/accountFilters.ts
|
|
6403
6412
|
var positionByPoolFilter = (pool) => {
|
|
@@ -9028,6 +9037,7 @@ export {
|
|
|
9028
9037
|
getTokenProgram,
|
|
9029
9038
|
getTotalLockedLiquidity,
|
|
9030
9039
|
getUnClaimReward,
|
|
9040
|
+
getUserRewardPending,
|
|
9031
9041
|
isVestingComplete,
|
|
9032
9042
|
mulDiv,
|
|
9033
9043
|
positionByPoolFilter,
|