@exponent-labs/exponent-fetcher 0.0.10 → 0.1.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.
@@ -238,12 +238,28 @@ export declare function fetchFragmetricIndex({ connection, fragmetricFund, }: {
238
238
  receiptTokenMint: web3.PublicKey;
239
239
  wrappedTokenMint: web3.PublicKey;
240
240
  }>;
241
+ export declare function fetchFragmetricSupportedTokenIndex({ connection, fragmetricFund, index, }: {
242
+ connection: web3.Connection;
243
+ fragmetricFund: web3.PublicKey;
244
+ index: number;
245
+ }): Promise<{
246
+ index: number;
247
+ receiptTokenMint: web3.PublicKey;
248
+ wrappedTokenMint: web3.PublicKey;
249
+ }>;
241
250
  interface AccountsInterface {
242
251
  [k: string]: web3.PublicKey;
243
252
  }
244
- export declare function fetchMeteoraUsdcUsdtIndex({ connection, accounts, onChainTime, }: {
253
+ export declare function fetchMeteoraIndex({ connection, accounts, onChainTime, }: {
245
254
  connection: web3.Connection;
246
255
  accounts: AccountsInterface;
247
256
  onChainTime: number;
248
- }): Promise<number>;
257
+ }): Promise<{
258
+ virtualPrice: number;
259
+ tokenAMint: web3.PublicKey;
260
+ tokenBMint: web3.PublicKey;
261
+ poolVaultALpTokenAmount: number;
262
+ poolVaultBLpTokenAmount: number;
263
+ lpSupply: number;
264
+ }>;
249
265
  export {};
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.fetchMeteoraUsdcUsdtIndex = exports.fetchFragmetricIndex = exports.fetchGenericSyMetaIndex = exports.fetchPyth = exports.fetchJitoRestaking = exports.fetchPerenaStablePoolData = exports.fetchSplStakePoolIndex = exports.deserializeEmission = exports.serializeEmission = exports.fetchKaminoReserve = exports.ExponentFetcher = exports.MyWallet = exports.deserializeAnchorizedPNumFromJson = exports.serializeAnchorizedPNumFromJson = void 0;
6
+ exports.fetchMeteoraIndex = exports.fetchFragmetricSupportedTokenIndex = exports.fetchFragmetricIndex = exports.fetchGenericSyMetaIndex = exports.fetchPyth = exports.fetchJitoRestaking = exports.fetchPerenaStablePoolData = exports.fetchSplStakePoolIndex = exports.deserializeEmission = exports.serializeEmission = exports.fetchKaminoReserve = exports.ExponentFetcher = exports.MyWallet = exports.deserializeAnchorizedPNumFromJson = exports.serializeAnchorizedPNumFromJson = void 0;
7
7
  const anchor_1 = require("@coral-xyz/anchor");
8
8
  const exponent_idl_1 = require("@exponent-labs/exponent-idl");
9
9
  const kamino_sy_idl_1 = require("@exponent-labs/kamino-sy-idl");
@@ -471,15 +471,32 @@ async function fetchFragmetricIndex({ connection, fragmetricFund, }) {
471
471
  return { index, receiptTokenMint, wrappedTokenMint };
472
472
  }
473
473
  exports.fetchFragmetricIndex = fetchFragmetricIndex;
474
- async function fetchMeteoraUsdcUsdtIndex({ connection, accounts, onChainTime, }) {
474
+ async function fetchFragmetricSupportedTokenIndex({ connection, fragmetricFund, index, }) {
475
+ const account = await connection.getAccountInfo(fragmetricFund);
476
+ const coder = new anchor_2.BorshCoder(fragmetric_idl_1.IDL);
477
+ const data = coder.accounts.decode("FundAccount", account.data);
478
+ const syIndex = Number(10 ** data.supported_tokens[index].decimals) /
479
+ Number(data.supported_tokens[index].one_token_as_receipt_token);
480
+ const receiptTokenMint = new anchor_1.web3.PublicKey(data.receipt_token_mint);
481
+ const wrappedTokenMint = new anchor_1.web3.PublicKey(data.wrapped_token.mint);
482
+ return { index: syIndex, receiptTokenMint, wrappedTokenMint };
483
+ }
484
+ exports.fetchFragmetricSupportedTokenIndex = fetchFragmetricSupportedTokenIndex;
485
+ async function fetchMeteoraIndex({ connection, accounts, onChainTime, }) {
475
486
  try {
476
487
  const VIRTUAL_PRICE_PRECISION = new anchor_1.BN(100_000_000);
477
488
  const pool = await (0, meteora_idl_1.decodePoolAccount)(connection, accounts.pool);
478
- const poolLpSupply = new anchor_1.BN((await (0, spl_token_1.getMint)(connection, pool.lpMint)).supply.toString());
489
+ const poolMint = await (0, spl_token_1.getMint)(connection, pool.lpMint);
490
+ const poolLpSupply = new anchor_1.BN(poolMint.supply.toString());
491
+ const poolLpDecimals = Number(poolMint.decimals.toString());
479
492
  const vaultA = await (0, meteora_idl_1.decodeVaultAccount)(connection, accounts.vaultA);
480
493
  const vaultB = await (0, meteora_idl_1.decodeVaultAccount)(connection, accounts.vaultB);
481
- const vaultALpSupply = (await (0, spl_token_1.getMint)(connection, vaultA.lpMint)).supply;
482
- const vaultBLpSupply = (await (0, spl_token_1.getMint)(connection, vaultB.lpMint)).supply;
494
+ const vaultLpMintA = await (0, spl_token_1.getMint)(connection, vaultA.lpMint);
495
+ const vaultLpMintB = await (0, spl_token_1.getMint)(connection, vaultB.lpMint);
496
+ const vaultALpSupply = vaultLpMintA.supply;
497
+ const vaultBLpSupply = vaultLpMintB.supply;
498
+ const decimalsA = vaultLpMintA.decimals;
499
+ const decimalsB = vaultLpMintB.decimals;
483
500
  const poolVaultALpTokenAmount = (await (0, spl_token_1.getAccount)(connection, pool.aVaultLp)).amount;
484
501
  const poolVaultBLpTokenAmount = (await (0, spl_token_1.getAccount)(connection, pool.bVaultLp)).amount;
485
502
  const tokenAAmount = (0, meteora_1.getAmountByShare)(new anchor_1.BN(poolVaultALpTokenAmount.toString()), new anchor_1.BN(vaultALpSupply.toString()), vaultA, onChainTime);
@@ -487,11 +504,18 @@ async function fetchMeteoraUsdcUsdtIndex({ connection, accounts, onChainTime, })
487
504
  const d = (0, meteora_1.computeD)(pool.curveType, tokenAAmount, tokenBAmount);
488
505
  const virtualPriceBigNum = poolLpSupply.isZero() ? new anchor_1.BN(0) : d.mul(VIRTUAL_PRICE_PRECISION).div(poolLpSupply);
489
506
  const virtualPrice = new decimal_js_1.default(virtualPriceBigNum.toString()).div(VIRTUAL_PRICE_PRECISION.toString()).toNumber();
490
- return virtualPrice;
507
+ return {
508
+ virtualPrice,
509
+ tokenAMint: pool.tokenAMint,
510
+ tokenBMint: pool.tokenBMint,
511
+ poolVaultALpTokenAmount: Number(poolVaultALpTokenAmount) / 10 ** decimalsA,
512
+ poolVaultBLpTokenAmount: Number(poolVaultBLpTokenAmount) / 10 ** decimalsB,
513
+ lpSupply: poolLpSupply.toNumber() / 10 ** poolLpDecimals,
514
+ };
491
515
  }
492
516
  catch (error) {
493
517
  throw error;
494
518
  }
495
519
  }
496
- exports.fetchMeteoraUsdcUsdtIndex = fetchMeteoraUsdcUsdtIndex;
520
+ exports.fetchMeteoraIndex = fetchMeteoraIndex;
497
521
  //# sourceMappingURL=exponentFetcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exponentFetcher.js","sourceRoot":"","sources":["../src/exponentFetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exponentFetcher.js","sourceRoot":"","sources":["../src/exponentFetcher.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ exports.computeStableSwapInvariant = computeStableSwapInvariant;
97
97
  *
98
98
  */
99
99
  function computeD(curve, tokenAmountA, tokenAmountB) {
100
- if ("cosntantProduct" in curve) {
100
+ if ("constantProduct" in curve) {
101
101
  return (0, bn_sqrt_1.default)(tokenAmountA.mul(tokenAmountB));
102
102
  }
103
103
  else if ("stable" in curve) {
@@ -106,11 +106,15 @@ function computeD(curve, tokenAmountA, tokenAmountB) {
106
106
  const upscaledTokenA = tokenMultiplier.tokenAMultiplier.mul(tokenAmountA);
107
107
  const upscaledTokenB = tokenMultiplier.tokenBMultiplier.mul(tokenAmountB);
108
108
  let invariantD = (0, exports.computeStableSwapInvariant)(amp, upscaledTokenA, upscaledTokenB);
109
- if (!depeg.depegType["none"]) {
109
+ // Type assertion to tell TypeScript about the structure of depegType
110
+ const depegType = depeg.depegType;
111
+ if (!("none" in depegType)) {
110
112
  return invariantD.div(PRECISION);
111
113
  }
112
114
  return invariantD;
113
115
  }
116
+ // Default case - should never reach here if CurveType is properly defined
117
+ throw new Error("Invalid curve type");
114
118
  }
115
119
  exports.computeD = computeD;
116
120
  //# sourceMappingURL=meteora.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"meteora.js","sourceRoot":"","sources":["../../src/utils/meteora.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meteora.js","sourceRoot":"","sources":["../../src/utils/meteora.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exponent-labs/exponent-fetcher",
3
- "version": "0.0.10",
3
+ "version": "0.1.2",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "license": "AGPL-3.0",
@@ -9,17 +9,17 @@
9
9
  },
10
10
  "dependencies": {
11
11
  "@coral-xyz/anchor": "0.30.0",
12
- "@exponent-labs/exponent-idl": "0.0.10",
13
- "@exponent-labs/exponent-types": "0.0.10",
14
- "@exponent-labs/fragmetric-idl": "0.0.10",
15
- "@exponent-labs/generic-sy-idl": "0.0.10",
16
- "@exponent-labs/jito-restaking-sy-idl": "0.0.10",
17
- "@exponent-labs/kamino-reserve-deserializer": "0.0.10",
18
- "@exponent-labs/marginfi-sy-idl": "0.0.10",
19
- "@exponent-labs/meteora-idl": "0.0.10",
20
- "@exponent-labs/kamino-sy-idl": "0.0.10",
21
- "@exponent-labs/perena-sy-idl": "0.0.10",
22
- "@exponent-labs/precise-number": "0.0.10",
12
+ "@exponent-labs/exponent-idl": "0.1.2",
13
+ "@exponent-labs/exponent-types": "0.1.2",
14
+ "@exponent-labs/fragmetric-idl": "0.1.2",
15
+ "@exponent-labs/generic-sy-idl": "0.1.2",
16
+ "@exponent-labs/jito-restaking-sy-idl": "0.1.2",
17
+ "@exponent-labs/kamino-reserve-deserializer": "0.1.2",
18
+ "@exponent-labs/marginfi-sy-idl": "0.1.2",
19
+ "@exponent-labs/meteora-idl": "0.1.2",
20
+ "@exponent-labs/kamino-sy-idl": "0.1.2",
21
+ "@exponent-labs/perena-sy-idl": "0.1.2",
22
+ "@exponent-labs/precise-number": "0.1.2",
23
23
  "@solana/spl-stake-pool": "1.1.8",
24
24
  "@solana/spl-token": "0.4.6",
25
25
  "bn-sqrt": "^1.0.0",
@@ -858,11 +858,33 @@ export async function fetchFragmetricIndex({
858
858
  return { index, receiptTokenMint, wrappedTokenMint }
859
859
  }
860
860
 
861
+ export async function fetchFragmetricSupportedTokenIndex({
862
+ connection,
863
+ fragmetricFund,
864
+ index,
865
+ }: {
866
+ connection: web3.Connection
867
+ fragmetricFund: web3.PublicKey
868
+ index: number
869
+ }) {
870
+ const account = await connection.getAccountInfo(fragmetricFund)
871
+ const coder = new BorshCoder(FragmetricIdl as Idl)
872
+ const data = coder.accounts.decode("FundAccount", account.data)
873
+ const syIndex =
874
+ Number(10 ** data.supported_tokens[index].decimals) /
875
+ Number(data.supported_tokens[index].one_token_as_receipt_token)
876
+
877
+ const receiptTokenMint = new web3.PublicKey(data.receipt_token_mint)
878
+ const wrappedTokenMint = new web3.PublicKey(data.wrapped_token.mint)
879
+
880
+ return { index: syIndex, receiptTokenMint, wrappedTokenMint }
881
+ }
882
+
861
883
  interface AccountsInterface {
862
884
  [k: string]: web3.PublicKey
863
885
  }
864
886
 
865
- export async function fetchMeteoraUsdcUsdtIndex({
887
+ export async function fetchMeteoraIndex({
866
888
  connection,
867
889
  accounts,
868
890
  onChainTime,
@@ -870,19 +892,34 @@ export async function fetchMeteoraUsdcUsdtIndex({
870
892
  connection: web3.Connection
871
893
  accounts: AccountsInterface
872
894
  onChainTime: number
873
- }): Promise<number> {
895
+ }): Promise<{
896
+ virtualPrice: number
897
+ tokenAMint: web3.PublicKey
898
+ tokenBMint: web3.PublicKey
899
+ poolVaultALpTokenAmount: number
900
+ poolVaultBLpTokenAmount: number
901
+ lpSupply: number
902
+ }> {
874
903
  try {
875
904
  const VIRTUAL_PRICE_PRECISION = new BN(100_000_000)
876
905
 
877
906
  const pool = await decodePoolAccount(connection, accounts.pool)
878
907
 
879
- const poolLpSupply = new BN((await getMint(connection, pool.lpMint)).supply.toString())
908
+ const poolMint = await getMint(connection, pool.lpMint)
909
+ const poolLpSupply = new BN(poolMint.supply.toString())
910
+ const poolLpDecimals = Number(poolMint.decimals.toString())
880
911
 
881
912
  const vaultA = await decodeVaultAccount(connection, accounts.vaultA)
882
913
  const vaultB = await decodeVaultAccount(connection, accounts.vaultB)
883
914
 
884
- const vaultALpSupply = (await getMint(connection, vaultA.lpMint)).supply
885
- const vaultBLpSupply = (await getMint(connection, vaultB.lpMint)).supply
915
+ const vaultLpMintA = await getMint(connection, vaultA.lpMint)
916
+ const vaultLpMintB = await getMint(connection, vaultB.lpMint)
917
+
918
+ const vaultALpSupply = vaultLpMintA.supply
919
+ const vaultBLpSupply = vaultLpMintB.supply
920
+
921
+ const decimalsA = vaultLpMintA.decimals
922
+ const decimalsB = vaultLpMintB.decimals
886
923
 
887
924
  const poolVaultALpTokenAmount = (await getAccount(connection, pool.aVaultLp)).amount
888
925
  const poolVaultBLpTokenAmount = (await getAccount(connection, pool.bVaultLp)).amount
@@ -904,7 +941,14 @@ export async function fetchMeteoraUsdcUsdtIndex({
904
941
  const virtualPriceBigNum = poolLpSupply.isZero() ? new BN(0) : d.mul(VIRTUAL_PRICE_PRECISION).div(poolLpSupply)
905
942
  const virtualPrice = new Decimal(virtualPriceBigNum.toString()).div(VIRTUAL_PRICE_PRECISION.toString()).toNumber()
906
943
 
907
- return virtualPrice
944
+ return {
945
+ virtualPrice,
946
+ tokenAMint: pool.tokenAMint,
947
+ tokenBMint: pool.tokenBMint,
948
+ poolVaultALpTokenAmount: Number(poolVaultALpTokenAmount) / 10 ** decimalsA,
949
+ poolVaultBLpTokenAmount: Number(poolVaultBLpTokenAmount) / 10 ** decimalsB,
950
+ lpSupply: poolLpSupply.toNumber() / 10 ** poolLpDecimals,
951
+ }
908
952
  } catch (error) {
909
953
  throw error
910
954
  }
@@ -106,7 +106,7 @@ export const computeStableSwapInvariant = (ampFactor: BN, amountA: BN, amountB:
106
106
  *
107
107
  */
108
108
  export function computeD(curve: CurveType, tokenAmountA: BN, tokenAmountB: BN): BN {
109
- if ("cosntantProduct" in curve) {
109
+ if ("constantProduct" in curve) {
110
110
  return sqrt(tokenAmountA.mul(tokenAmountB))
111
111
  } else if ("stable" in curve) {
112
112
  const PRECISION = new BN(1_000_000)
@@ -117,10 +117,15 @@ export function computeD(curve: CurveType, tokenAmountA: BN, tokenAmountB: BN):
117
117
 
118
118
  let invariantD = computeStableSwapInvariant(amp, upscaledTokenA, upscaledTokenB)
119
119
 
120
- if (!depeg.depegType["none"]) {
120
+ // Type assertion to tell TypeScript about the structure of depegType
121
+ const depegType = depeg.depegType as { none?: Record<string, never> }
122
+ if (!("none" in depegType)) {
121
123
  return invariantD.div(PRECISION)
122
124
  }
123
125
 
124
126
  return invariantD
125
127
  }
128
+
129
+ // Default case - should never reach here if CurveType is properly defined
130
+ throw new Error("Invalid curve type")
126
131
  }