@exponent-labs/exponent-vaults-fetcher 0.9.19 → 0.9.20

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/build/fetcher.js CHANGED
@@ -304,6 +304,7 @@ class ExponentVaultsFetcher {
304
304
  impliedApy: impliedApyBps === null ? null : impliedApyBps / 1_000_000,
305
305
  priceInterfaceAccounts,
306
306
  interfaceAccounts: [],
307
+ scopeConfig: null,
307
308
  },
308
309
  };
309
310
  };
@@ -349,7 +350,8 @@ class ExponentVaultsFetcher {
349
350
  const decoded = decodePriceInterfaceAccounts(info.data);
350
351
  for (const entry of activePriceEntries) {
351
352
  if (entry.priceInterfaceAccounts.equals(key)) {
352
- entry.interfaceAccounts = decoded;
353
+ entry.interfaceAccounts = decoded.interfaceAccounts;
354
+ entry.scopeConfig = decoded.scopeConfig;
353
355
  }
354
356
  }
355
357
  }
@@ -397,6 +399,35 @@ function decodePriceInterfaceAccounts(data) {
397
399
  interfaceAccounts.push(new anchor_1.web3.PublicKey(buffer.subarray(offset, offset + PUBKEY_BYTES)));
398
400
  offset += PUBKEY_BYTES;
399
401
  }
400
- return interfaceAccounts;
402
+ if (buffer.length === expectedSize) {
403
+ return { interfaceAccounts, scopeConfig: null };
404
+ }
405
+ const stateTag = buffer.readUInt8(offset);
406
+ offset += 1;
407
+ if (stateTag === 0 || stateTag === 1) {
408
+ return { interfaceAccounts, scopeConfig: null };
409
+ }
410
+ if (stateTag !== 2) {
411
+ throw new Error(`Unknown PriceInterfaceAccounts state tag: ${stateTag}`);
412
+ }
413
+ const scopeConfigSize = 4 * 2 + U64_BYTES;
414
+ if (buffer.length < offset + scopeConfigSize) {
415
+ throw new Error(`PriceInterfaceAccounts Scope state truncated: expected ${offset + scopeConfigSize} bytes, got ${buffer.length}`);
416
+ }
417
+ const priceChain = [
418
+ buffer.readUInt16LE(offset),
419
+ buffer.readUInt16LE(offset + 2),
420
+ buffer.readUInt16LE(offset + 4),
421
+ buffer.readUInt16LE(offset + 6),
422
+ ];
423
+ offset += 8;
424
+ const maximumAgeSeconds = buffer.readBigUInt64LE(offset);
425
+ return {
426
+ interfaceAccounts,
427
+ scopeConfig: {
428
+ priceChain,
429
+ maximumAgeSeconds,
430
+ },
431
+ };
401
432
  }
402
433
  //# sourceMappingURL=fetcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"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"}
package/build/types.d.ts CHANGED
@@ -78,6 +78,7 @@ export type TokenAccountEntry = {
78
78
  tokenMint: web3.PublicKey;
79
79
  balances: {
80
80
  tokenAccount: web3.PublicKey;
81
+ mint: web3.PublicKey;
81
82
  priceId: PriceId;
82
83
  lastObservedAmount: bigint;
83
84
  }[];
@@ -129,6 +130,9 @@ export type KaminoFarmEntry = {
129
130
  export type JupiterBorrowEntry = {
130
131
  position: web3.PublicKey;
131
132
  };
133
+ export type OrcaWhirlpoolPositionEntry = {
134
+ position: web3.PublicKey;
135
+ };
132
136
  export type StrategyPosition = {
133
137
  orderbook: {
134
138
  0: OrderbookEntry;
@@ -165,6 +169,10 @@ export type StrategyPosition = {
165
169
  jupiterBorrow: {
166
170
  0: JupiterBorrowEntry;
167
171
  };
172
+ } | {
173
+ orcaWhirlpoolPosition: {
174
+ 0: OrcaWhirlpoolPositionEntry;
175
+ };
168
176
  };
169
177
  export type ExponentVault = {
170
178
  navAumCircuitBreakerState: Uint8Array;
@@ -223,6 +231,11 @@ export type ExponentPrice = {
223
231
  impliedApy: number | null;
224
232
  priceInterfaceAccounts: web3.PublicKey;
225
233
  interfaceAccounts: web3.PublicKey[];
234
+ scopeConfig?: ScopePriceConfig | null;
235
+ };
236
+ export type ScopePriceConfig = {
237
+ priceChain: [number, number, number, number];
238
+ maximumAgeSeconds: bigint;
226
239
  };
227
240
  export type ExponentPrices = {
228
241
  /** Authorized price managers */
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAwPA,oCAAoC;AACpC,iCAAiC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;AAoQA,oCAAoC;AACpC,iCAAiC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exponent-labs/exponent-vaults-fetcher",
3
- "version": "0.9.19",
3
+ "version": "0.9.20",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "license": "AGPL-3.0",
@@ -9,8 +9,8 @@
9
9
  },
10
10
  "dependencies": {
11
11
  "@coral-xyz/anchor": "0.30.1",
12
- "@exponent-labs/exponent-vaults-idl": "0.9.19",
13
- "@exponent-labs/exponent-vaults-pda": "0.9.19"
12
+ "@exponent-labs/exponent-vaults-idl": "0.9.20",
13
+ "@exponent-labs/exponent-vaults-pda": "0.9.20"
14
14
  },
15
15
  "devDependencies": {
16
16
  "@types/bn.js": "^5.1.0",
package/src/fetcher.ts CHANGED
@@ -5,7 +5,7 @@ import { ExponentVaultsPDA } from "@exponent-labs/exponent-vaults-pda"
5
5
 
6
6
  import { IGNORED_VAULTS } from "./constants"
7
7
  import { transformAnchorData } from "./typeUtils"
8
- import { ActionProposal, ExponentPrices, ExponentVault, WithdrawalAccount } from "./types"
8
+ import { ActionProposal, ExponentPrices, ExponentVault, type ScopePriceConfig, WithdrawalAccount } from "./types"
9
9
 
10
10
  const EXPONENT_PRICES_META_DISCRIMINATOR = Buffer.from([188, 97, 196, 52, 192, 41, 211, 196])
11
11
  const MAX_PRICES = 1024
@@ -382,6 +382,7 @@ export class ExponentVaultsFetcher {
382
382
  impliedApy: impliedApyBps === null ? null : impliedApyBps / 1_000_000,
383
383
  priceInterfaceAccounts,
384
384
  interfaceAccounts: [],
385
+ scopeConfig: null,
385
386
  },
386
387
  }
387
388
  }
@@ -444,7 +445,8 @@ export class ExponentVaultsFetcher {
444
445
  const decoded = decodePriceInterfaceAccounts(info.data)
445
446
  for (const entry of activePriceEntries) {
446
447
  if (entry.priceInterfaceAccounts.equals(key)) {
447
- entry.interfaceAccounts = decoded
448
+ entry.interfaceAccounts = decoded.interfaceAccounts
449
+ entry.scopeConfig = decoded.scopeConfig
448
450
  }
449
451
  }
450
452
  }
@@ -479,7 +481,12 @@ export class ExponentVaultsFetcher {
479
481
  }
480
482
  }
481
483
 
482
- function decodePriceInterfaceAccounts(data: Buffer | Uint8Array): web3.PublicKey[] {
484
+ type DecodedPriceInterfaceAccounts = {
485
+ interfaceAccounts: web3.PublicKey[]
486
+ scopeConfig: ScopePriceConfig | null
487
+ }
488
+
489
+ function decodePriceInterfaceAccounts(data: Buffer | Uint8Array): DecodedPriceInterfaceAccounts {
483
490
  const buffer = Buffer.from(data)
484
491
  if (buffer.length < 12) {
485
492
  throw new Error(`PriceInterfaceAccounts account too small: ${buffer.length} bytes`)
@@ -498,5 +505,42 @@ function decodePriceInterfaceAccounts(data: Buffer | Uint8Array): web3.PublicKey
498
505
  offset += PUBKEY_BYTES
499
506
  }
500
507
 
501
- return interfaceAccounts
508
+ if (buffer.length === expectedSize) {
509
+ return { interfaceAccounts, scopeConfig: null }
510
+ }
511
+
512
+ const stateTag = buffer.readUInt8(offset)
513
+ offset += 1
514
+
515
+ if (stateTag === 0 || stateTag === 1) {
516
+ return { interfaceAccounts, scopeConfig: null }
517
+ }
518
+
519
+ if (stateTag !== 2) {
520
+ throw new Error(`Unknown PriceInterfaceAccounts state tag: ${stateTag}`)
521
+ }
522
+
523
+ const scopeConfigSize = 4 * 2 + U64_BYTES
524
+ if (buffer.length < offset + scopeConfigSize) {
525
+ throw new Error(
526
+ `PriceInterfaceAccounts Scope state truncated: expected ${offset + scopeConfigSize} bytes, got ${buffer.length}`,
527
+ )
528
+ }
529
+
530
+ const priceChain = [
531
+ buffer.readUInt16LE(offset),
532
+ buffer.readUInt16LE(offset + 2),
533
+ buffer.readUInt16LE(offset + 4),
534
+ buffer.readUInt16LE(offset + 6),
535
+ ] as [number, number, number, number]
536
+ offset += 8
537
+ const maximumAgeSeconds = buffer.readBigUInt64LE(offset)
538
+
539
+ return {
540
+ interfaceAccounts,
541
+ scopeConfig: {
542
+ priceChain,
543
+ maximumAgeSeconds,
544
+ },
545
+ }
502
546
  }
package/src/types.ts CHANGED
@@ -82,6 +82,7 @@ export type TokenAccountEntry = {
82
82
  tokenMint: web3.PublicKey
83
83
  balances: {
84
84
  tokenAccount: web3.PublicKey
85
+ mint: web3.PublicKey
85
86
  priceId: PriceId
86
87
  lastObservedAmount: bigint
87
88
  }[]
@@ -142,6 +143,10 @@ export type JupiterBorrowEntry = {
142
143
  position: web3.PublicKey
143
144
  }
144
145
 
146
+ export type OrcaWhirlpoolPositionEntry = {
147
+ position: web3.PublicKey
148
+ }
149
+
145
150
  export type StrategyPosition =
146
151
  | { orderbook: { 0: OrderbookEntry } }
147
152
  | { tokenAccount: { 0: TokenAccountEntry } }
@@ -152,6 +157,7 @@ export type StrategyPosition =
152
157
  | { loopscaleStrategy: { 0: LoopscaleStrategyEntry } }
153
158
  | { kaminoFarm: { 0: KaminoFarmEntry } }
154
159
  | { jupiterBorrow: { 0: JupiterBorrowEntry } }
160
+ | { orcaWhirlpoolPosition: { 0: OrcaWhirlpoolPositionEntry } }
155
161
 
156
162
  export type ExponentVault = {
157
163
  navAumCircuitBreakerState: Uint8Array
@@ -212,6 +218,12 @@ export type ExponentPrice = {
212
218
  impliedApy: number | null
213
219
  priceInterfaceAccounts: web3.PublicKey
214
220
  interfaceAccounts: web3.PublicKey[]
221
+ scopeConfig?: ScopePriceConfig | null
222
+ }
223
+
224
+ export type ScopePriceConfig = {
225
+ priceChain: [number, number, number, number]
226
+ maximumAgeSeconds: bigint
215
227
  }
216
228
 
217
229
  export type ExponentPrices = {