@triadxyz/triad-protocol
Version:
<div align="center"> <h1>Triad Protocol</h1> </div>
58 lines (57 loc) • 3.36 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getPoseidonPDA = exports.getNftPDA = exports.getCollectionPDA = exports.getStakePDA = exports.getPoolPDA = exports.getSubUserTradePDA = exports.getUserTradePDA = exports.getCustomerPDA = exports.getOrderBookPDA = exports.getMarketPDA = exports.getTokenATA = void 0;
const web3_js_1 = require("@solana/web3.js");
const bn_js_1 = __importDefault(require("bn.js"));
const spl_token_1 = require("@solana/spl-token");
const getTokenATA = (address, Mint, program = spl_token_1.TOKEN_2022_PROGRAM_ID) => {
return web3_js_1.PublicKey.findProgramAddressSync([address.toBytes(), program.toBytes(), Mint.toBytes()], new web3_js_1.PublicKey(spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID))[0];
};
exports.getTokenATA = getTokenATA;
const getMarketPDA = (programId, marketId) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('market'), new bn_js_1.default(marketId).toArrayLike(Buffer, 'le', 8)], programId)[0];
};
exports.getMarketPDA = getMarketPDA;
const getOrderBookPDA = (programId, marketId) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('order_book'), new bn_js_1.default(marketId).toArrayLike(Buffer, 'le', 8)], programId)[0];
};
exports.getOrderBookPDA = getOrderBookPDA;
const getCustomerPDA = (programId, customerId) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('customer'), new bn_js_1.default(customerId).toArrayLike(Buffer, 'le', 2)], programId)[0];
};
exports.getCustomerPDA = getCustomerPDA;
const getUserTradePDA = (programId, wallet) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('user_trade'), wallet.toBuffer()], programId)[0];
};
exports.getUserTradePDA = getUserTradePDA;
const getSubUserTradePDA = (programId, wallet, nonce) => {
return web3_js_1.PublicKey.findProgramAddressSync([
Buffer.from('sub_user_trade'),
wallet.toBuffer(),
new bn_js_1.default(nonce).toArrayLike(Buffer, 'le', 8)
], programId)[0];
};
exports.getSubUserTradePDA = getSubUserTradePDA;
const getPoolPDA = (programId, poolId) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('pool'), new bn_js_1.default(poolId).toArrayLike(Buffer, 'le', 8)], programId)[0];
};
exports.getPoolPDA = getPoolPDA;
const getStakePDA = (programId, user) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('stake_v3'), user.toBuffer()], programId)[0];
};
exports.getStakePDA = getStakePDA;
const getCollectionPDA = (programId, collectionSymbol) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('collection'), Buffer.from(collectionSymbol)], programId)[0];
};
exports.getCollectionPDA = getCollectionPDA;
const getNftPDA = (programId, number) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('nft'), new bn_js_1.default(number).toArrayLike(Buffer, 'le', 8)], programId)[0];
};
exports.getNftPDA = getNftPDA;
const getPoseidonPDA = (programId, number) => {
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from('poseidon'), new bn_js_1.default(number).toArrayLike(Buffer, 'le', 8)], programId)[0];
};
exports.getPoseidonPDA = getPoseidonPDA;