@sonarwatch/portfolio-core 0.16.79 → 0.16.80

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,10 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.16.80](https://github.com/sonarwatch/portfolio/compare/core-0.16.79...core-0.16.80) (2025-11-05)
6
+
7
+
8
+
5
9
  ## [0.16.79](https://github.com/sonarwatch/portfolio/compare/core-0.16.78...core-0.16.79) (2025-10-28)
6
10
 
7
11
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sonarwatch/portfolio-core",
3
- "version": "0.16.79",
3
+ "version": "0.16.80",
4
4
  "type": "commonjs",
5
5
  "types": "./src/index.d.ts",
6
6
  "repository": {
@@ -1,5 +1,19 @@
1
1
  import { NetworkIdType } from './Network';
2
2
  import { PortfolioElementLabel, SourceRef } from './Portfolio';
3
+ export declare const hyloSourceId = "hylo-tokens-pricing";
4
+ export declare const adrasteaSourceId = "adrastea-lst-pricing";
5
+ export declare const adrenaSourceId = "adrena-token-pricing";
6
+ export declare const exponentSourceId = "exponent-token-pricing";
7
+ export declare const fragmetricApiSourceId = "fragmetric-api-pricing";
8
+ export declare const fragmetricSourceId = "fragmetric-fund-account-pricing";
9
+ export declare const jitoSourceId = "jito-vaults-pricing";
10
+ export declare const jupLendSourceId = "jupiter-jtokens-pricing";
11
+ export declare const xOrcaSourceId = "x-orca-pricing";
12
+ export declare const rainSourceId = "rain-liquid-pricing";
13
+ export declare const usdcPlusSourceId = "reflect-usdc-plus-pricing";
14
+ export declare const sandglassSourceId = "sandglass-markets-pricing";
15
+ export declare const xStakingSourceId = "x-staking-pricing";
16
+ export declare const piggyBankSourceId = "piggy-bank-pricing";
3
17
  export declare const primarySourceId = "primary";
4
18
  export declare const coingeckoSourceId = "coingecko";
5
19
  export declare const jupiterSourceId = "jupiter-datapi";
package/src/TokenPrice.js CHANGED
@@ -1,8 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPriceInfoFromSources = exports.getTokenPricesUnderlyingsFromTokensPrices = exports.getTokenPriceUnderlyingFromTokenPrice = exports.updateTokenPriceSources = exports.pushTokenPriceSource = exports.tokenPriceFromSources = exports.tokenPriceSourceTtl = exports.prioritisedSourceIds = exports.jupiterSourceId = exports.coingeckoSourceId = exports.primarySourceId = void 0;
3
+ exports.getPriceInfoFromSources = exports.getTokenPricesUnderlyingsFromTokensPrices = exports.getTokenPriceUnderlyingFromTokenPrice = exports.updateTokenPriceSources = exports.pushTokenPriceSource = exports.tokenPriceFromSources = exports.tokenPriceSourceTtl = exports.prioritisedSourceIds = exports.jupiterSourceId = exports.coingeckoSourceId = exports.primarySourceId = exports.piggyBankSourceId = exports.xStakingSourceId = exports.sandglassSourceId = exports.usdcPlusSourceId = exports.rainSourceId = exports.xOrcaSourceId = exports.jupLendSourceId = exports.jitoSourceId = exports.fragmetricSourceId = exports.fragmetricApiSourceId = exports.exponentSourceId = exports.adrenaSourceId = exports.adrasteaSourceId = exports.hyloSourceId = void 0;
4
4
  const helpers_1 = require("./helpers");
5
5
  const constants_1 = require("./constants");
6
+ exports.hyloSourceId = 'hylo-tokens-pricing';
7
+ exports.adrasteaSourceId = 'adrastea-lst-pricing';
8
+ exports.adrenaSourceId = 'adrena-token-pricing';
9
+ exports.exponentSourceId = 'exponent-token-pricing';
10
+ exports.fragmetricApiSourceId = 'fragmetric-api-pricing';
11
+ exports.fragmetricSourceId = 'fragmetric-fund-account-pricing';
12
+ exports.jitoSourceId = 'jito-vaults-pricing';
13
+ exports.jupLendSourceId = 'jupiter-jtokens-pricing';
14
+ exports.xOrcaSourceId = 'x-orca-pricing';
15
+ exports.rainSourceId = 'rain-liquid-pricing';
16
+ exports.usdcPlusSourceId = 'reflect-usdc-plus-pricing';
17
+ exports.sandglassSourceId = 'sandglass-markets-pricing';
18
+ exports.xStakingSourceId = 'x-staking-pricing';
19
+ exports.piggyBankSourceId = 'piggy-bank-pricing';
6
20
  exports.primarySourceId = 'primary';
7
21
  exports.coingeckoSourceId = 'coingecko';
8
22
  exports.jupiterSourceId = 'jupiter-datapi';
@@ -12,6 +26,19 @@ exports.jupiterSourceId = 'jupiter-datapi';
12
26
  * The last id has the lowest priority.
13
27
  */
14
28
  exports.prioritisedSourceIds = [
29
+ exports.hyloSourceId,
30
+ exports.adrasteaSourceId,
31
+ exports.adrenaSourceId,
32
+ exports.exponentSourceId,
33
+ exports.fragmetricApiSourceId,
34
+ exports.fragmetricSourceId,
35
+ exports.jitoSourceId,
36
+ exports.jupLendSourceId,
37
+ exports.xOrcaSourceId,
38
+ exports.rainSourceId,
39
+ exports.usdcPlusSourceId,
40
+ exports.sandglassSourceId,
41
+ exports.xStakingSourceId,
15
42
  exports.primarySourceId,
16
43
  exports.jupiterSourceId,
17
44
  // Always leave coingeckoSourceId at the end to use it as fallback
@@ -35,6 +62,8 @@ function tokenPriceFromSources(sources) {
35
62
  }
36
63
  if (current.platformId !== constants_1.walletTokensPlatformId)
37
64
  return current;
65
+ if (current.link && !prev.link)
66
+ return current;
38
67
  return prev;
39
68
  });
40
69
  const { price, priceChange24h } = getPriceInfoFromSources(updatedSources);
@@ -48,6 +77,7 @@ function tokenPriceFromSources(sources) {
48
77
  underlyings: displaySource.underlyings,
49
78
  link: displaySource.link,
50
79
  decimals: displaySource.decimals,
80
+ sourceRefs: displaySource.sourceRefs,
51
81
  price: price,
52
82
  priceChange24h,
53
83
  timestamp: Date.now(),
@@ -1 +1 @@
1
- {"version":3,"file":"TokenPrice.js","sourceRoot":"","sources":["../../../../packages/core/src/TokenPrice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenPrice.js","sourceRoot":"","sources":["../../../../packages/core/src/TokenPrice.ts"],"names":[],"mappings":"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"}