@augustdigital/sdk 4.9.0-alpha → 4.10.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.
Files changed (61) hide show
  1. package/lib/core/constants/core.d.ts +1 -0
  2. package/lib/core/constants/core.js +2 -1
  3. package/lib/core/constants/core.js.map +1 -1
  4. package/lib/core/fetcher.d.ts +1 -0
  5. package/lib/core/fetcher.js +27 -0
  6. package/lib/core/fetcher.js.map +1 -1
  7. package/lib/modules/vaults/getters.js +170 -116
  8. package/lib/modules/vaults/getters.js.map +1 -1
  9. package/lib/types/points.d.ts +0 -7
  10. package/package.json +1 -1
  11. package/lib/core/constants.adapters.d.ts +0 -89
  12. package/lib/core/constants.adapters.js +0 -160
  13. package/lib/core/constants.adapters.js.map +0 -1
  14. package/lib/core/constants.core.d.ts +0 -71
  15. package/lib/core/constants.core.js +0 -75
  16. package/lib/core/constants.core.js.map +0 -1
  17. package/lib/core/constants.d.ts +0 -88
  18. package/lib/core/constants.js +0 -148
  19. package/lib/core/constants.js.map +0 -1
  20. package/lib/core/constants.vaults.d.ts +0 -19
  21. package/lib/core/constants.vaults.js +0 -155
  22. package/lib/core/constants.vaults.js.map +0 -1
  23. package/lib/core/constants.web3.d.ts +0 -30
  24. package/lib/core/constants.web3.js +0 -112
  25. package/lib/core/constants.web3.js.map +0 -1
  26. package/lib/core/core.helpers.d.ts +0 -23
  27. package/lib/core/core.helpers.js +0 -210
  28. package/lib/core/core.helpers.js.map +0 -1
  29. package/lib/core/helpers.adapters.d.ts +0 -4
  30. package/lib/core/helpers.adapters.js +0 -28
  31. package/lib/core/helpers.adapters.js.map +0 -1
  32. package/lib/core/helpers.core.d.ts +0 -23
  33. package/lib/core/helpers.core.js +0 -210
  34. package/lib/core/helpers.core.js.map +0 -1
  35. package/lib/core/helpers.signer.d.ts +0 -5
  36. package/lib/core/helpers.signer.js +0 -54
  37. package/lib/core/helpers.signer.js.map +0 -1
  38. package/lib/core/helpers.vaults.d.ts +0 -16
  39. package/lib/core/helpers.vaults.js +0 -145
  40. package/lib/core/helpers.vaults.js.map +0 -1
  41. package/lib/core/helpers.web3.d.ts +0 -29
  42. package/lib/core/helpers.web3.js +0 -376
  43. package/lib/core/helpers.web3.js.map +0 -1
  44. package/lib/core/read.actions.d.ts +0 -3
  45. package/lib/core/read.actions.js +0 -39
  46. package/lib/core/read.actions.js.map +0 -1
  47. package/lib/core/web3.helpers.d.ts +0 -29
  48. package/lib/core/web3.helpers.js +0 -356
  49. package/lib/core/web3.helpers.js.map +0 -1
  50. package/lib/core/write.actions.d.ts +0 -9
  51. package/lib/core/write.actions.js +0 -51
  52. package/lib/core/write.actions.js.map +0 -1
  53. package/lib/modules/vaults/constants.d.ts +0 -65
  54. package/lib/modules/vaults/constants.js +0 -194
  55. package/lib/modules/vaults/constants.js.map +0 -1
  56. package/lib/modules/vaults/vault.actions.d.ts +0 -10
  57. package/lib/modules/vaults/vault.actions.js +0 -95
  58. package/lib/modules/vaults/vault.actions.js.map +0 -1
  59. package/lib/verify.d.ts +0 -2
  60. package/lib/verify.js +0 -33
  61. package/lib/verify.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import { IAddress } from '../../types';
2
2
  export declare const REQUEST_TIMEOUT_MS = 90000;
3
+ export declare const PRICE_SERVER_URL = "https://prices.augustdigital.io";
3
4
  export declare const WEBSERVER_URL: {
4
5
  production: string;
5
6
  development: string;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_FETCH_OPTIONS = exports.WEBSERVER_ENDPOINTS = exports.WEBSERVER_URL = exports.REQUEST_TIMEOUT_MS = void 0;
3
+ exports.DEFAULT_FETCH_OPTIONS = exports.WEBSERVER_ENDPOINTS = exports.WEBSERVER_URL = exports.PRICE_SERVER_URL = exports.REQUEST_TIMEOUT_MS = void 0;
4
4
  const ethers_1 = require("ethers");
5
5
  exports.REQUEST_TIMEOUT_MS = 90000;
6
+ exports.PRICE_SERVER_URL = 'https://prices.augustdigital.io';
6
7
  exports.WEBSERVER_URL = {
7
8
  production: 'https://backend.fractalprotocol.org',
8
9
  development: 'https://backend-dev.augustdigital.io',
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src.ts/core/constants/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src.ts/core/constants/core.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export declare function withRetry<T>(fn: () => Promise<T>, maxRetries?: number,
20
20
  export declare function fetchTokenizedVault(pool: IAddress, headers?: IWSMonitorHeaders): Promise<ITokenizedVault[]>;
21
21
  export declare function fetchTokenizedVaults(pool?: IAddress, headers?: IWSMonitorHeaders): Promise<ITokenizedVault[]>;
22
22
  export declare function fetchTokenPrice(symbol: string, provider?: IContractRunner, coinGeckoKey?: string, headers?: IWSMonitorHeaders): Promise<any>;
23
+ export declare function fetchTokenPriceByAddress(address: IAddress, chainId: number, headers?: IWSMonitorHeaders): Promise<number>;
23
24
  export declare function fetchTokenizedVaultLoans(pool: IAddress, chainId: number, headers?: IWSMonitorHeaders): Promise<IWSVaultLoan[]>;
24
25
  export declare function promiseSettle<T>(promises: Promise<T>[], maxRetries?: number, baseDelay?: number): Promise<T[]>;
25
26
  export {};
@@ -9,6 +9,7 @@ exports.withRetry = withRetry;
9
9
  exports.fetchTokenizedVault = fetchTokenizedVault;
10
10
  exports.fetchTokenizedVaults = fetchTokenizedVaults;
11
11
  exports.fetchTokenPrice = fetchTokenPrice;
12
+ exports.fetchTokenPriceByAddress = fetchTokenPriceByAddress;
12
13
  exports.fetchTokenizedVaultLoans = fetchTokenizedVaultLoans;
13
14
  exports.promiseSettle = promiseSettle;
14
15
  const core_1 = require("./helpers/core");
@@ -366,6 +367,32 @@ async function _fetchTokenPriceInternal(symbol, provider, coinGeckoKey, headers)
366
367
  }
367
368
  }
368
369
  }
370
+ async function fetchTokenPriceByAddress(address, chainId, headers) {
371
+ if (!address || !chainId) {
372
+ return 0;
373
+ }
374
+ try {
375
+ const url = new URL(`${core_2.PRICE_SERVER_URL}/price_by_address_chain`);
376
+ url.searchParams.set('address', address);
377
+ url.searchParams.set('chain', chainId.toString());
378
+ url.searchParams.set('method', 'contract');
379
+ const res = await fetch(url.toString(), {
380
+ headers: {
381
+ accept: 'application/json',
382
+ ...headers,
383
+ },
384
+ });
385
+ if (res.status !== 200) {
386
+ throw new Error(`Failed to fetch price for ${address} on chain ${chainId}: ${res.statusText}`);
387
+ }
388
+ const json = (await res.json());
389
+ return json.price || 0;
390
+ }
391
+ catch (e) {
392
+ logger_1.Logger.log.warn('fetchTokenPriceByAddress', `Failed to fetch price for ${address} on chain ${chainId}: ${e}`);
393
+ return 0;
394
+ }
395
+ }
369
396
  async function fetchTokenizedVaultLoans(pool, chainId, headers) {
370
397
  const key = `loans-${chainId}-${pool}`;
371
398
  let loans;
@@ -1 +1 @@
1
- {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../src.ts/core/fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../src.ts/core/fetcher.ts"],"names":[],"mappings":"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"}
@@ -431,53 +431,110 @@ async function getVaultAvailableRedemptions({ vault, wallet, options, }) {
431
431
  }
432
432
  }
433
433
  if (!alreadyRedeemed) {
434
- availableRedemptions.push({
435
- id: ev.transactionHash_ || ev.id,
436
- hash: ev.transactionHash_ || ev.id,
437
- timestamp: Number(ev.timestamp_),
438
- receiver: ev.receiverAddr,
439
- day: (0, core_1.toNormalizedBn)(day, 0),
440
- month: (0, core_1.toNormalizedBn)(month, 0),
441
- year: (0, core_1.toNormalizedBn)(year, 0),
442
- amount: (0, core_1.toNormalizedBn)(BigInt(ev.shares), decimals),
443
- date: fullDate,
444
- vault,
445
- });
434
+ try {
435
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(year), BigInt(month), BigInt(day), (0, ethers_1.getAddress)(ev.receiverAddr));
436
+ const claimAmount = BigInt(ev.shares);
437
+ if (burnableAmount === claimAmount) {
438
+ availableRedemptions.push({
439
+ id: ev.transactionHash_ || ev.id,
440
+ hash: ev.transactionHash_ || ev.id,
441
+ timestamp: Number(ev.timestamp_),
442
+ receiver: ev.receiverAddr,
443
+ day: (0, core_1.toNormalizedBn)(day, 0),
444
+ month: (0, core_1.toNormalizedBn)(month, 0),
445
+ year: (0, core_1.toNormalizedBn)(year, 0),
446
+ amount: (0, core_1.toNormalizedBn)(BigInt(ev.shares), decimals),
447
+ date: fullDate,
448
+ vault,
449
+ });
450
+ }
451
+ }
452
+ catch (burnableError) {
453
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
454
+ }
446
455
  }
447
456
  const pendingCondition = Number(ev.timestamp_) * 1000 + 1000 * lagDuration <
448
457
  Date.now();
449
458
  if (pendingCondition && !alreadyRedeemed) {
450
- pendingRedemptions.push({
451
- id: ev.transactionHash_ || ev.id,
452
- hash: ev.transactionHash_ || ev.id,
453
- timestamp: Number(ev.timestamp_),
454
- receiver: ev.receiverAddr,
455
- day: (0, core_1.toNormalizedBn)(day, 0),
456
- month: (0, core_1.toNormalizedBn)(month, 0),
457
- year: (0, core_1.toNormalizedBn)(year, 0),
458
- amount: (0, core_1.toNormalizedBn)(BigInt(ev.shares) || BigInt(0), decimals),
459
- date: fullDate,
460
- vault,
461
- });
459
+ try {
460
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(year), BigInt(month), BigInt(day), (0, ethers_1.getAddress)(ev.receiverAddr));
461
+ const claimAmount = BigInt(ev.shares) || BigInt(0);
462
+ if (burnableAmount === claimAmount) {
463
+ pendingRedemptions.push({
464
+ id: ev.transactionHash_ || ev.id,
465
+ hash: ev.transactionHash_ || ev.id,
466
+ timestamp: Number(ev.timestamp_),
467
+ receiver: ev.receiverAddr,
468
+ day: (0, core_1.toNormalizedBn)(day, 0),
469
+ month: (0, core_1.toNormalizedBn)(month, 0),
470
+ year: (0, core_1.toNormalizedBn)(year, 0),
471
+ amount: (0, core_1.toNormalizedBn)(BigInt(ev.shares) || BigInt(0), decimals),
472
+ date: fullDate,
473
+ vault,
474
+ });
475
+ }
476
+ }
477
+ catch (burnableError) {
478
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
479
+ }
462
480
  }
463
481
  break;
464
482
  }
465
483
  default: {
466
484
  const trueClaimableAmount = await vaultContract?.getClaimableAmountByReceiver?.(BigInt(ev.year), BigInt(ev.month), BigInt(ev.day), (0, ethers_1.getAddress)(wallet));
467
485
  if (trueClaimableAmount > BigInt(0)) {
468
- availableRedemptions.push({
469
- id: ev.transactionHash_ || ev.id,
470
- hash: ev.transactionHash_ || ev.id,
471
- timestamp: Number(ev.timestamp_),
472
- receiver: ev.receiverAddr,
473
- day: (0, core_1.toNormalizedBn)(ev.day, 0),
474
- month: (0, core_1.toNormalizedBn)(ev.month, 0),
475
- year: (0, core_1.toNormalizedBn)(ev.year, 0),
476
- amount: (0, core_1.toNormalizedBn)(trueClaimableAmount, decimals),
477
- date: fullDate,
478
- vault,
479
- });
486
+ try {
487
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(ev.year), BigInt(ev.month), BigInt(ev.day), (0, ethers_1.getAddress)(ev.receiverAddr));
488
+ if (burnableAmount === trueClaimableAmount) {
489
+ availableRedemptions.push({
490
+ id: ev.transactionHash_ || ev.id,
491
+ hash: ev.transactionHash_ || ev.id,
492
+ timestamp: Number(ev.timestamp_),
493
+ receiver: ev.receiverAddr,
494
+ day: (0, core_1.toNormalizedBn)(ev.day, 0),
495
+ month: (0, core_1.toNormalizedBn)(ev.month, 0),
496
+ year: (0, core_1.toNormalizedBn)(ev.year, 0),
497
+ amount: (0, core_1.toNormalizedBn)(trueClaimableAmount, decimals),
498
+ date: fullDate,
499
+ vault,
500
+ });
501
+ }
502
+ }
503
+ catch (burnableError) {
504
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
505
+ }
506
+ }
507
+ try {
508
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(ev.year), BigInt(ev.month), BigInt(ev.day), (0, ethers_1.getAddress)(ev.receiverAddr));
509
+ const claimAmount = trueClaimableAmount || BigInt(0);
510
+ if (burnableAmount === claimAmount) {
511
+ pendingRedemptions.push({
512
+ id: ev.transactionHash_ || ev.id,
513
+ hash: ev.transactionHash_ || ev.id,
514
+ timestamp: Number(ev.timestamp_),
515
+ receiver: ev.receiverAddr,
516
+ day: (0, core_1.toNormalizedBn)(ev.day, 0),
517
+ month: (0, core_1.toNormalizedBn)(ev.month, 0),
518
+ year: (0, core_1.toNormalizedBn)(ev.year, 0),
519
+ amount: (0, core_1.toNormalizedBn)(trueClaimableAmount || BigInt(0), decimals),
520
+ date: fullDate,
521
+ vault,
522
+ });
523
+ }
480
524
  }
525
+ catch (burnableError) {
526
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
527
+ }
528
+ break;
529
+ }
530
+ }
531
+ }
532
+ catch (contractError) {
533
+ core_1.Logger.log.error('getVaultAvailableRedemptions', `Contract call failed: ${contractError}`);
534
+ try {
535
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(ev.year), BigInt(ev.month), BigInt(ev.day), (0, ethers_1.getAddress)(ev.receiverAddr));
536
+ const claimAmount = BigInt(0);
537
+ if (burnableAmount === claimAmount) {
481
538
  pendingRedemptions.push({
482
539
  id: ev.transactionHash_ || ev.id,
483
540
  hash: ev.transactionHash_ || ev.id,
@@ -486,17 +543,26 @@ async function getVaultAvailableRedemptions({ vault, wallet, options, }) {
486
543
  day: (0, core_1.toNormalizedBn)(ev.day, 0),
487
544
  month: (0, core_1.toNormalizedBn)(ev.month, 0),
488
545
  year: (0, core_1.toNormalizedBn)(ev.year, 0),
489
- amount: (0, core_1.toNormalizedBn)(trueClaimableAmount || BigInt(0), decimals),
546
+ amount: (0, core_1.toNormalizedBn)(BigInt(0), decimals),
490
547
  date: fullDate,
491
548
  vault,
492
549
  });
493
- break;
494
550
  }
495
551
  }
552
+ catch (burnableError) {
553
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
554
+ }
496
555
  }
497
- catch (contractError) {
498
- core_1.Logger.log.error('getVaultAvailableRedemptions', `Contract call failed: ${contractError}`);
499
- pendingRedemptions.push({
556
+ }
557
+ }
558
+ }
559
+ else {
560
+ if (!!foundRedemptionAgainstClaim) {
561
+ try {
562
+ const burnableAmount = await vaultContract?.getBurnableAmountByReceiver?.(BigInt(ev.year), BigInt(ev.month), BigInt(ev.day), (0, ethers_1.getAddress)(ev.receiverAddr));
563
+ const claimAmount = BigInt(ev.assets) || BigInt(0);
564
+ if (burnableAmount === claimAmount) {
565
+ availableRedemptions.push({
500
566
  id: ev.transactionHash_ || ev.id,
501
567
  hash: ev.transactionHash_ || ev.id,
502
568
  timestamp: Number(ev.timestamp_),
@@ -504,28 +570,15 @@ async function getVaultAvailableRedemptions({ vault, wallet, options, }) {
504
570
  day: (0, core_1.toNormalizedBn)(ev.day, 0),
505
571
  month: (0, core_1.toNormalizedBn)(ev.month, 0),
506
572
  year: (0, core_1.toNormalizedBn)(ev.year, 0),
507
- amount: (0, core_1.toNormalizedBn)(BigInt(0), decimals),
573
+ amount: (0, core_1.toNormalizedBn)(BigInt(ev.assets) || BigInt(0), decimals),
508
574
  date: fullDate,
509
575
  vault,
510
576
  });
511
577
  }
512
578
  }
513
- }
514
- }
515
- else {
516
- if (!!foundRedemptionAgainstClaim) {
517
- availableRedemptions.push({
518
- id: ev.transactionHash_ || ev.id,
519
- hash: ev.transactionHash_ || ev.id,
520
- timestamp: Number(ev.timestamp_),
521
- receiver: ev.receiverAddr,
522
- day: (0, core_1.toNormalizedBn)(ev.day, 0),
523
- month: (0, core_1.toNormalizedBn)(ev.month, 0),
524
- year: (0, core_1.toNormalizedBn)(ev.year, 0),
525
- amount: (0, core_1.toNormalizedBn)(BigInt(ev.assets) || BigInt(0), decimals),
526
- date: fullDate,
527
- vault,
528
- });
579
+ catch (burnableError) {
580
+ core_1.Logger.log.warn('getVaultAvailableRedemptions', `Failed to verify burnable amount: ${burnableError}`);
581
+ }
529
582
  }
530
583
  }
531
584
  }
@@ -1174,50 +1227,32 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, coingeckoKey, }
1174
1227
  if (!(0, ethers_1.isAddress)(wallet))
1175
1228
  throw new Error(`Wallet input parameter is not an address: ${String(wallet)}`);
1176
1229
  const provider = (0, core_1.createProvider)(options.rpcUrl);
1177
- const decimals = await (0, core_1.getDecimals)(provider, vault);
1178
- const userHistory = await (0, vaults_1.getSubgraphUserHistory)(wallet, provider, vault);
1179
- const positions = await getVaultPositions({
1180
- vault,
1181
- wallet,
1182
- options,
1183
- });
1184
- const currentPosition = positions.find((pos) => pos.vault?.toLowerCase() === vault.toLowerCase());
1185
- const tokenizedVault = (await (0, core_1.fetchTokenizedVault)(vault, options?.headers))?.[0];
1230
+ const [decimals, userHistory, positions, tokenizedVaultResult] = await Promise.all([
1231
+ (0, core_1.getDecimals)(provider, vault),
1232
+ (0, vaults_1.getSubgraphUserHistory)(wallet, provider, vault),
1233
+ getVaultPositions({
1234
+ vault,
1235
+ wallet,
1236
+ options,
1237
+ }),
1238
+ (0, core_1.fetchTokenizedVault)(vault, options?.headers),
1239
+ ]);
1240
+ const tokenizedVault = tokenizedVaultResult?.[0];
1186
1241
  if (!tokenizedVault) {
1187
1242
  throw new Error(`Vault ${vault} not found`);
1188
1243
  }
1189
1244
  const version = (0, core_1.getVaultVersionV2)(tokenizedVault);
1190
- let underlyingTokenSymbol = 'UNKNOWN';
1191
- try {
1192
- const vaultContract = (0, core_1.createContract)({
1193
- provider,
1194
- address: vault,
1195
- abi: version === 'evm-2' ? TokenizedVaultV2_1.ABI_TOKENIZED_VAULT_V2 : abis_1.ABI_LENDING_POOL_V2,
1196
- });
1245
+ const currentPosition = positions.find((pos) => pos.vault?.toLowerCase() === vault.toLowerCase());
1246
+ const underlyingSymbolPromise = (async () => {
1247
+ let underlyingTokenSymbol = 'UNKNOWN';
1197
1248
  let underlyingAssetAddress;
1198
- if (version === 'evm-2') {
1199
- const vaultData = await getVault({
1200
- vault,
1201
- loans: false,
1202
- allocations: false,
1203
- options,
1249
+ try {
1250
+ const vaultContract = (0, core_1.createContract)({
1251
+ provider,
1252
+ address: vault,
1253
+ abi: version === 'evm-2' ? TokenizedVaultV2_1.ABI_TOKENIZED_VAULT_V2 : abis_1.ABI_LENDING_POOL_V2,
1204
1254
  });
1205
- if (vaultData?.depositAssets && vaultData.depositAssets.length > 0) {
1206
- underlyingAssetAddress = vaultData.depositAssets[0].address;
1207
- underlyingTokenSymbol = vaultData.depositAssets[0].symbol;
1208
- }
1209
- }
1210
- else {
1211
- try {
1212
- underlyingAssetAddress = await vaultContract.asset();
1213
- const underlyingContract = (0, core_1.createContract)({
1214
- provider,
1215
- address: underlyingAssetAddress,
1216
- abi: abis_1.ABI_ERC20,
1217
- });
1218
- underlyingTokenSymbol = await underlyingContract.symbol();
1219
- }
1220
- catch (e) {
1255
+ if (version === 'evm-2') {
1221
1256
  const vaultData = await getVault({
1222
1257
  vault,
1223
1258
  loans: false,
@@ -1225,15 +1260,42 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, coingeckoKey, }
1225
1260
  options,
1226
1261
  });
1227
1262
  if (vaultData?.depositAssets && vaultData.depositAssets.length > 0) {
1263
+ underlyingAssetAddress = vaultData.depositAssets[0].address;
1228
1264
  underlyingTokenSymbol = vaultData.depositAssets[0].symbol;
1229
1265
  }
1230
1266
  }
1267
+ else {
1268
+ try {
1269
+ underlyingAssetAddress = await vaultContract.asset();
1270
+ const underlyingContract = (0, core_1.createContract)({
1271
+ provider,
1272
+ address: underlyingAssetAddress,
1273
+ abi: abis_1.ABI_ERC20,
1274
+ });
1275
+ underlyingTokenSymbol = await underlyingContract.symbol();
1276
+ }
1277
+ catch (e) {
1278
+ const vaultData = await getVault({
1279
+ vault,
1280
+ loans: false,
1281
+ allocations: false,
1282
+ options,
1283
+ });
1284
+ if (vaultData?.depositAssets &&
1285
+ vaultData.depositAssets.length > 0) {
1286
+ underlyingAssetAddress = vaultData.depositAssets[0].address;
1287
+ underlyingTokenSymbol = vaultData.depositAssets[0].symbol;
1288
+ }
1289
+ }
1290
+ }
1231
1291
  }
1232
- }
1233
- catch (e) {
1234
- core_1.Logger.log.warn('getVaultUserLifetimePnl:getUnderlyingSymbol', `Failed to get underlying token symbol: ${e}, falling back to receipt token symbol`);
1235
- underlyingTokenSymbol = tokenizedVault.receipt_token_symbol || 'UNKNOWN';
1236
- }
1292
+ catch (e) {
1293
+ core_1.Logger.log.warn('getVaultUserLifetimePnl:getUnderlyingSymbol', `Failed to get underlying token symbol: ${e}, falling back to receipt token symbol`);
1294
+ underlyingTokenSymbol =
1295
+ tokenizedVault.receipt_token_symbol || 'UNKNOWN';
1296
+ }
1297
+ return { underlyingTokenSymbol, underlyingAssetAddress };
1298
+ })();
1237
1299
  let totalDepositedRaw = BigInt(0);
1238
1300
  let totalWithdrawnRaw = BigInt(0);
1239
1301
  for (const historyItem of userHistory) {
@@ -1248,22 +1310,20 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, coingeckoKey, }
1248
1310
  }
1249
1311
  const totalDeposited = (0, core_1.toNormalizedBn)(totalDepositedRaw, decimals);
1250
1312
  const totalWithdrawn = (0, core_1.toNormalizedBn)(totalWithdrawnRaw, decimals);
1313
+ const { underlyingTokenSymbol, underlyingAssetAddress } = await underlyingSymbolPromise;
1251
1314
  let currentPositionValue = (0, core_1.toNormalizedBn)(0, decimals);
1252
- if (currentPosition && currentPosition.walletBalance) {
1315
+ const pricePromise = underlyingAssetAddress && tokenizedVault.chain
1316
+ ? (0, core_1.fetchTokenPriceByAddress)(underlyingAssetAddress, tokenizedVault.chain, options?.headers).catch(() => 0)
1317
+ : Promise.resolve(0);
1318
+ if (currentPosition?.walletBalance) {
1253
1319
  const currentShares = BigInt(currentPosition.walletBalance.raw);
1254
1320
  const vaultContract = (0, core_1.createContract)({
1255
1321
  provider,
1256
1322
  address: vault,
1257
1323
  abi: version === 'evm-2' ? TokenizedVaultV2_1.ABI_TOKENIZED_VAULT_V2 : abis_1.ABI_LENDING_POOL_V2,
1258
1324
  });
1259
- let assetsValue;
1260
1325
  try {
1261
- if (version === 'evm-2') {
1262
- assetsValue = await vaultContract.convertToAssets(currentShares);
1263
- }
1264
- else {
1265
- assetsValue = await vaultContract.convertToAssets(currentShares);
1266
- }
1326
+ const assetsValue = await vaultContract.convertToAssets(currentShares);
1267
1327
  currentPositionValue = (0, core_1.toNormalizedBn)(assetsValue, decimals);
1268
1328
  }
1269
1329
  catch (e) {
@@ -1271,13 +1331,7 @@ async function getVaultUserLifetimePnl({ vault, wallet, options, coingeckoKey, }
1271
1331
  currentPositionValue = currentPosition.walletBalance;
1272
1332
  }
1273
1333
  }
1274
- let tokenPriceUsd = 0;
1275
- try {
1276
- tokenPriceUsd = await (0, core_1.fetchTokenPrice)(underlyingTokenSymbol, provider, coingeckoKey);
1277
- }
1278
- catch (e) {
1279
- core_1.Logger.log.warn('getVaultUserLifetimePnl:fetchTokenPrice', `Failed to fetch token price: ${e}`);
1280
- }
1334
+ const tokenPriceUsd = await pricePromise;
1281
1335
  const totalDepositedUsd = Number(totalDeposited.normalized) * tokenPriceUsd;
1282
1336
  const totalWithdrawnUsd = Number(totalWithdrawn.normalized) * tokenPriceUsd;
1283
1337
  const currentPositionValueUsd = Number(currentPositionValue.normalized) * tokenPriceUsd;