@coffer_so/sdk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +283 -0
- package/dist/clients/AdminClient.d.ts +194 -0
- package/dist/clients/AdminClient.d.ts.map +1 -0
- package/dist/clients/AdminClient.js +482 -0
- package/dist/clients/AdminClient.js.map +1 -0
- package/dist/clients/CofferBackendClient.d.ts +877 -0
- package/dist/clients/CofferBackendClient.d.ts.map +1 -0
- package/dist/clients/CofferBackendClient.js +536 -0
- package/dist/clients/CofferBackendClient.js.map +1 -0
- package/dist/clients/CubeBackendClient.d.ts +877 -0
- package/dist/clients/CubeBackendClient.d.ts.map +1 -0
- package/dist/clients/CubeBackendClient.js +536 -0
- package/dist/clients/CubeBackendClient.js.map +1 -0
- package/dist/clients/CubicPoolClient.d.ts +120 -0
- package/dist/clients/CubicPoolClient.d.ts.map +1 -0
- package/dist/clients/CubicPoolClient.js +687 -0
- package/dist/clients/CubicPoolClient.js.map +1 -0
- package/dist/clients/PoolFactoryClient.d.ts +53 -0
- package/dist/clients/PoolFactoryClient.d.ts.map +1 -0
- package/dist/clients/PoolFactoryClient.js +91 -0
- package/dist/clients/PoolFactoryClient.js.map +1 -0
- package/dist/clients/RpcClient.d.ts +49 -0
- package/dist/clients/RpcClient.d.ts.map +1 -0
- package/dist/clients/RpcClient.js +135 -0
- package/dist/clients/RpcClient.js.map +1 -0
- package/dist/clients/SingleTokenDepositClient.d.ts +67 -0
- package/dist/clients/SingleTokenDepositClient.d.ts.map +1 -0
- package/dist/clients/SingleTokenDepositClient.js +105 -0
- package/dist/clients/SingleTokenDepositClient.js.map +1 -0
- package/dist/clients/contract-instructions.d.ts +24 -0
- package/dist/clients/contract-instructions.d.ts.map +1 -0
- package/dist/clients/contract-instructions.js +130 -0
- package/dist/clients/contract-instructions.js.map +1 -0
- package/dist/clients/index.d.ts +10 -0
- package/dist/clients/index.d.ts.map +1 -0
- package/dist/clients/index.js +26 -0
- package/dist/clients/index.js.map +1 -0
- package/dist/clients/quote-math.d.ts +15 -0
- package/dist/clients/quote-math.d.ts.map +1 -0
- package/dist/clients/quote-math.js +98 -0
- package/dist/clients/quote-math.js.map +1 -0
- package/dist/clients/tx-builders.d.ts +231 -0
- package/dist/clients/tx-builders.d.ts.map +1 -0
- package/dist/clients/tx-builders.js +861 -0
- package/dist/clients/tx-builders.js.map +1 -0
- package/dist/clients/versioned.d.ts +34 -0
- package/dist/clients/versioned.d.ts.map +1 -0
- package/dist/clients/versioned.js +55 -0
- package/dist/clients/versioned.js.map +1 -0
- package/dist/config/index.d.ts +65 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +75 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/networks.d.ts +12 -0
- package/dist/config/networks.d.ts.map +1 -0
- package/dist/config/networks.js +51 -0
- package/dist/config/networks.js.map +1 -0
- package/dist/config/tokens.d.ts +19 -0
- package/dist/config/tokens.d.ts.map +1 -0
- package/dist/config/tokens.js +43 -0
- package/dist/config/tokens.js.map +1 -0
- package/dist/idl/cubic_pool.json +4203 -0
- package/dist/idl/index.d.ts +1769 -0
- package/dist/idl/index.d.ts.map +1 -0
- package/dist/idl/index.js +18 -0
- package/dist/idl/index.js.map +1 -0
- package/dist/idl/protocol_admin.json +2615 -0
- package/dist/idl/single_token_liquidity.json +1121 -0
- package/dist/index.d.ts +75 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +206 -0
- package/dist/index.js.map +1 -0
- package/dist/math/cubicMath.d.ts +40 -0
- package/dist/math/cubicMath.d.ts.map +1 -0
- package/dist/math/cubicMath.js +82 -0
- package/dist/math/cubicMath.js.map +1 -0
- package/dist/math/fixedPoint.d.ts +19 -0
- package/dist/math/fixedPoint.d.ts.map +1 -0
- package/dist/math/fixedPoint.js +86 -0
- package/dist/math/fixedPoint.js.map +1 -0
- package/dist/math/index.d.ts +9 -0
- package/dist/math/index.d.ts.map +1 -0
- package/dist/math/index.js +30 -0
- package/dist/math/index.js.map +1 -0
- package/dist/math/logExp.d.ts +6 -0
- package/dist/math/logExp.d.ts.map +1 -0
- package/dist/math/logExp.js +68 -0
- package/dist/math/logExp.js.map +1 -0
- package/dist/math/lpLoss.d.ts +44 -0
- package/dist/math/lpLoss.d.ts.map +1 -0
- package/dist/math/lpLoss.js +103 -0
- package/dist/math/lpLoss.js.map +1 -0
- package/dist/math/maxSelloff.d.ts +164 -0
- package/dist/math/maxSelloff.d.ts.map +1 -0
- package/dist/math/maxSelloff.js +397 -0
- package/dist/math/maxSelloff.js.map +1 -0
- package/dist/math/singleToken.d.ts +54 -0
- package/dist/math/singleToken.d.ts.map +1 -0
- package/dist/math/singleToken.js +188 -0
- package/dist/math/singleToken.js.map +1 -0
- package/dist/math/slippage.d.ts +13 -0
- package/dist/math/slippage.d.ts.map +1 -0
- package/dist/math/slippage.js +44 -0
- package/dist/math/slippage.js.map +1 -0
- package/dist/math/surgeFee.d.ts +24 -0
- package/dist/math/surgeFee.d.ts.map +1 -0
- package/dist/math/surgeFee.js +85 -0
- package/dist/math/surgeFee.js.map +1 -0
- package/dist/math/weightedMath.d.ts +20 -0
- package/dist/math/weightedMath.d.ts.map +1 -0
- package/dist/math/weightedMath.js +66 -0
- package/dist/math/weightedMath.js.map +1 -0
- package/dist/parsers/borsh.d.ts +28 -0
- package/dist/parsers/borsh.d.ts.map +1 -0
- package/dist/parsers/borsh.js +104 -0
- package/dist/parsers/borsh.js.map +1 -0
- package/dist/parsers/contracts.d.ts +26 -0
- package/dist/parsers/contracts.d.ts.map +1 -0
- package/dist/parsers/contracts.js +62 -0
- package/dist/parsers/contracts.js.map +1 -0
- package/dist/parsers/events.d.ts +3 -0
- package/dist/parsers/events.d.ts.map +1 -0
- package/dist/parsers/events.js +281 -0
- package/dist/parsers/events.js.map +1 -0
- package/dist/parsers/index.d.ts +6 -0
- package/dist/parsers/index.d.ts.map +1 -0
- package/dist/parsers/index.js +22 -0
- package/dist/parsers/index.js.map +1 -0
- package/dist/parsers/mintAccount.d.ts +24 -0
- package/dist/parsers/mintAccount.d.ts.map +1 -0
- package/dist/parsers/mintAccount.js +27 -0
- package/dist/parsers/mintAccount.js.map +1 -0
- package/dist/parsers/poolAccount.d.ts +141 -0
- package/dist/parsers/poolAccount.d.ts.map +1 -0
- package/dist/parsers/poolAccount.js +224 -0
- package/dist/parsers/poolAccount.js.map +1 -0
- package/dist/types/contracts.d.ts +1340 -0
- package/dist/types/contracts.d.ts.map +1 -0
- package/dist/types/contracts.js +3 -0
- package/dist/types/contracts.js.map +1 -0
- package/dist/types/events.d.ts +172 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +3 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +22 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/pool.d.ts +149 -0
- package/dist/types/pool.d.ts.map +1 -0
- package/dist/types/pool.js +3 -0
- package/dist/types/pool.js.map +1 -0
- package/dist/types/result.d.ts +24 -0
- package/dist/types/result.d.ts.map +1 -0
- package/dist/types/result.js +11 -0
- package/dist/types/result.js.map +1 -0
- package/dist/types/tx.d.ts +261 -0
- package/dist/types/tx.d.ts.map +1 -0
- package/dist/types/tx.js +3 -0
- package/dist/types/tx.js.map +1 -0
- package/dist/utils/errors.d.ts +44 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +192 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/extensions.d.ts +98 -0
- package/dist/utils/extensions.d.ts.map +1 -0
- package/dist/utils/extensions.js +187 -0
- package/dist/utils/extensions.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/pda.d.ts +8 -0
- package/dist/utils/pda.d.ts.map +1 -0
- package/dist/utils/pda.js +27 -0
- package/dist/utils/pda.js.map +1 -0
- package/dist/utils/retry.d.ts +22 -0
- package/dist/utils/retry.d.ts.map +1 -0
- package/dist/utils/retry.js +62 -0
- package/dist/utils/retry.js.map +1 -0
- package/package.json +54 -0
- package/src/clients/AdminClient.ts +608 -0
- package/src/clients/CofferBackendClient.ts +1413 -0
- package/src/clients/CubicPoolClient.ts +719 -0
- package/src/clients/PoolFactoryClient.ts +110 -0
- package/src/clients/RpcClient.ts +195 -0
- package/src/clients/SingleTokenDepositClient.ts +143 -0
- package/src/clients/contract-instructions.ts +115 -0
- package/src/clients/index.ts +9 -0
- package/src/clients/quote-math.ts +81 -0
- package/src/clients/tx-builders.ts +1096 -0
- package/src/clients/versioned.ts +80 -0
- package/src/config/index.ts +111 -0
- package/src/config/networks.ts +71 -0
- package/src/config/tokens.ts +52 -0
- package/src/idl/cubic_pool.json +4203 -0
- package/src/idl/index.ts +13 -0
- package/src/idl/protocol_admin.json +2615 -0
- package/src/idl/single_token_liquidity.json +1121 -0
- package/src/index.ts +262 -0
- package/src/math/cubicMath.ts +92 -0
- package/src/math/fixedPoint.ts +71 -0
- package/src/math/index.ts +13 -0
- package/src/math/logExp.ts +61 -0
- package/src/math/lpLoss.ts +160 -0
- package/src/math/maxSelloff.ts +564 -0
- package/src/math/singleToken.ts +251 -0
- package/src/math/slippage.ts +38 -0
- package/src/math/surgeFee.ts +101 -0
- package/src/math/weightedMath.ts +64 -0
- package/src/parsers/borsh.ts +106 -0
- package/src/parsers/contracts.ts +64 -0
- package/src/parsers/events.ts +275 -0
- package/src/parsers/index.ts +5 -0
- package/src/parsers/mintAccount.ts +44 -0
- package/src/parsers/poolAccount.ts +372 -0
- package/src/types/contracts.ts +238 -0
- package/src/types/events.ts +198 -0
- package/src/types/index.ts +5 -0
- package/src/types/pool.ts +147 -0
- package/src/types/result.ts +51 -0
- package/src/types/tx.ts +278 -0
- package/src/utils/errors.ts +210 -0
- package/src/utils/extensions.ts +196 -0
- package/src/utils/index.ts +4 -0
- package/src/utils/pda.ts +58 -0
- package/src/utils/retry.ts +85 -0
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.POOL_V3_LEN = exports.POOL_LEN = exports.POOL_V4_LEN = exports.POOL_DISCRIMINATOR_LEN = void 0;
|
|
7
|
+
exports.decodePoolAccount = decodePoolAccount;
|
|
8
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
9
|
+
const bn_js_1 = __importDefault(require("bn.js"));
|
|
10
|
+
/** 8-byte anchor discriminator for CubicPool. */
|
|
11
|
+
exports.POOL_DISCRIMINATOR_LEN = 8;
|
|
12
|
+
const POOL_DISCRIMINATOR = Buffer.from([137, 210, 42, 22, 209, 156, 43, 78]);
|
|
13
|
+
const MAX_TOKENS = 10;
|
|
14
|
+
/**
|
|
15
|
+
* Total on-chain size of a v4/v5 CubicPool (includes the 8-byte
|
|
16
|
+
* discriminator). v5.1 carved its new fields out of `reserved`, so the
|
|
17
|
+
* size is deliberately identical to v4 — size alone cannot tell the two
|
|
18
|
+
* apart. Decoding interprets the current layout; it does not prove an older
|
|
19
|
+
* account has been migrated.
|
|
20
|
+
*/
|
|
21
|
+
exports.POOL_V4_LEN = 1683;
|
|
22
|
+
/** Alias for {@link POOL_V4_LEN}; the layout is shared by v4 and v5. */
|
|
23
|
+
exports.POOL_LEN = exports.POOL_V4_LEN;
|
|
24
|
+
/** Per-token `TokenSlot` = `AssetConfig` (88) + `AssetDynamics` (56). */
|
|
25
|
+
const ASSET_CONFIG_LEN = 88;
|
|
26
|
+
const ASSET_DYNAMICS_LEN = 56;
|
|
27
|
+
const TOKEN_SLOT_LEN = ASSET_CONFIG_LEN + ASSET_DYNAMICS_LEN;
|
|
28
|
+
/** Pre-v4 size — legacy accounts are unsupported by the current v4-to-v5 migration. */
|
|
29
|
+
exports.POOL_V3_LEN = 1154;
|
|
30
|
+
function decodePoolAccount(data) {
|
|
31
|
+
if (data.length === exports.POOL_V3_LEN) {
|
|
32
|
+
throw new Error(`decodePoolAccount: account is at v3 size (${exports.POOL_V3_LEN}). ` +
|
|
33
|
+
`Legacy v3 accounts require a separate migration; migrate_to_v5 supports only 1683-byte v4 accounts.`);
|
|
34
|
+
}
|
|
35
|
+
if (data.length !== exports.POOL_V4_LEN) {
|
|
36
|
+
throw new Error(`decodePoolAccount: unexpected data length ${data.length} ` +
|
|
37
|
+
`(expected ${exports.POOL_V4_LEN} for v4).`);
|
|
38
|
+
}
|
|
39
|
+
if (!data.subarray(0, exports.POOL_DISCRIMINATOR_LEN).equals(POOL_DISCRIMINATOR)) {
|
|
40
|
+
throw new Error("decodePoolAccount: invalid CubicPool discriminator");
|
|
41
|
+
}
|
|
42
|
+
let off = exports.POOL_DISCRIMINATOR_LEN;
|
|
43
|
+
const config = readPubkey(data, off);
|
|
44
|
+
off += 32;
|
|
45
|
+
const bump = data.readUInt8(off);
|
|
46
|
+
off += 1;
|
|
47
|
+
const tokenCount = data.readUInt8(off);
|
|
48
|
+
off += 1;
|
|
49
|
+
if (tokenCount > MAX_TOKENS) {
|
|
50
|
+
throw new Error(`decodePoolAccount: token_count ${tokenCount} exceeds ${MAX_TOKENS}`);
|
|
51
|
+
}
|
|
52
|
+
const poolId = readU64LE(data, off);
|
|
53
|
+
off += 8;
|
|
54
|
+
const swapFeeRate = data.readUInt32LE(off);
|
|
55
|
+
off += 4;
|
|
56
|
+
const protocolFeeRate = data.readUInt16LE(off);
|
|
57
|
+
off += 2;
|
|
58
|
+
const createdAt = readI64LE(data, off);
|
|
59
|
+
off += 8;
|
|
60
|
+
const poolEnabled = readBool(data, off);
|
|
61
|
+
off += 1;
|
|
62
|
+
const swapsEnabled = readBool(data, off);
|
|
63
|
+
off += 1;
|
|
64
|
+
const poolAdmin = readPubkey(data, off);
|
|
65
|
+
off += 32;
|
|
66
|
+
const pendingPoolAdmin = readPubkey(data, off);
|
|
67
|
+
off += 32;
|
|
68
|
+
const rangeManager = readPubkey(data, off);
|
|
69
|
+
off += 32;
|
|
70
|
+
const rangeManagerEnabled = readBool(data, off);
|
|
71
|
+
off += 1;
|
|
72
|
+
const rangeManagerMaxVbChangePct = data.readUInt16LE(off);
|
|
73
|
+
off += 2;
|
|
74
|
+
const rangeManagerMaxWeightChangePct = data.readUInt16LE(off);
|
|
75
|
+
off += 2;
|
|
76
|
+
const rangeManagerMinUpdateIntervalSecs = data.readUInt32LE(off);
|
|
77
|
+
off += 4;
|
|
78
|
+
const rangeManagerLastUpdated = readI64LE(data, off);
|
|
79
|
+
off += 8;
|
|
80
|
+
// Per-token AoS — 10 slots, each 144 bytes.
|
|
81
|
+
const tokenMints = [];
|
|
82
|
+
const tokenPrograms = [];
|
|
83
|
+
const normalizedWeights = [];
|
|
84
|
+
const maxSelloffPct = [];
|
|
85
|
+
const maxSelloffPeriodLength = [];
|
|
86
|
+
const variableFeeThresholdPct = [];
|
|
87
|
+
const variableFeeSlopeLowPct = [];
|
|
88
|
+
const variableFeeSlopeHighPct = [];
|
|
89
|
+
const variableFeeSlopeMidPct = [];
|
|
90
|
+
const variableFeeKinkPct = [];
|
|
91
|
+
const isActive = [];
|
|
92
|
+
const virtualBalances = [];
|
|
93
|
+
const actualBalances = [];
|
|
94
|
+
const protocolFeesOwed = [];
|
|
95
|
+
const previousSelloff = [];
|
|
96
|
+
const currentSelloff = [];
|
|
97
|
+
const windowStartTimestamp = [];
|
|
98
|
+
const selloffVbSnapshot = [];
|
|
99
|
+
for (let i = 0; i < MAX_TOKENS; i++) {
|
|
100
|
+
const slotStart = off;
|
|
101
|
+
// AssetConfig — 88 bytes
|
|
102
|
+
tokenMints.push(readPubkey(data, off));
|
|
103
|
+
off += 32;
|
|
104
|
+
tokenPrograms.push(readPubkey(data, off));
|
|
105
|
+
off += 32;
|
|
106
|
+
normalizedWeights.push(readU64LE(data, off));
|
|
107
|
+
off += 8;
|
|
108
|
+
maxSelloffPct.push(data.readUInt16LE(off));
|
|
109
|
+
off += 2;
|
|
110
|
+
maxSelloffPeriodLength.push(data.readUInt32LE(off));
|
|
111
|
+
off += 4;
|
|
112
|
+
variableFeeThresholdPct.push(data.readUInt16LE(off));
|
|
113
|
+
off += 2;
|
|
114
|
+
variableFeeSlopeLowPct.push(data.readUInt16LE(off));
|
|
115
|
+
off += 2;
|
|
116
|
+
variableFeeSlopeHighPct.push(data.readUInt16LE(off));
|
|
117
|
+
off += 2;
|
|
118
|
+
isActive.push(readBool(data, off));
|
|
119
|
+
off += 1;
|
|
120
|
+
// v5.1: the trailing `AssetConfig.reserved[3]` became these two fields.
|
|
121
|
+
// Byte-for-byte replacement — the slot is still 88 bytes and every
|
|
122
|
+
// preceding field keeps its offset, so a v4 account decodes as 0/0.
|
|
123
|
+
variableFeeSlopeMidPct.push(data.readUInt16LE(off));
|
|
124
|
+
off += 2;
|
|
125
|
+
variableFeeKinkPct.push(data.readUInt8(off));
|
|
126
|
+
off += 1;
|
|
127
|
+
// AssetDynamics — 56 bytes
|
|
128
|
+
virtualBalances.push(readU64LE(data, off));
|
|
129
|
+
off += 8;
|
|
130
|
+
actualBalances.push(readU64LE(data, off));
|
|
131
|
+
off += 8;
|
|
132
|
+
protocolFeesOwed.push(readU64LE(data, off));
|
|
133
|
+
off += 8;
|
|
134
|
+
previousSelloff.push(readU64LE(data, off));
|
|
135
|
+
off += 8;
|
|
136
|
+
currentSelloff.push(readU64LE(data, off));
|
|
137
|
+
off += 8;
|
|
138
|
+
windowStartTimestamp.push(readI64LE(data, off));
|
|
139
|
+
off += 8;
|
|
140
|
+
selloffVbSnapshot.push(readU64LE(data, off));
|
|
141
|
+
off += 8; // AssetDynamics.selloff_vb_snapshot
|
|
142
|
+
// Fail loudly rather than silently sliding every later field if the
|
|
143
|
+
// slot layout ever drifts again.
|
|
144
|
+
if (off - slotStart !== TOKEN_SLOT_LEN) {
|
|
145
|
+
throw new Error(`decodePoolAccount: TokenSlot ${i} consumed ${off - slotStart} bytes, expected ${TOKEN_SLOT_LEN}`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
const lookupTable = readPubkey(data, off);
|
|
149
|
+
off += 32;
|
|
150
|
+
// Effective per-pool Token-2022 banned-extensions bitmap (carved out of
|
|
151
|
+
// the old reserved[32]; pre-upgrade pools read 0).
|
|
152
|
+
const bannedExtensions = readU64LE(data, off);
|
|
153
|
+
off += 8;
|
|
154
|
+
// v5.1: two u32s carved out of the trailing reserved blob, which shrank
|
|
155
|
+
// [u8;24] → [u8;16]. Pre-v5.1 pools read 0 (band disabled).
|
|
156
|
+
const rangeManagerMaxLeverageBps = data.readUInt32LE(off);
|
|
157
|
+
off += 4;
|
|
158
|
+
const rangeManagerMinLeverageBps = data.readUInt32LE(off);
|
|
159
|
+
off += 4;
|
|
160
|
+
// Preserve the trailing ABI padding after checking its exact offset.
|
|
161
|
+
if (off + 16 !== exports.POOL_V4_LEN) {
|
|
162
|
+
throw new Error(`decodePoolAccount: consumed ${off} bytes before reserved[16], ` +
|
|
163
|
+
`expected ${exports.POOL_V4_LEN - 16}. Layout drift — regenerate this decoder.`);
|
|
164
|
+
}
|
|
165
|
+
const reserved = Buffer.from(data.subarray(off, off + 16));
|
|
166
|
+
return {
|
|
167
|
+
config,
|
|
168
|
+
bump,
|
|
169
|
+
tokenCount,
|
|
170
|
+
poolId,
|
|
171
|
+
swapFeeRate,
|
|
172
|
+
protocolFeeRate,
|
|
173
|
+
createdAt,
|
|
174
|
+
poolEnabled,
|
|
175
|
+
swapsEnabled,
|
|
176
|
+
poolAdmin,
|
|
177
|
+
pendingPoolAdmin,
|
|
178
|
+
rangeManager,
|
|
179
|
+
rangeManagerEnabled,
|
|
180
|
+
rangeManagerMaxVbChangePct,
|
|
181
|
+
rangeManagerMaxWeightChangePct,
|
|
182
|
+
rangeManagerMinUpdateIntervalSecs,
|
|
183
|
+
rangeManagerLastUpdated,
|
|
184
|
+
rangeManagerMaxLeverageBps,
|
|
185
|
+
rangeManagerMinLeverageBps,
|
|
186
|
+
tokenMints,
|
|
187
|
+
tokenPrograms,
|
|
188
|
+
normalizedWeights,
|
|
189
|
+
maxSelloffPct,
|
|
190
|
+
maxSelloffPeriodLength,
|
|
191
|
+
variableFeeThresholdPct,
|
|
192
|
+
variableFeeSlopeLowPct,
|
|
193
|
+
variableFeeSlopeHighPct,
|
|
194
|
+
variableFeeSlopeMidPct,
|
|
195
|
+
variableFeeKinkPct,
|
|
196
|
+
isActive,
|
|
197
|
+
virtualBalances,
|
|
198
|
+
actualBalances,
|
|
199
|
+
protocolFeesOwed,
|
|
200
|
+
previousSelloff,
|
|
201
|
+
currentSelloff,
|
|
202
|
+
windowStartTimestamp,
|
|
203
|
+
selloffVbSnapshot,
|
|
204
|
+
lookupTable,
|
|
205
|
+
bannedExtensions,
|
|
206
|
+
reserved,
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
function readPubkey(data, off) {
|
|
210
|
+
return new web3_js_1.PublicKey(data.slice(off, off + 32));
|
|
211
|
+
}
|
|
212
|
+
function readU64LE(data, off) {
|
|
213
|
+
return new bn_js_1.default(data.slice(off, off + 8), "le");
|
|
214
|
+
}
|
|
215
|
+
function readI64LE(data, off) {
|
|
216
|
+
return new bn_js_1.default(data.subarray(off, off + 8), "le").fromTwos(64);
|
|
217
|
+
}
|
|
218
|
+
function readBool(data, off) {
|
|
219
|
+
const value = data.readUInt8(off);
|
|
220
|
+
if (value > 1)
|
|
221
|
+
throw new Error(`decodePoolAccount: invalid Borsh bool ${value} at offset ${off}`);
|
|
222
|
+
return value === 1;
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=poolAccount.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poolAccount.js","sourceRoot":"","sources":["../../src/parsers/poolAccount.ts"],"names":[],"mappings":"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"}
|