@frakt-protocol/frakt-sdk
Version:
Frakt SDK for interacting with frakt.xyz protocols
109 lines (108 loc) • 6.38 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.decodedSecondaryRewardToUI = exports.decodedSecondStakeToUI = exports.decodedRouterToUI = exports.decodedStakeAccountAddressToUI = exports.decodedPoolBufferToUI = exports.decodedPermission = exports.decodedPoolConfig = exports.decodedBoardEntry = exports.returnCommunityPoolsAnchorProgram = void 0;
const anchor_1 = require("@project-serum/anchor");
const community_pools_anchor_json_1 = __importDefault(require("../idl/community_pools_anchor.json"));
const common_1 = require("../../common");
const returnCommunityPoolsAnchorProgram = (programId, connection) => __awaiter(void 0, void 0, void 0, function* () {
return new anchor_1.Program(community_pools_anchor_json_1.default, programId, new anchor_1.AnchorProvider(connection, (0, common_1.createFakeWallet)(), anchor_1.AnchorProvider.defaultOptions()));
});
exports.returnCommunityPoolsAnchorProgram = returnCommunityPoolsAnchorProgram;
const decodedBoardEntry = (decodedPoolState, stateAddress) => ({
boardEntryPubkey: stateAddress.toBase58(),
entryholder: decodedPoolState.entryholder.toBase58(),
totaScore: decodedPoolState.totaScore.toString(),
scoreToHarvest: decodedPoolState.scoreToHarvest.toString(),
nftMint: decodedPoolState.nftMint.toBase58(),
message: decodedPoolState.message,
});
exports.decodedBoardEntry = decodedBoardEntry;
const decodedPoolConfig = (decodedStakeState, poolAddress) => ({
poolConfigPubkey: poolAddress.toString(),
vaultOwnerPda: decodedStakeState.vaultOwnerPda.toBase58(),
tokenMint: decodedStakeState.tokenMint.toBase58(),
vaultTokenAccount: decodedStakeState.vaultTokenAccount.toBase58(),
poolVaultBalance: decodedStakeState.poolVaultBalance.toString(),
});
exports.decodedPoolConfig = decodedPoolConfig;
const decodedPermission = (decodedState, permissionAddress) => ({
permissionPubkey: permissionAddress.toBase58(),
programPubkey: decodedState.programPubkey.toBase58(),
expiration: decodedState.expiration.toString(),
canAddScore: decodedState.canAddScore.toString(),
canHarvestScore: decodedState.canHarvestScore.toString(),
});
exports.decodedPermission = decodedPermission;
const decodedPoolBufferToUI = (decodedPoolState, poolAddress) => ({
mainPoolPubkey: poolAddress.toBase58(),
vaultOwnerPda: decodedPoolState.vaultOwnerPda.toBase58(),
tokenMint: decodedPoolState.tokenMint.toBase58(),
vaultTokenAccount: decodedPoolState.vaultTokenAccount.toBase58(),
poolVaultBalance: decodedPoolState.poolVaultBalance.toString(),
});
exports.decodedPoolBufferToUI = decodedPoolBufferToUI;
const decodedStakeAccountAddressToUI = (decodedStakeState, stakeAddress) => ({
stakeAccountPubkey: stakeAddress.toBase58(),
stakeOwner: decodedStakeState.stakeOwner.toBase58(),
tokenMintInput: decodedStakeState.tokenMintInput.toBase58(),
tokenMintOutput: decodedStakeState.tokenMintOutput.toBase58(),
routerPubkey: decodedStakeState.router.toBase58(),
amount: decodedStakeState.amount.toString(),
stakedAt: decodedStakeState.stakedAt.toString(),
stakedAtCumulative: decodedStakeState.stakedAtCumulative.toString(),
stakeEnd: decodedStakeState.stakeEnd.toString(),
unstakedAtCumulative: decodedStakeState.unstakedAtCumulative.toString(),
lastHarvestedAt: decodedStakeState.lastHarvestedAt.toString(),
isStaked: Boolean(decodedStakeState.isStaked),
});
exports.decodedStakeAccountAddressToUI = decodedStakeAccountAddressToUI;
const decodedRouterToUI = (decodedState, mainRouterAddress) => ({
mainRouterPubkey: mainRouterAddress.toBase58(),
tokenMintInput: decodedState.tokenMintInput.toBase58(),
tokenMintOutput: decodedState.tokenMintOutput.toBase58(),
poolConfigInput: decodedState.poolConfigInput.toBase58(),
poolConfigOutput: decodedState.poolConfigOutput.toBase58(),
amountOfStaked: decodedState.amountOfStaked.toString(),
amountToReturn: decodedState.amountToReturn.toString(),
apr: decodedState.apr.toString(),
cumulative: decodedState.cumulative.toString(),
lastTime: decodedState.lastTime.toString(),
decimalsInput: decodedState.decimalsInput.toString(),
decimalsOutput: decodedState.decimalsOutput.toString(),
oldCumulative: decodedState.oldCumulative.toString(),
endTime: decodedState.endTime.toString(),
startTime: decodedState.startTime.toString(),
});
exports.decodedRouterToUI = decodedRouterToUI;
const decodedSecondStakeToUI = (decodedState, secondStakeAccount) => ({
secondStakeAccount: secondStakeAccount.toBase58(),
rewardOwner: decodedState.rewardOwner.toBase58(),
stakeAccount: decodedState.stakeAccount.toBase58(),
secondaryReward: decodedState.secondaryReward.toBase58(),
startTime: decodedState.startTime.toString(),
lastHarvestedAt: decodedState.lastHarvestedAt.toString(),
});
exports.decodedSecondStakeToUI = decodedSecondStakeToUI;
const decodedSecondaryRewardToUI = (decodedState, secondaryRewardaccount) => ({
secondaryRewardaccount: secondaryRewardaccount.toBase58(),
routerPubkey: decodedState.routerPubkey.toBase58(),
tokenMint: decodedState.tokenMint.toBase58(),
poolVaultBalance: decodedState.poolVaultBalance.toString(),
tokensPerSecondPerPoint: decodedState.tokensPerSecondPerPoint.toString(),
decimalsOutput: decodedState.decimalsOutput.toString(),
startTime: decodedState.startTime.toString(),
endTime: decodedState.endTime.toString(),
});
exports.decodedSecondaryRewardToUI = decodedSecondaryRewardToUI;