solana-dex-parser
Version:
Solana Dex Transaction Parser
256 lines • 8.83 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.JupiterVACloseLayout = exports.JupiterVAWithdrawLayout = exports.JupiterVADepositLayout = exports.JupiterVAOpenLayout = exports.JupiterVAFillLayout = void 0;
const bs58_1 = __importDefault(require("bs58"));
const binary_reader_1 = require("../../binary-reader");
class JupiterVAFillLayout {
constructor(fields) {
this.valueAverage = fields.valueAverage;
this.user = fields.user;
this.keeper = fields.keeper;
this.inputMint = fields.inputMint;
this.outputMint = fields.outputMint;
this.inputAmount = fields.inputAmount;
this.outputAmount = fields.outputAmount;
this.fee = fields.fee;
this.newActualUsdcValue = fields.newActualUsdcValue;
this.supposedUsdcValue = fields.supposedUsdcValue;
this.value = fields.value;
this.inLeft = fields.inLeft;
this.inUsed = fields.inUsed;
this.outReceived = fields.outReceived;
}
toObject() {
return {
valueAverage: bs58_1.default.encode(this.valueAverage),
user: bs58_1.default.encode(this.user),
keeper: bs58_1.default.encode(this.keeper),
inputMint: bs58_1.default.encode(this.inputMint),
outputMint: bs58_1.default.encode(this.outputMint),
inputAmount: this.inputAmount,
outputAmount: this.outputAmount,
fee: this.fee,
newActualUsdcValue: this.newActualUsdcValue,
supposedUsdcValue: this.supposedUsdcValue,
value: this.value,
inLeft: this.inLeft,
inUsed: this.inUsed,
outReceived: this.outReceived,
};
}
}
exports.JupiterVAFillLayout = JupiterVAFillLayout;
JupiterVAFillLayout.schema = new Map([
[
JupiterVAFillLayout,
{
kind: 'struct',
fields: [
['valueAverage', [32]],
['user', [32]],
['keeper', [32]],
['inputMint', [32]],
['outputMint', [32]],
['inputAmount', 'u64'],
['outputAmount', 'u64'],
['fee', 'u64'],
['newActualUsdcValue', 'u64'],
['supposedUsdcValue', 'u64'],
['value', 'u64'],
['inLeft', 'u64'],
['inUsed', 'u64'],
['outReceived', 'u64'],
],
},
],
]);
class JupiterVAOpenLayout {
constructor(fields) {
this.user = fields.user;
this.valueAverage = fields.valueAverage;
this.deposit = fields.deposit;
this.inputMint = fields.inputMint;
this.outputMint = fields.outputMint;
this.referralFeeAccount = fields.referralFeeAccount;
this.orderInterval = fields.orderInterval;
this.incrementUsdcValue = fields.incrementUsdcValue;
this.createdAt = fields.createdAt;
}
static deserialize(data) {
const reader = new binary_reader_1.BinaryReader(data);
const user = reader.readFixedArray(32);
const valueAverage = reader.readFixedArray(32);
const deposit = reader.readU64();
const inputMint = reader.readFixedArray(32);
const outputMint = reader.readFixedArray(32);
const referralFeeAccount = reader.readFixedArray(32);
const orderInterval = reader.readI64();
const incrementUsdcValue = reader.readU64();
const createdAt = reader.readI64();
return new JupiterVAOpenLayout({
user,
valueAverage,
deposit,
inputMint,
outputMint,
referralFeeAccount,
orderInterval,
incrementUsdcValue,
createdAt,
});
}
toObject() {
return {
user: bs58_1.default.encode(this.user),
valueAverage: bs58_1.default.encode(this.valueAverage),
deposit: this.deposit,
inputMint: bs58_1.default.encode(this.inputMint),
outputMint: bs58_1.default.encode(this.outputMint),
referralFeeAccount: bs58_1.default.encode(this.referralFeeAccount),
orderInterval: this.orderInterval,
incrementUsdcValue: this.incrementUsdcValue,
createdAt: this.createdAt,
};
}
}
exports.JupiterVAOpenLayout = JupiterVAOpenLayout;
JupiterVAOpenLayout.schema = new Map([
[
JupiterVAOpenLayout,
{
kind: 'struct',
fields: [
['user', [32]],
['valueAverage', [32]],
['deposit', 'u64'],
['inputMint', [32]],
['outputMint', [32]],
['referralFeeAccount', [32]],
['orderInterval', 'i64'],
['incrementUsdcValue', 'u64'],
['createdAt', 'i64'],
],
},
],
]);
class JupiterVADepositLayout {
constructor(fields) {
this.depositor = fields.depositor;
this.valueAverage = fields.valueAverage;
this.mint = fields.mint;
this.amount = fields.amount;
this.inDeposited = fields.inDeposited;
this.inLeft = fields.inLeft;
}
toObject() {
return {
depositor: bs58_1.default.encode(this.depositor),
valueAverage: bs58_1.default.encode(this.valueAverage),
mint: bs58_1.default.encode(this.mint),
amount: this.amount,
inDeposited: this.inDeposited,
inLeft: this.inLeft,
};
}
}
exports.JupiterVADepositLayout = JupiterVADepositLayout;
JupiterVADepositLayout.schema = new Map([
[
JupiterVADepositLayout,
{
kind: 'struct',
fields: [
['depositor', [32]],
['valueAverage', [32]],
['mint', [32]],
['amount', 'u64'],
['inDeposited', 'u64'],
['inLeft', 'u64'],
],
},
],
]);
class JupiterVAWithdrawLayout {
constructor(fields) {
this.valueAverage = fields.valueAverage;
this.mint = fields.mint;
this.amount = fields.amount;
this.inOrOut = fields.inOrOut;
this.userWithdraw = fields.userWithdraw;
this.inLeft = fields.inLeft;
this.inWithdrawn = fields.inWithdrawn;
this.outWithdrawn = fields.outWithdrawn;
}
static deserialize(data) {
const reader = new binary_reader_1.BinaryReader(data);
const valueAverage = reader.readFixedArray(32);
const mint = reader.readFixedArray(32);
const amount = reader.readU64();
const inOrOut = reader.readU8() == 0 ? 'In' : 'Out';
const userWithdraw = reader.readU8() === 1;
const inLeft = reader.readU64();
const inWithdrawn = reader.readU64();
const outWithdrawn = reader.readU64();
return new JupiterVAWithdrawLayout({
valueAverage,
mint,
amount,
inOrOut,
userWithdraw,
inLeft,
inWithdrawn,
outWithdrawn,
});
}
toObject() {
return {
valueAverage: bs58_1.default.encode(this.valueAverage),
mint: bs58_1.default.encode(this.mint),
amount: this.amount,
inOrOut: this.inOrOut,
userWithdraw: this.userWithdraw,
inLeft: this.inLeft,
inWithdrawn: this.inWithdrawn,
outWithdrawn: this.outWithdrawn,
};
}
}
exports.JupiterVAWithdrawLayout = JupiterVAWithdrawLayout;
class JupiterVACloseLayout {
constructor(fields) {
this.user = fields.user;
this.valueAverage = fields.valueAverage;
this.createdAt = fields.createdAt;
this.closedAt = fields.closedAt;
this.executor = fields.executor;
}
toObject() {
return {
user: bs58_1.default.encode(this.user),
valueAverage: bs58_1.default.encode(this.valueAverage),
createdAt: this.createdAt,
closedAt: this.closedAt,
executor: bs58_1.default.encode(this.executor),
};
}
}
exports.JupiterVACloseLayout = JupiterVACloseLayout;
JupiterVACloseLayout.schema = new Map([
[
JupiterVACloseLayout,
{
kind: 'struct',
fields: [
['user', [32]],
['valueAverage', [32]],
['createdAt', 'i64'],
['closedAt', 'i64'],
['executor', [32]],
],
},
],
]);
//# sourceMappingURL=jupiter-va.layout.js.map