@sonarwatch/portfolio-core 0.16.72 → 0.16.74

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/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.16.74](https://github.com/sonarwatch/portfolio/compare/core-0.16.73...core-0.16.74) (2025-10-08)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **plugins:** borrowlend value to 0 if negative ([f2b34f4](https://github.com/sonarwatch/portfolio/commit/f2b34f45576ca93761cf97ef8c168ad1c445689b))
11
+
12
+
13
+
14
+ ## [0.16.73](https://github.com/sonarwatch/portfolio/compare/core-0.16.72...core-0.16.73) (2025-10-02)
15
+
16
+
17
+ ### Features
18
+
19
+ * **plugins:** ratex liquidity fees ([ad17ccd](https://github.com/sonarwatch/portfolio/commit/ad17ccda4a8005f6b5a1378be302a28de899946f))
20
+
21
+
22
+
5
23
  ## [0.16.72](https://github.com/sonarwatch/portfolio/compare/core-0.16.71...core-0.16.72) (2025-09-26)
6
24
 
7
25
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sonarwatch/portfolio-core",
3
- "version": "0.16.72",
3
+ "version": "0.16.74",
4
4
  "type": "commonjs",
5
5
  "types": "./src/index.d.ts",
6
6
  "repository": {
@@ -141,7 +141,7 @@ export type ProxyInfo = {
141
141
  id: string;
142
142
  address: string;
143
143
  };
144
- export type SourceRefName = 'Pool' | 'Farm' | 'Market' | 'Vault' | 'Lending Market' | 'Strategy' | 'NFT Mint' | 'Reserve' | 'Proposal' | 'Distributor' | 'Locker' | 'Custody' | 'Pair' | 'Borrow Token' | 'Collateral Token' | 'Elevation Group' | 'Validator';
144
+ export type SourceRefName = 'Pool' | 'Farm' | 'Market' | 'Vault' | 'Lending Market' | 'Strategy' | 'NFT Mint' | 'Reserve' | 'Proposal' | 'Distributor' | 'Locker' | 'Custody' | 'Pair' | 'Borrow Token' | 'Collateral Token' | 'Elevation Group' | 'Program' | 'Validator';
145
145
  /**
146
146
  * Represents references to on-chain accounts.
147
147
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Portfolio.js","sourceRoot":"","sources":["../../../../packages/core/src/Portfolio.ts"],"names":[],"mappings":";;;AAIA;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAsDX;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AAyPX,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
1
+ {"version":3,"file":"Portfolio.js","sourceRoot":"","sources":["../../../../packages/core/src/Portfolio.ts"],"names":[],"mappings":";;;AAIA;;GAEG;AACU,QAAA,kBAAkB,GAAG;IAChC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,aAAa;CAClB,CAAC;AAsDX;;GAEG;AACU,QAAA,oBAAoB,GAAG;IAClC,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;CACN,CAAC;AA0PX,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,+BAAe,CAAA;AACjB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
@@ -19,7 +19,10 @@ function getHealthRatio(suppliedAssets, borrowedAssets, suppliedLtvs, borrowedWe
19
19
  const borrowsWeightedValue = borrowedAssets.reduce((acc, asset, index) => acc !== null && asset.value !== null
20
20
  ? acc + asset.value * fBorrowedWeights[index]
21
21
  : 0, 0);
22
- return (suppliesWeightedValue - borrowsWeightedValue) / suppliesWeightedValue;
22
+ const healthRatio = (suppliesWeightedValue - borrowsWeightedValue) / suppliesWeightedValue;
23
+ return !Number.isNaN(healthRatio) && Number.isFinite(healthRatio)
24
+ ? healthRatio
25
+ : null;
23
26
  }
24
27
  function getElementLendingValues(params) {
25
28
  const { suppliedAssets, borrowedAssets, rewardAssets, suppliedLtvs, borrowedWeights, unsettledAssets, } = params;
@@ -30,7 +33,7 @@ function getElementLendingValues(params) {
30
33
  const healthRatio = getHealthRatio(suppliedAssets, borrowedAssets, suppliedLtvs, borrowedWeights);
31
34
  // Total value
32
35
  let value = suppliedValue !== null && borrowedValue !== null
33
- ? suppliedValue - borrowedValue
36
+ ? Math.max(suppliedValue - borrowedValue, 0)
34
37
  : null;
35
38
  if (rewardValue !== null && value !== null)
36
39
  value += rewardValue;
@@ -1 +1 @@
1
- {"version":3,"file":"getElementLendingValues.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getElementLendingValues.ts"],"names":[],"mappings":";;;AAEA,iEAA8D;AAC9D,+CAA4C;AAE5C,SAAS,cAAc,CACrB,cAAgC,EAChC,cAAgC,EAChC,YAAuB,EACvB,eAA0B;IAE1B,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QAC/D,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAE1C,MAAM,gBAAgB,GACpB,eAAe,IAAI,IAAI,KAAK,CAAS,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,gBAAgB,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QACnD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAExE,MAAM,qBAAqB,GAAW,cAAc,CAAC,MAAM,CACzD,CAAC,GAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC5B,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;QAClC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;QACzC,CAAC,CAAC,CAAC,EACP,CAAC,CACF,CAAC;IACF,MAAM,oBAAoB,GAAW,cAAc,CAAC,MAAM,CACxD,CAAC,GAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC5B,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;QAClC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC;QAC7C,CAAC,CAAC,CAAC,EACP,CAAC,CACF,CAAC;IACF,OAAO,CAAC,qBAAqB,GAAG,oBAAoB,CAAC,GAAG,qBAAqB,CAAC;AAChF,CAAC;AAED,SAAgB,uBAAuB,CAAC,MAOvC;IACC,MAAM,EACJ,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,GAAG,MAAM,CAAC;IAEX,MAAM,cAAc,GAAa,IAAA,2CAAoB,EACnD,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAI,EAAE,CAC3C,CAAC;IAEF,MAAM,WAAW,GAAa,YAAY,CAAC,MAAM,CAC/C,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IACF,MAAM,aAAa,GAAa,cAAc,CAAC,MAAM,CACnD,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IACF,MAAM,aAAa,GAAa,cAAc,CAAC,MAAM,CACnD,CAAC,GAAa,EAAE,KAAK,EAAE,EAAE,CACvB,GAAG,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACjE,CAAC,CACF,CAAC;IACF,MAAM,WAAW,GAAG,cAAc,CAChC,cAAc,EACd,cAAc,EACd,YAAY,EACZ,eAAe,CAChB,CAAC;IAEF,cAAc;IACd,IAAI,KAAK,GACP,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI;QAC9C,CAAC,CAAC,aAAa,GAAG,aAAa;QAC/B,CAAC,CAAC,IAAI,CAAC;IACX,IAAI,WAAW,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,KAAK,IAAI,WAAW,CAAC;IACjE,IAAI,cAAc,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI;QAAE,KAAK,IAAI,cAAc,CAAC;IAEvE,OAAO;QACL,aAAa,EAAE,IAAA,yBAAW,EAAC,aAAa,CAAC;QACzC,aAAa,EAAE,IAAA,yBAAW,EAAC,aAAa,CAAC;QACzC,WAAW,EAAE,IAAA,yBAAW,EAAC,WAAW,CAAC;QACrC,WAAW;QACX,cAAc,EAAE,IAAA,yBAAW,EAAC,cAAc,CAAC;QAC3C,KAAK,EAAE,IAAA,yBAAW,EAAC,KAAK,CAAC;KAC1B,CAAC;AACJ,CAAC;AA3DD,0DA2DC"}
1
+ {"version":3,"file":"getElementLendingValues.js","sourceRoot":"","sources":["../../../../../packages/core/src/utils/getElementLendingValues.ts"],"names":[],"mappings":"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"}