@suilend/sdk 1.1.99 → 2.0.1

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 (91) hide show
  1. package/_generated/_dependencies/source/0x1/ascii/structs.d.ts +7 -7
  2. package/_generated/_dependencies/source/0x1/ascii/structs.js +35 -75
  3. package/_generated/_dependencies/source/0x1/index.js +3 -6
  4. package/_generated/_dependencies/source/0x1/option/structs.d.ts +3 -3
  5. package/_generated/_dependencies/source/0x1/option/structs.js +31 -69
  6. package/_generated/_dependencies/source/0x1/type-name/structs.d.ts +5 -5
  7. package/_generated/_dependencies/source/0x1/type-name/structs.js +20 -25
  8. package/_generated/_dependencies/source/0x2/bag/structs.d.ts +7 -7
  9. package/_generated/_dependencies/source/0x2/bag/structs.js +24 -29
  10. package/_generated/_dependencies/source/0x2/balance/structs.d.ts +7 -7
  11. package/_generated/_dependencies/source/0x2/balance/structs.js +49 -56
  12. package/_generated/_dependencies/source/0x2/index.js +3 -6
  13. package/_generated/_dependencies/source/0x2/object/structs.d.ts +8 -8
  14. package/_generated/_dependencies/source/0x2/object/structs.js +34 -41
  15. package/_generated/_dependencies/source/0x2/object-table/structs.d.ts +7 -7
  16. package/_generated/_dependencies/source/0x2/object-table/structs.js +31 -36
  17. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.d.ts +5 -5
  18. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/i64/structs.js +23 -28
  19. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js +4 -7
  20. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.d.ts +11 -11
  21. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price/structs.js +32 -37
  22. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.d.ts +23 -23
  23. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-feed/structs.js +29 -34
  24. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +4 -4
  25. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +21 -59
  26. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.d.ts +55 -55
  27. package/_generated/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-info/structs.js +46 -53
  28. package/_generated/_framework/reified.d.ts +2 -2
  29. package/_generated/_framework/reified.js +27 -40
  30. package/_generated/_framework/util.js +26 -40
  31. package/_generated/_framework/vector.d.ts +4 -4
  32. package/_generated/_framework/vector.js +16 -21
  33. package/_generated/suilend/cell/structs.d.ts +4 -4
  34. package/_generated/suilend/cell/structs.js +31 -36
  35. package/_generated/suilend/decimal/structs.d.ts +4 -4
  36. package/_generated/suilend/decimal/structs.js +19 -24
  37. package/_generated/suilend/index.js +8 -12
  38. package/_generated/suilend/lending-market/functions.d.ts +1 -0
  39. package/_generated/suilend/lending-market/functions.js +271 -302
  40. package/_generated/suilend/lending-market/structs.d.ts +146 -146
  41. package/_generated/suilend/lending-market/structs.js +549 -617
  42. package/_generated/suilend/lending-market-registry/functions.js +7 -11
  43. package/_generated/suilend/liquidity-mining/structs.d.ts +50 -50
  44. package/_generated/suilend/liquidity-mining/structs.js +159 -205
  45. package/_generated/suilend/obligation/structs.d.ts +106 -106
  46. package/_generated/suilend/obligation/structs.js +313 -363
  47. package/_generated/suilend/rate-limiter/functions.js +23 -31
  48. package/_generated/suilend/rate-limiter/structs.d.ts +15 -15
  49. package/_generated/suilend/rate-limiter/structs.js +49 -56
  50. package/_generated/suilend/reserve/structs.d.ts +139 -139
  51. package/_generated/suilend/reserve/structs.js +397 -451
  52. package/_generated/suilend/reserve-config/functions.js +149 -190
  53. package/_generated/suilend/reserve-config/structs.d.ts +33 -33
  54. package/_generated/suilend/reserve-config/structs.js +109 -149
  55. package/api/events.js +1 -5
  56. package/api/index.js +1 -17
  57. package/client.d.ts +10 -10
  58. package/client.js +118 -128
  59. package/index.js +7 -23
  60. package/lib/constants.js +3 -9
  61. package/lib/index.js +5 -21
  62. package/lib/initialize.d.ts +3 -3
  63. package/lib/initialize.js +103 -140
  64. package/lib/liquidityMining.d.ts +3 -3
  65. package/lib/liquidityMining.js +57 -72
  66. package/lib/pyth.js +9 -14
  67. package/lib/strategyOwnerCap.js +106 -119
  68. package/lib/transactions.js +2 -7
  69. package/lib/types.js +4 -7
  70. package/mmt.js +2 -5
  71. package/package.json +1 -1
  72. package/parsers/apiReserveAssetDataEvent.js +25 -33
  73. package/parsers/index.js +5 -21
  74. package/parsers/lendingMarket.d.ts +1 -1
  75. package/parsers/lendingMarket.js +12 -19
  76. package/parsers/obligation.js +19 -26
  77. package/parsers/rateLimiter.js +11 -19
  78. package/parsers/reserve.d.ts +1 -1
  79. package/parsers/reserve.js +42 -85
  80. package/strategies.d.ts +11 -11
  81. package/strategies.js +547 -586
  82. package/swap/index.js +2 -18
  83. package/swap/quote.js +57 -65
  84. package/swap/transaction.d.ts +2 -2
  85. package/swap/transaction.js +40 -35
  86. package/utils/events.d.ts +3 -3
  87. package/utils/events.js +18 -35
  88. package/utils/index.js +16 -40
  89. package/utils/obligation.d.ts +4 -4
  90. package/utils/obligation.js +17 -60
  91. package/utils/simulate.js +118 -143
@@ -1,21 +1,13 @@
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.getRewardsMap = exports.getNetAprPercent = exports.getTotalAprPercent = exports.getStakingYieldAprPercent = exports.getRewardsAprPercent = exports.getDedupedPerDayRewards = exports.getDedupedAprRewards = exports.getFilteredRewards = exports.formatRewards = exports.getBorrowShare = exports.getDepositShare = void 0;
7
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
- const lodash_1 = require("lodash");
9
- const sui_fe_1 = require("@suilend/sui-fe");
10
- const constants_1 = require("./constants");
11
- const types_1 = require("./types");
12
- const getDepositShare = (reserve, share) => share.div(10 ** reserve.mintDecimals).times(reserve.cTokenExchangeRate);
13
- exports.getDepositShare = getDepositShare;
14
- const getDepositShareUsd = (reserve, share) => (0, exports.getDepositShare)(reserve, share).times(reserve.price);
15
- const getBorrowShare = (reserve, share) => share.div(10 ** reserve.mintDecimals).times(reserve.cumulativeBorrowRate);
16
- exports.getBorrowShare = getBorrowShare;
17
- const getBorrowShareUsd = (reserve, share) => (0, exports.getBorrowShare)(reserve, share).times(reserve.price);
18
- const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations) => {
1
+ import BigNumber from "bignumber.js";
2
+ import { cloneDeep } from "lodash";
3
+ import { MS_PER_YEAR, NORMALIZED_eTHIRD_COINTYPE, NORMALIZED_sdeUSD_COINTYPE, isSendPoints, } from "@suilend/sui-fe";
4
+ import { WAD } from "./constants";
5
+ import { Side } from "./types";
6
+ export const getDepositShare = (reserve, share) => share.div(10 ** reserve.mintDecimals).times(reserve.cTokenExchangeRate);
7
+ const getDepositShareUsd = (reserve, share) => getDepositShare(reserve, share).times(reserve.price);
8
+ export const getBorrowShare = (reserve, share) => share.div(10 ** reserve.mintDecimals).times(reserve.cumulativeBorrowRate);
9
+ const getBorrowShareUsd = (reserve, share) => getBorrowShare(reserve, share).times(reserve.price);
10
+ export const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations) => {
19
11
  const nowMs = Date.now();
20
12
  const rewardMap = {};
21
13
  const getRewardSummary = (reserve, poolReward, side) => {
@@ -23,24 +15,24 @@ const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations)
23
15
  const rewardPrice = priceMap === null || priceMap === void 0 ? void 0 : priceMap[poolReward.coinType];
24
16
  const isActive = nowMs >= poolReward.startTimeMs && nowMs < poolReward.endTimeMs;
25
17
  const aprPercent = rewardPrice
26
- ? new bignumber_js_1.default(reserve.depositsPoolRewardManager.totalShares.toString()).eq(0)
27
- ? new bignumber_js_1.default(0)
18
+ ? new BigNumber(reserve.depositsPoolRewardManager.totalShares.toString()).eq(0)
19
+ ? new BigNumber(0)
28
20
  : poolReward.totalRewards
29
21
  .times(rewardPrice)
30
- .times(new bignumber_js_1.default(sui_fe_1.MS_PER_YEAR).div(poolReward.endTimeMs - poolReward.startTimeMs))
31
- .div(side === types_1.Side.DEPOSIT
32
- ? getDepositShareUsd(reserve, new bignumber_js_1.default(reserve.depositsPoolRewardManager.totalShares.toString()))
33
- : getBorrowShareUsd(reserve, new bignumber_js_1.default(reserve.borrowsPoolRewardManager.totalShares.toString())))
22
+ .times(new BigNumber(MS_PER_YEAR).div(poolReward.endTimeMs - poolReward.startTimeMs))
23
+ .div(side === Side.DEPOSIT
24
+ ? getDepositShareUsd(reserve, new BigNumber(reserve.depositsPoolRewardManager.totalShares.toString()))
25
+ : getBorrowShareUsd(reserve, new BigNumber(reserve.borrowsPoolRewardManager.totalShares.toString())))
34
26
  .times(100)
35
27
  : undefined;
36
28
  const perDay = rewardPrice
37
29
  ? undefined
38
30
  : poolReward.totalRewards
39
- .times(new bignumber_js_1.default(sui_fe_1.MS_PER_YEAR).div(poolReward.endTimeMs - poolReward.startTimeMs))
31
+ .times(new BigNumber(MS_PER_YEAR).div(poolReward.endTimeMs - poolReward.startTimeMs))
40
32
  .div(365)
41
- .div(side === types_1.Side.DEPOSIT
42
- ? (0, exports.getDepositShare)(reserve, new bignumber_js_1.default(reserve.depositsPoolRewardManager.totalShares.toString()))
43
- : (0, exports.getBorrowShare)(reserve, new bignumber_js_1.default(reserve.borrowsPoolRewardManager.totalShares.toString())));
33
+ .div(side === Side.DEPOSIT
34
+ ? getDepositShare(reserve, new BigNumber(reserve.depositsPoolRewardManager.totalShares.toString()))
35
+ : getBorrowShare(reserve, new BigNumber(reserve.borrowsPoolRewardManager.totalShares.toString())));
44
36
  return {
45
37
  stats: {
46
38
  id: poolReward.id,
@@ -58,7 +50,7 @@ const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations)
58
50
  },
59
51
  obligationClaims: Object.fromEntries((obligations !== null && obligations !== void 0 ? obligations : [])
60
52
  .map((obligation) => {
61
- const claim = getObligationClaim(obligation, poolReward, side === types_1.Side.DEPOSIT
53
+ const claim = getObligationClaim(obligation, poolReward, side === Side.DEPOSIT
62
54
  ? reserve.depositsPoolRewardManager.id
63
55
  : reserve.borrowsPoolRewardManager.id, reserve.arrayIndex);
64
56
  if (!claim)
@@ -69,7 +61,7 @@ const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations)
69
61
  };
70
62
  };
71
63
  Object.values(parsedReserveMap).forEach((reserve) => {
72
- const depositRewards = reserve.depositsPoolRewardManager.poolRewards.map((poolReward) => getRewardSummary(reserve, poolReward, types_1.Side.DEPOSIT));
64
+ const depositRewards = reserve.depositsPoolRewardManager.poolRewards.map((poolReward) => getRewardSummary(reserve, poolReward, Side.DEPOSIT));
73
65
  // if (reserve.coinType === NORMALIZED_LBTC_COINTYPE) {
74
66
  // depositRewards.push({
75
67
  // stats: {
@@ -88,15 +80,14 @@ const formatRewards = (parsedReserveMap, coinMetadataMap, priceMap, obligations)
88
80
  // obligationClaims: {}, // Can not be claimed, will be distributed directly to the user ~once per day
89
81
  // });
90
82
  // }
91
- const borrowRewards = reserve.borrowsPoolRewardManager.poolRewards.map((poolReward) => getRewardSummary(reserve, poolReward, types_1.Side.BORROW));
83
+ const borrowRewards = reserve.borrowsPoolRewardManager.poolRewards.map((poolReward) => getRewardSummary(reserve, poolReward, Side.BORROW));
92
84
  rewardMap[reserve.coinType] = {
93
- [types_1.Side.DEPOSIT]: depositRewards,
94
- [types_1.Side.BORROW]: borrowRewards,
85
+ [Side.DEPOSIT]: depositRewards,
86
+ [Side.BORROW]: borrowRewards,
95
87
  };
96
88
  });
97
89
  return rewardMap;
98
90
  };
99
- exports.formatRewards = formatRewards;
100
91
  const getObligationClaim = (obligation, poolReward, reservePoolManagerId, reserveArrayIndex) => {
101
92
  const userRewardManager = obligation.original.userRewardManagers.find((urm) => urm.poolRewardManagerId === reservePoolManagerId);
102
93
  if (!userRewardManager)
@@ -106,16 +97,15 @@ const getObligationClaim = (obligation, poolReward, reservePoolManagerId, reserv
106
97
  return;
107
98
  return {
108
99
  claimableAmount: (userReward === null || userReward === void 0 ? void 0 : userReward.earnedRewards)
109
- ? new bignumber_js_1.default(userReward.earnedRewards.value.toString())
110
- .div(constants_1.WAD)
100
+ ? new BigNumber(userReward.earnedRewards.value.toString())
101
+ .div(WAD)
111
102
  .div(10 ** poolReward.mintDecimals)
112
- : new bignumber_js_1.default(0),
103
+ : new BigNumber(0),
113
104
  reserveArrayIndex,
114
105
  };
115
106
  };
116
- const getFilteredRewards = (rewards) => rewards.filter((r) => r.stats.isActive);
117
- exports.getFilteredRewards = getFilteredRewards;
118
- const getDedupedAprRewards = (filteredRewards) => {
107
+ export const getFilteredRewards = (rewards) => rewards.filter((r) => r.stats.isActive);
108
+ export const getDedupedAprRewards = (filteredRewards) => {
119
109
  const aprRewards = filteredRewards.filter((r) => r.stats.aprPercent !== undefined);
120
110
  const result = [];
121
111
  for (const reward of aprRewards) {
@@ -124,12 +114,11 @@ const getDedupedAprRewards = (filteredRewards) => {
124
114
  result[index].stats.aprPercent = result[index].stats.aprPercent.plus(reward.stats.aprPercent);
125
115
  }
126
116
  else
127
- result.push((0, lodash_1.cloneDeep)(reward));
117
+ result.push(cloneDeep(reward));
128
118
  }
129
119
  return result;
130
120
  };
131
- exports.getDedupedAprRewards = getDedupedAprRewards;
132
- const getDedupedPerDayRewards = (filteredRewards) => {
121
+ export const getDedupedPerDayRewards = (filteredRewards) => {
133
122
  const perDayRewards = filteredRewards.filter((r) => r.stats.perDay !== undefined);
134
123
  const result = [];
135
124
  for (const reward of perDayRewards) {
@@ -138,59 +127,56 @@ const getDedupedPerDayRewards = (filteredRewards) => {
138
127
  result[index].stats.perDay = result[index].stats.perDay.plus(reward.stats.perDay);
139
128
  }
140
129
  else
141
- result.push((0, lodash_1.cloneDeep)(reward));
130
+ result.push(cloneDeep(reward));
142
131
  }
143
132
  return result;
144
133
  };
145
- exports.getDedupedPerDayRewards = getDedupedPerDayRewards;
146
- const getRewardsAprPercent = (side, filteredRewards) => (0, exports.getDedupedAprRewards)(filteredRewards).reduce((acc, reward) => acc.plus(reward.stats.aprPercent.times(side === types_1.Side.DEPOSIT ? 1 : -1)), new bignumber_js_1.default(0));
147
- exports.getRewardsAprPercent = getRewardsAprPercent;
148
- const getStakingYieldAprPercent = (side, coinType, lstStatsMap, elixirSdeUsdAprPercent) => {
134
+ export const getRewardsAprPercent = (side, filteredRewards) => getDedupedAprRewards(filteredRewards).reduce((acc, reward) => acc.plus(reward.stats.aprPercent.times(side === Side.DEPOSIT ? 1 : -1)), new BigNumber(0));
135
+ export const getStakingYieldAprPercent = (side, coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent) => {
149
136
  var _a;
150
- return side === types_1.Side.DEPOSIT
151
- ? coinType === sui_fe_1.NORMALIZED_sdeUSD_COINTYPE
152
- ? elixirSdeUsdAprPercent
153
- : (_a = lstStatsMap[coinType]) === null || _a === void 0 ? void 0 : _a.aprPercent
137
+ return side === Side.DEPOSIT
138
+ ? coinType === NORMALIZED_sdeUSD_COINTYPE
139
+ ? sdeUsdAprPercent
140
+ : coinType === NORMALIZED_eTHIRD_COINTYPE
141
+ ? eThirdAprPercent
142
+ : (_a = lstStatsMap[coinType]) === null || _a === void 0 ? void 0 : _a.aprPercent
154
143
  : undefined;
155
144
  };
156
- exports.getStakingYieldAprPercent = getStakingYieldAprPercent;
157
- const getTotalAprPercent = (side, aprPercent, filteredRewards, stakingYieldAprPercent) => aprPercent
158
- .plus((0, exports.getRewardsAprPercent)(side, filteredRewards))
145
+ export const getTotalAprPercent = (side, aprPercent, filteredRewards, stakingYieldAprPercent) => aprPercent
146
+ .plus(getRewardsAprPercent(side, filteredRewards))
159
147
  .plus(stakingYieldAprPercent !== null && stakingYieldAprPercent !== void 0 ? stakingYieldAprPercent : 0);
160
- exports.getTotalAprPercent = getTotalAprPercent;
161
- const getNetAprPercent = (obligation, rewardMap, lstStatsMap, elixirSdeUsdAprPercent, noShares) => {
148
+ export const getNetAprPercent = (obligation, rewardMap, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent, noShares) => {
162
149
  const weightedDepositedAmountUsd_aprPercent = obligation.deposits.reduce((acc, deposit) => {
163
150
  var _a;
164
151
  const weightedDepositedAmountUsd_baseAprPercent = deposit.reserve.depositAprPercent.times(deposit.depositedAmountUsd);
165
- const weightedDepositedAmountUsd_stakingYieldAprPercent = new bignumber_js_1.default((_a = (0, exports.getStakingYieldAprPercent)(types_1.Side.DEPOSIT, deposit.reserve.coinType, lstStatsMap, elixirSdeUsdAprPercent)) !== null && _a !== void 0 ? _a : 0).times(deposit.depositedAmountUsd);
166
- const weightedDepositedAmountUsd_rewardsAprPercent = (0, exports.getRewardsAprPercent)(types_1.Side.DEPOSIT, (0, exports.getFilteredRewards)(rewardMap[deposit.reserve.coinType].deposit)).times(!noShares
167
- ? getDepositShareUsd(deposit.reserve, new bignumber_js_1.default(deposit.userRewardManager.share.toString()))
152
+ const weightedDepositedAmountUsd_stakingYieldAprPercent = new BigNumber((_a = getStakingYieldAprPercent(Side.DEPOSIT, deposit.reserve.coinType, lstStatsMap, sdeUsdAprPercent, eThirdAprPercent)) !== null && _a !== void 0 ? _a : 0).times(deposit.depositedAmountUsd);
153
+ const weightedDepositedAmountUsd_rewardsAprPercent = getRewardsAprPercent(Side.DEPOSIT, getFilteredRewards(rewardMap[deposit.reserve.coinType].deposit)).times(!noShares
154
+ ? getDepositShareUsd(deposit.reserve, new BigNumber(deposit.userRewardManager.share.toString()))
168
155
  : deposit.depositedAmountUsd);
169
156
  return acc
170
157
  .plus(weightedDepositedAmountUsd_baseAprPercent)
171
158
  .plus(weightedDepositedAmountUsd_stakingYieldAprPercent)
172
159
  .plus(weightedDepositedAmountUsd_rewardsAprPercent);
173
- }, new bignumber_js_1.default(0));
160
+ }, new BigNumber(0));
174
161
  const weightedBorrowedAmountUsd_aprPercent = obligation.borrows.reduce((acc, borrow) => {
175
162
  const weightedBorrowedAmountUsd_baseAprPercent = borrow.reserve.borrowAprPercent.times(borrow.borrowedAmountUsd);
176
- const weightedBorrowedAmountUsd_rewardsAprPercent = (0, exports.getRewardsAprPercent)(types_1.Side.BORROW, (0, exports.getFilteredRewards)(rewardMap[borrow.reserve.coinType].borrow)).times(!noShares
177
- ? getBorrowShareUsd(borrow.reserve, new bignumber_js_1.default(borrow.userRewardManager.share.toString()))
163
+ const weightedBorrowedAmountUsd_rewardsAprPercent = getRewardsAprPercent(Side.BORROW, getFilteredRewards(rewardMap[borrow.reserve.coinType].borrow)).times(!noShares
164
+ ? getBorrowShareUsd(borrow.reserve, new BigNumber(borrow.userRewardManager.share.toString()))
178
165
  : borrow.borrowedAmountUsd);
179
166
  return acc
180
167
  .plus(weightedBorrowedAmountUsd_baseAprPercent)
181
168
  .plus(weightedBorrowedAmountUsd_rewardsAprPercent);
182
- }, new bignumber_js_1.default(0));
169
+ }, new BigNumber(0));
183
170
  const aprPercentWeightedNetValueUsd = weightedDepositedAmountUsd_aprPercent.minus(weightedBorrowedAmountUsd_aprPercent);
184
171
  return !obligation.netValueUsd.eq(0)
185
172
  ? aprPercentWeightedNetValueUsd.div(obligation.netValueUsd)
186
- : new bignumber_js_1.default(0);
173
+ : new BigNumber(0);
187
174
  };
188
- exports.getNetAprPercent = getNetAprPercent;
189
- const getRewardsMap = (obligation, rewardMap, coinMetadataMap) => {
175
+ export const getRewardsMap = (obligation, rewardMap, coinMetadataMap) => {
190
176
  const result = {};
191
177
  if (obligation) {
192
178
  Object.values(rewardMap).flatMap((rewards) => [...rewards.deposit, ...rewards.borrow].forEach((r) => {
193
- if ((0, sui_fe_1.isSendPoints)(r.stats.rewardCoinType))
179
+ if (isSendPoints(r.stats.rewardCoinType))
194
180
  return;
195
181
  if (!r.obligationClaims[obligation.id])
196
182
  return;
@@ -201,17 +187,16 @@ const getRewardsMap = (obligation, rewardMap, coinMetadataMap) => {
201
187
  return;
202
188
  if (!result[r.stats.rewardCoinType])
203
189
  result[r.stats.rewardCoinType] = {
204
- amount: new bignumber_js_1.default(0),
205
- rawAmount: new bignumber_js_1.default(0),
190
+ amount: new BigNumber(0),
191
+ rawAmount: new BigNumber(0),
206
192
  rewards: [],
207
193
  };
208
194
  result[r.stats.rewardCoinType].amount = result[r.stats.rewardCoinType].amount.plus(r.obligationClaims[obligation.id].claimableAmount);
209
195
  result[r.stats.rewardCoinType].rawAmount = result[r.stats.rewardCoinType].amount
210
196
  .times(10 ** coinMetadataMap[r.stats.rewardCoinType].decimals)
211
- .integerValue(bignumber_js_1.default.ROUND_DOWN);
197
+ .integerValue(BigNumber.ROUND_DOWN);
212
198
  result[r.stats.rewardCoinType].rewards.push(r);
213
199
  }));
214
200
  }
215
201
  return result;
216
202
  };
217
- exports.getRewardsMap = getRewardsMap;
package/lib/pyth.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,37 +7,34 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
8
  });
10
9
  };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getWorkingPythEndpoint = exports.testPrimaryPythConnection = exports.PRIMARY_PYTH_ENDPOINT = void 0;
13
- exports.PRIMARY_PYTH_ENDPOINT = "https://hermes.pyth.network";
10
+ export const PRIMARY_PYTH_ENDPOINT = "https://hermes.pyth.network";
14
11
  /**
15
12
  * Tests if the primary Pyth connection endpoint is working by checking the /live endpoint
16
13
  * @returns true if the connection is working, false otherwise
17
14
  */
18
- const testPrimaryPythConnection = () => __awaiter(void 0, void 0, void 0, function* () {
15
+ export const testPrimaryPythConnection = () => __awaiter(void 0, void 0, void 0, function* () {
19
16
  try {
20
- const res = yield fetch(`${exports.PRIMARY_PYTH_ENDPOINT}/live`, {
17
+ const res = yield fetch(`${PRIMARY_PYTH_ENDPOINT}/live`, {
21
18
  signal: AbortSignal.timeout(5 * 1000), // 5 second timeout
22
19
  });
23
20
  return res.ok;
24
21
  }
25
22
  catch (err) {
26
- console.warn(`[testPrimaryPythConnection] Pyth connection test failed for ${exports.PRIMARY_PYTH_ENDPOINT}:`, err);
23
+ console.warn(`[testPrimaryPythConnection] Pyth connection test failed for ${PRIMARY_PYTH_ENDPOINT}:`, err);
27
24
  return false;
28
25
  }
29
26
  });
30
- exports.testPrimaryPythConnection = testPrimaryPythConnection;
31
27
  /**
32
28
  * Gets a working Pyth connection endpoint, trying primary first, then fallback if provided
33
29
  * @param fallbackPythEndpoint Optional fallback endpoint
34
30
  * @returns The endpoint URL that is working, or the primary endpoint if fallback fails
35
31
  */
36
- const getWorkingPythEndpoint = (fallbackPythEndpoint) => __awaiter(void 0, void 0, void 0, function* () {
32
+ export const getWorkingPythEndpoint = (fallbackPythEndpoint) => __awaiter(void 0, void 0, void 0, function* () {
37
33
  // Test primary endpoint first
38
- const primaryWorking = yield (0, exports.testPrimaryPythConnection)();
34
+ const primaryWorking = yield testPrimaryPythConnection();
39
35
  if (primaryWorking) {
40
- console.log(`[getWorkingPythEndpoint] Using primary Pyth endpoint: ${exports.PRIMARY_PYTH_ENDPOINT}`);
41
- return exports.PRIMARY_PYTH_ENDPOINT;
36
+ console.log(`[getWorkingPythEndpoint] Using primary Pyth endpoint: ${PRIMARY_PYTH_ENDPOINT}`);
37
+ return PRIMARY_PYTH_ENDPOINT;
42
38
  }
43
39
  // If primary fails and fallback is provided, use fallback
44
40
  if (!!fallbackPythEndpoint) {
@@ -47,7 +43,6 @@ const getWorkingPythEndpoint = (fallbackPythEndpoint) => __awaiter(void 0, void
47
43
  }
48
44
  else {
49
45
  console.error(`[getWorkingPythEndpoint] Primary Pyth endpoint failed, no fallback provided, using primary anyway`);
50
- return exports.PRIMARY_PYTH_ENDPOINT;
46
+ return PRIMARY_PYTH_ENDPOINT;
51
47
  }
52
48
  });
53
- exports.getWorkingPythEndpoint = getWorkingPythEndpoint;