UNPKG

@raydium-io/raydium-sdk-v2

Version:

An SDK for building applications on top of Raydium.

40 lines (33 loc) 897 B
import BN from 'bn.js'; export function u16ToBytes(num: number): Buffer { const buf = Buffer.alloc(2); buf.writeUInt16LE(num); return buf; } export function u16ToBytesBE(num: number): Buffer { const buf = Buffer.alloc(2); buf.writeUInt16BE(num); return buf; } export function i32ToBytes(num: number): Buffer { const buf = Buffer.alloc(4); buf.writeInt32LE(num); return buf; } export function i32ToBytesBE(num: number): Buffer { const buf = Buffer.alloc(4); buf.writeInt32BE(num); return buf; } export function u64ToBytes(num: BN | number | bigint): Buffer { if (typeof num === 'number' || typeof num === 'bigint') { num = new BN(num.toString()); } return num.toArrayLike(Buffer, 'be', 8); } export function u8ToBytes(num: number) { const arr = new ArrayBuffer(1); const view = new DataView(arr); view.setUint8(0, num); return new Uint8Array(arr); }