@percolatorct/sdk 1.0.0-beta.1 → 1.0.0-beta.2

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/dist/index.js CHANGED
@@ -1562,7 +1562,14 @@ var V12_1_ENGINE_EMERGENCY_OI_MODE_OFF = 968;
1562
1562
  var V12_1_ENGINE_EMERGENCY_START_SLOT_OFF = 976;
1563
1563
  var V12_1_ENGINE_LAST_BREAKER_SLOT_OFF = 984;
1564
1564
  var V12_1_ENGINE_LIFETIME_FORCE_CLOSES_OFF = 1008;
1565
+ var V12_1_ACCT_MATCHER_PROGRAM_OFF = 144;
1566
+ var V12_1_ACCT_MATCHER_CONTEXT_OFF = 176;
1565
1567
  var V12_1_ACCT_OWNER_OFF = 208;
1568
+ var V12_1_ACCT_FEE_CREDITS_OFF = 240;
1569
+ var V12_1_ACCT_LAST_FEE_SLOT_OFF = 256;
1570
+ var V12_1_ACCT_POSITION_SIZE_OFF = 296;
1571
+ var V12_1_ACCT_ENTRY_PRICE_OFF = 280;
1572
+ var V12_1_ACCT_FUNDING_INDEX_OFF = 288;
1566
1573
  var V1M_ENGINE_OFF = 640;
1567
1574
  var V1M_CONFIG_LEN = 536;
1568
1575
  var V1M_ACCOUNT_SIZE = 248;
@@ -2652,16 +2659,17 @@ function parseAccount(data, idx) {
2652
2659
  if (data.length < base + layout.accountSize) {
2653
2660
  throw new Error("Slab data too short for account");
2654
2661
  }
2662
+ const isV12_1 = layout.accountSize >= 320;
2655
2663
  const isAdl = layout.accountSize >= 312;
2656
2664
  const warmupStartedOff = isAdl ? V_ADL_ACCT_WARMUP_STARTED_OFF : ACCT_WARMUP_STARTED_OFF;
2657
2665
  const warmupSlopeOff = isAdl ? V_ADL_ACCT_WARMUP_SLOPE_OFF : ACCT_WARMUP_SLOPE_OFF;
2658
- const positionSizeOff = isAdl ? V_ADL_ACCT_POSITION_SIZE_OFF : ACCT_POSITION_SIZE_OFF;
2659
- const entryPriceOff = isAdl ? V_ADL_ACCT_ENTRY_PRICE_OFF : ACCT_ENTRY_PRICE_OFF;
2660
- const fundingIndexOff = isAdl ? V_ADL_ACCT_FUNDING_INDEX_OFF : ACCT_FUNDING_INDEX_OFF;
2661
- const matcherProgOff = isAdl ? V_ADL_ACCT_MATCHER_PROGRAM_OFF : ACCT_MATCHER_PROGRAM_OFF;
2662
- const matcherCtxOff = isAdl ? V_ADL_ACCT_MATCHER_CONTEXT_OFF : ACCT_MATCHER_CONTEXT_OFF;
2663
- const feeCreditsOff = isAdl ? V_ADL_ACCT_FEE_CREDITS_OFF : ACCT_FEE_CREDITS_OFF;
2664
- const lastFeeSlotOff = isAdl ? V_ADL_ACCT_LAST_FEE_SLOT_OFF : ACCT_LAST_FEE_SLOT_OFF;
2666
+ const positionSizeOff = isV12_1 ? V12_1_ACCT_POSITION_SIZE_OFF : isAdl ? V_ADL_ACCT_POSITION_SIZE_OFF : ACCT_POSITION_SIZE_OFF;
2667
+ const entryPriceOff = isV12_1 ? V12_1_ACCT_ENTRY_PRICE_OFF : isAdl ? V_ADL_ACCT_ENTRY_PRICE_OFF : ACCT_ENTRY_PRICE_OFF;
2668
+ const fundingIndexOff = isV12_1 ? V12_1_ACCT_FUNDING_INDEX_OFF : isAdl ? V_ADL_ACCT_FUNDING_INDEX_OFF : ACCT_FUNDING_INDEX_OFF;
2669
+ const matcherProgOff = isV12_1 ? V12_1_ACCT_MATCHER_PROGRAM_OFF : isAdl ? V_ADL_ACCT_MATCHER_PROGRAM_OFF : ACCT_MATCHER_PROGRAM_OFF;
2670
+ const matcherCtxOff = isV12_1 ? V12_1_ACCT_MATCHER_CONTEXT_OFF : isAdl ? V_ADL_ACCT_MATCHER_CONTEXT_OFF : ACCT_MATCHER_CONTEXT_OFF;
2671
+ const feeCreditsOff = isV12_1 ? V12_1_ACCT_FEE_CREDITS_OFF : isAdl ? V_ADL_ACCT_FEE_CREDITS_OFF : ACCT_FEE_CREDITS_OFF;
2672
+ const lastFeeSlotOff = isV12_1 ? V12_1_ACCT_LAST_FEE_SLOT_OFF : isAdl ? V_ADL_ACCT_LAST_FEE_SLOT_OFF : ACCT_LAST_FEE_SLOT_OFF;
2665
2673
  const kindByte = readU8(data, base + ACCT_KIND_OFF);
2666
2674
  const kind = kindByte === 1 ? 1 /* LP */ : 0 /* User */;
2667
2675
  return {
@@ -2674,7 +2682,8 @@ function parseAccount(data, idx) {
2674
2682
  warmupSlopePerStep: readU128LE(data, base + warmupSlopeOff),
2675
2683
  positionSize: readI128LE(data, base + positionSizeOff),
2676
2684
  entryPrice: readU64LE(data, base + entryPriceOff),
2677
- fundingIndex: readI128LE(data, base + fundingIndexOff),
2685
+ // V12_1 changed funding_index from i128 to i64 (legacy field moved to end of account)
2686
+ fundingIndex: isV12_1 ? BigInt(readI64LE(data, base + fundingIndexOff)) : readI128LE(data, base + fundingIndexOff),
2678
2687
  matcherProgram: new PublicKey3(data.subarray(base + matcherProgOff, base + matcherProgOff + 32)),
2679
2688
  matcherContext: new PublicKey3(data.subarray(base + matcherCtxOff, base + matcherCtxOff + 32)),
2680
2689
  owner: new PublicKey3(data.subarray(base + layout.acctOwnerOff, base + layout.acctOwnerOff + 32)),