@kamino-finance/kliquidity-sdk
Version:
Typescript SDK for interacting with the Kamino Liquidity (kliquidity) protocol
32 lines • 1.14 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.instructionToIInstruction = instructionToIInstruction;
exports.instructionsToIInstructions = instructionsToIInstructions;
exports.getAccountRole = getAccountRole;
const kit_1 = require("@solana/kit");
function instructionToIInstruction(ix) {
return {
data: ix.data ? Buffer.from(ix.data, 'base64') : undefined,
programAddress: (0, kit_1.address)(ix.programId),
accounts: ix.accounts.map((k) => ({
address: (0, kit_1.address)(k.pubkey),
role: getAccountRole({ isSigner: k.isSigner, isMut: k.isWritable }),
})),
};
}
function instructionsToIInstructions(ixs) {
return ixs.map((ix) => instructionToIInstruction(ix));
}
function getAccountRole({ isSigner, isMut }) {
if (isSigner && isMut) {
return kit_1.AccountRole.WRITABLE_SIGNER;
}
if (isSigner && !isMut) {
return kit_1.AccountRole.READONLY_SIGNER;
}
if (!isSigner && isMut) {
return kit_1.AccountRole.WRITABLE;
}
return kit_1.AccountRole.READONLY;
}
//# sourceMappingURL=jupiter.js.map
;