@sonarwatch/portfolio-plugins 0.8.73 → 0.8.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,14 +2,18 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
- ## [0.8.73](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.72...plugins-0.8.73) (2023-11-10)
6
-
7
-
8
-
9
- ## [0.8.72](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.71...plugins-0.8.72) (2023-11-10)
5
+ ## [0.8.74](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.73...plugins-0.8.74) (2023-11-11)
10
6
 
11
7
 
12
8
 
9
+ ## [0.8.73](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.72...plugins-0.8.73) (2023-11-10)
10
+
11
+
12
+
13
+ ## [0.8.72](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.71...plugins-0.8.72) (2023-11-10)
14
+
15
+
16
+
13
17
  ## [0.8.71](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.70...plugins-0.8.71) (2023-11-09)
14
18
 
15
19
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sonarwatch/portfolio-plugins",
3
- "version": "0.8.73",
3
+ "version": "0.8.74",
4
4
  "type": "commonjs",
5
5
  "generators": "./generators.json",
6
6
  "dependencies": {
@@ -39,7 +39,7 @@
39
39
  "web3-v1": "npm:web3@^1.5.0"
40
40
  },
41
41
  "peerDependencies": {
42
- "@sonarwatch/portfolio-core": "0.8.73"
42
+ "@sonarwatch/portfolio-core": "0.8.74"
43
43
  },
44
44
  "main": "./src/index.js",
45
45
  "types": "./src/index.d.ts"
@@ -19,13 +19,15 @@ const clients_1 = require("../../utils/clients");
19
19
  const solana_1 = require("../../utils/solana");
20
20
  const structs_1 = require("./structs");
21
21
  const getLpTokenSourceRaw_1 = __importDefault(require("../../utils/misc/getLpTokenSourceRaw"));
22
+ const getLpUnderlyingTokenSource_1 = __importDefault(require("../../utils/misc/getLpUnderlyingTokenSource"));
22
23
  const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
23
24
  const connection = (0, clients_1.getClientSolana)();
24
- const pools = yield (0, solana_1.getParsedProgramAccounts)(connection, structs_1.poolStruct, new web3_js_1.PublicKey(constants_1.fluxbeamPoolsPid), [{ dataSize: structs_1.poolStruct.byteSize }]);
25
- const tokenAccountsAddresses = pools
25
+ let pools = yield (0, solana_1.getParsedProgramAccounts)(connection, structs_1.poolStruct, new web3_js_1.PublicKey(constants_1.fluxbeamPoolsPid), [{ dataSize: structs_1.poolStruct.byteSize }]);
26
+ pools = pools.filter((pool) => pool.isInitialized);
27
+ const reserveAccountsAddresses = pools
26
28
  .map((pool) => [pool.tokenA, pool.tokenB])
27
29
  .flat();
28
- const tokenAccounts = yield (0, solana_1.getParsedMultipleAccountsInfo)(connection, solana_1.tokenAccountStruct, tokenAccountsAddresses);
30
+ const tokenAccounts = yield (0, solana_1.getParsedMultipleAccountsInfo)(connection, solana_1.tokenAccountStruct, reserveAccountsAddresses);
29
31
  const tokenAccountsMap = new Map();
30
32
  tokenAccounts.forEach((tokenAccount) => {
31
33
  if (!tokenAccount)
@@ -33,9 +35,18 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
33
35
  tokenAccountsMap.set(tokenAccount.pubkey.toString(), tokenAccount);
34
36
  });
35
37
  const poolMints = yield (0, solana_1.getParsedMultipleAccountsInfo)(connection, solana_1.mintAccountStruct, pools.map((p) => p.poolMint));
36
- const tokenMintsAddresses = pools
37
- .map((pool) => [pool.tokenAMint.toString(), pool.tokenBMint.toString()])
38
- .flat();
38
+ const tokenMintsAddresses = [
39
+ ...new Set(pools
40
+ .map((pool) => [pool.tokenAMint.toString(), pool.tokenBMint.toString()])
41
+ .flat()),
42
+ ];
43
+ const tokenMintsAccounts = yield (0, solana_1.getParsedMultipleAccountsInfo)(connection, solana_1.mintAccountStruct, tokenMintsAddresses.map((a) => new web3_js_1.PublicKey(a)));
44
+ const tokenMintsAccountsMap = new Map();
45
+ tokenMintsAccounts.forEach((tokenMintAccount) => {
46
+ if (!tokenMintAccount)
47
+ return;
48
+ tokenMintsAccountsMap.set(tokenMintAccount.pubkey.toString(), tokenMintAccount);
49
+ });
39
50
  const tokenPriceResults = yield cache.getTokenPrices(tokenMintsAddresses, portfolio_core_1.NetworkId.solana);
40
51
  const tokenPrices = new Map();
41
52
  tokenPriceResults.forEach((tokenPrice) => {
@@ -50,15 +61,33 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
50
61
  const poolMint = poolMints[i];
51
62
  if (!poolMint)
52
63
  continue;
53
- const tokenPriceA = tokenPrices.get(pool.tokenAMint.toString());
54
- const tokenPriceB = tokenPrices.get(pool.tokenBMint.toString());
55
- if (!tokenPriceA || !tokenPriceB)
56
- continue;
57
64
  const tokenAccountA = tokenAccountsMap.get(pool.tokenA.toString());
58
65
  const tokenAccountB = tokenAccountsMap.get(pool.tokenB.toString());
59
66
  if (!tokenAccountA || !tokenAccountB)
60
67
  continue;
61
- const source = (0, getLpTokenSourceRaw_1.default)(portfolio_core_1.NetworkId.solana, constants_1.platformId, constants_1.platformId, 'Pools', {
68
+ const mintAccountA = tokenMintsAccountsMap.get(pool.tokenAMint.toString());
69
+ const mintAccountB = tokenMintsAccountsMap.get(pool.tokenBMint.toString());
70
+ if (!mintAccountA || !mintAccountB)
71
+ continue;
72
+ const tokenPriceA = tokenPrices.get(pool.tokenAMint.toString());
73
+ const tokenPriceB = tokenPrices.get(pool.tokenBMint.toString());
74
+ const underlyingsSource = (0, getLpUnderlyingTokenSource_1.default)(constants_1.platformId, constants_1.platformId, portfolio_core_1.NetworkId.solana, {
75
+ address: pool.tokenAMint.toString(),
76
+ decimals: mintAccountA.decimals,
77
+ reserveAmountRaw: tokenAccountA.amount,
78
+ tokenPrice: tokenPriceA,
79
+ }, {
80
+ address: pool.tokenBMint.toString(),
81
+ decimals: mintAccountB.decimals,
82
+ reserveAmountRaw: tokenAccountB.amount,
83
+ tokenPrice: tokenPriceB,
84
+ });
85
+ if (underlyingsSource) {
86
+ yield cache.setTokenPriceSource(underlyingsSource);
87
+ }
88
+ if (!tokenPriceA || !tokenPriceB)
89
+ continue;
90
+ const lpSource = (0, getLpTokenSourceRaw_1.default)(portfolio_core_1.NetworkId.solana, constants_1.platformId, constants_1.platformId, 'Pools', {
62
91
  address: pool.poolMint.toString(),
63
92
  decimals: poolMint.decimals,
64
93
  supplyRaw: poolMint.supply,
@@ -76,7 +105,7 @@ const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
76
105
  reserveAmountRaw: tokenAccountB.amount,
77
106
  },
78
107
  ]);
79
- yield cache.setTokenPriceSource(source);
108
+ yield cache.setTokenPriceSource(lpSource);
80
109
  }
81
110
  });
82
111
  const job = {
@@ -1 +1 @@
1
- {"version":3,"file":"poolsJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/fluxbeam/poolsJob.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolsJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/fluxbeam/poolsJob.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export type SwapCurve = {
25
25
  export declare const swapCurveStruct: BeetStruct<SwapCurve, Partial<SwapCurve>>;
26
26
  export type Pool = {
27
27
  padding: Buffer;
28
- isInitialized: number;
28
+ isInitialized: boolean;
29
29
  bumpSeed: number;
30
30
  tokenProgramId: PublicKey;
31
31
  tokenA: PublicKey;
@@ -26,7 +26,7 @@ exports.swapCurveStruct = new beet_1.BeetStruct([
26
26
  ], (args) => args);
27
27
  exports.poolStruct = new beet_1.BeetStruct([
28
28
  ['padding', (0, solana_1.blob)(1)],
29
- ['isInitialized', beet_1.u8],
29
+ ['isInitialized', beet_1.bool],
30
30
  ['bumpSeed', beet_1.u8],
31
31
  ['tokenProgramId', beet_solana_1.publicKey],
32
32
  ['tokenA', beet_solana_1.publicKey],
@@ -1 +1 @@
1
- {"version":3,"file":"structs.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/fluxbeam/structs.ts"],"names":[],"mappings":";;;AAAA,oDAA2D;AAC3D,kEAA6D;AAG7D,+CAA+C;AAalC,QAAA,UAAU,GAAG,IAAI,iBAAU,CACtC;IACE,CAAC,mBAAmB,EAAE,YAAG,CAAC;IAC1B,CAAC,qBAAqB,EAAE,YAAG,CAAC;IAC5B,CAAC,wBAAwB,EAAE,YAAG,CAAC;IAC/B,CAAC,0BAA0B,EAAE,YAAG,CAAC;IACjC,CAAC,2BAA2B,EAAE,YAAG,CAAC;IAClC,CAAC,6BAA6B,EAAE,YAAG,CAAC;IACpC,CAAC,kBAAkB,EAAE,YAAG,CAAC;IACzB,CAAC,oBAAoB,EAAE,YAAG,CAAC;CAC5B,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CACvB,CAAC;AAEF,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,+DAAe,CAAA;IACf,2DAAa,CAAA;IACb,6CAAM,CAAA;AACR,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAOY,QAAA,eAAe,GAAG,IAAI,iBAAU,CAC3C;IACE,CAAC,WAAW,EAAE,SAAE,CAAC;IACjB,CAAC,YAAY,EAAE,IAAA,aAAI,EAAC,EAAE,CAAC,CAAC;CACzB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAiB,CAC5B,CAAC;AAiBW,QAAA,UAAU,GAAG,IAAI,iBAAU,CACtC;IACE,CAAC,SAAS,EAAE,IAAA,aAAI,EAAC,CAAC,CAAC,CAAC;IACpB,CAAC,eAAe,EAAE,SAAE,CAAC;IACrB,CAAC,UAAU,EAAE,SAAE,CAAC;IAChB,CAAC,gBAAgB,EAAE,uBAAS,CAAC;IAC7B,CAAC,QAAQ,EAAE,uBAAS,CAAC;IACrB,CAAC,QAAQ,EAAE,uBAAS,CAAC;IACrB,CAAC,UAAU,EAAE,uBAAS,CAAC;IACvB,CAAC,YAAY,EAAE,uBAAS,CAAC;IACzB,CAAC,YAAY,EAAE,uBAAS,CAAC;IACzB,CAAC,gBAAgB,EAAE,uBAAS,CAAC;IAC7B,CAAC,MAAM,EAAE,kBAAU,CAAC;IACpB,CAAC,WAAW,EAAE,uBAAe,CAAC;CAC/B,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CACvB,CAAC"}
1
+ {"version":3,"file":"structs.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/fluxbeam/structs.ts"],"names":[],"mappings":";;;AAAA,oDAAiE;AACjE,kEAA6D;AAG7D,+CAA+C;AAalC,QAAA,UAAU,GAAG,IAAI,iBAAU,CACtC;IACE,CAAC,mBAAmB,EAAE,YAAG,CAAC;IAC1B,CAAC,qBAAqB,EAAE,YAAG,CAAC;IAC5B,CAAC,wBAAwB,EAAE,YAAG,CAAC;IAC/B,CAAC,0BAA0B,EAAE,YAAG,CAAC;IACjC,CAAC,2BAA2B,EAAE,YAAG,CAAC;IAClC,CAAC,6BAA6B,EAAE,YAAG,CAAC;IACpC,CAAC,kBAAkB,EAAE,YAAG,CAAC;IACzB,CAAC,oBAAoB,EAAE,YAAG,CAAC;CAC5B,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CACvB,CAAC;AAEF,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,+DAAe,CAAA;IACf,2DAAa,CAAA;IACb,6CAAM,CAAA;AACR,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAOY,QAAA,eAAe,GAAG,IAAI,iBAAU,CAC3C;IACE,CAAC,WAAW,EAAE,SAAE,CAAC;IACjB,CAAC,YAAY,EAAE,IAAA,aAAI,EAAC,EAAE,CAAC,CAAC;CACzB,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAiB,CAC5B,CAAC;AAiBW,QAAA,UAAU,GAAG,IAAI,iBAAU,CACtC;IACE,CAAC,SAAS,EAAE,IAAA,aAAI,EAAC,CAAC,CAAC,CAAC;IACpB,CAAC,eAAe,EAAE,WAAI,CAAC;IACvB,CAAC,UAAU,EAAE,SAAE,CAAC;IAChB,CAAC,gBAAgB,EAAE,uBAAS,CAAC;IAC7B,CAAC,QAAQ,EAAE,uBAAS,CAAC;IACrB,CAAC,QAAQ,EAAE,uBAAS,CAAC;IACrB,CAAC,UAAU,EAAE,uBAAS,CAAC;IACvB,CAAC,YAAY,EAAE,uBAAS,CAAC;IACzB,CAAC,YAAY,EAAE,uBAAS,CAAC;IACzB,CAAC,gBAAgB,EAAE,uBAAS,CAAC;IAC7B,CAAC,MAAM,EAAE,kBAAU,CAAC;IACpB,CAAC,WAAW,EAAE,uBAAe,CAAC;CAC/B,EACD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CACvB,CAAC"}
@@ -36,28 +36,28 @@ exports.getPairsV2 = void 0;
36
36
  const graphql_request_1 = __importStar(require("graphql-request"));
37
37
  function getPairsV2(url) {
38
38
  return __awaiter(this, void 0, void 0, function* () {
39
- const query = (0, graphql_request_1.gql) `
40
- {
41
- pairs(
42
- orderBy: reserveUSD
43
- first: 500
44
- orderDirection: desc
45
- where: { trackedReserveETH_not: "0" }
46
- ) {
47
- id
48
- reserve0
49
- reserve1
50
- totalSupply
51
- token0 {
52
- id
53
- decimals
54
- }
55
- token1 {
56
- id
57
- decimals
58
- }
59
- }
60
- }
39
+ const query = (0, graphql_request_1.gql) `
40
+ {
41
+ pairs(
42
+ orderBy: reserveUSD
43
+ first: 500
44
+ orderDirection: desc
45
+ where: { trackedReserveETH_not: "0" }
46
+ ) {
47
+ id
48
+ reserve0
49
+ reserve1
50
+ totalSupply
51
+ token0 {
52
+ id
53
+ decimals
54
+ }
55
+ token1 {
56
+ id
57
+ decimals
58
+ }
59
+ }
60
+ }
61
61
  `;
62
62
  const res = yield (0, graphql_request_1.default)(url, query);
63
63
  const pairs = res.pairs;
@@ -1 +1,3 @@
1
+ import BigNumber from 'bignumber.js';
1
2
  export declare const zeroBigInt: bigint;
3
+ export declare const zeroBigNumber: BigNumber;
@@ -1,5 +1,10 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zeroBigInt = void 0;
6
+ exports.zeroBigNumber = exports.zeroBigInt = void 0;
7
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
4
8
  exports.zeroBigInt = BigInt(0);
9
+ exports.zeroBigNumber = (0, bignumber_js_1.default)(0);
5
10
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/constants.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AAExB,QAAA,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;AACvB,QAAA,aAAa,GAAG,IAAA,sBAAS,EAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { NetworkIdType, TokenPrice, TokenPriceSource } from '@sonarwatch/portfolio-core';
2
+ import BigNumber from 'bignumber.js';
3
+ export type PoolData = {
4
+ id: string;
5
+ supply: BigNumber;
6
+ lpDecimals: number;
7
+ reserveTokenX: BigNumber;
8
+ reserveTokenY: BigNumber;
9
+ mintTokenX: string;
10
+ decimalX?: number;
11
+ mintTokenY: string;
12
+ decimalY?: number;
13
+ };
14
+ type PoolUnderlyingRaw = {
15
+ address: string;
16
+ reserveAmountRaw: BigNumber;
17
+ decimals: number;
18
+ tokenPrice: TokenPrice | undefined;
19
+ };
20
+ export default function getLpUnderlyingTokenSource(sourceId: string, platformId: string, networkId: NetworkIdType, poolUnderlyingsA: PoolUnderlyingRaw, poolUnderlyingsB: PoolUnderlyingRaw, minTvl?: number, acceptedPairs?: string[]): TokenPriceSource | null;
21
+ export {};
@@ -0,0 +1,80 @@
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
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
7
+ const getSourceWeight_1 = __importDefault(require("./getSourceWeight"));
8
+ const defaultAcceptedPairs = [
9
+ // Sei Addresses
10
+ portfolio_core_1.seiNativeAddress,
11
+ 'ibc/ED07A3391A112B175915CD8FAF43A2DA8E4790EDE12566649D0C2F97716B8518',
12
+ 'factory/sei189adguawugk3e55zn63z8r9ll29xrjwca636ra7v7gxuzn98sxyqwzt47l/Hq4tuDzhRBnxw3tFA5n6M52NVMVcC19XggbyDiJKCD6H',
13
+ // Solana Addresses
14
+ portfolio_core_1.solanaNativeAddress,
15
+ portfolio_core_1.solanaNativeWrappedAddress,
16
+ 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
17
+ 'Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB',
18
+ // Aptos Addresses
19
+ portfolio_core_1.aptosNativeAddress,
20
+ '0x5e156f1207d0ebfa19a9eeff00d62a282278fb8719f4fab3a586a0a2c0fffbea::coin::T',
21
+ '0x6f986d146e4a90b828d8c12c14b6f4e003fdff11a8eecceceb63744363eaac01::mod_coin::MOD',
22
+ // Sui addresses
23
+ portfolio_core_1.suiNativeAddress,
24
+ '0x2::sui::SUI',
25
+ '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN',
26
+ '0x6864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS', // CETUS
27
+ ];
28
+ function getLpUnderlyingTokenSource(sourceId, platformId, networkId, poolUnderlyingsA, poolUnderlyingsB, minTvl = 5000, acceptedPairs = defaultAcceptedPairs) {
29
+ var _a, _b;
30
+ if (!poolUnderlyingsA.tokenPrice && !poolUnderlyingsB.tokenPrice)
31
+ return null;
32
+ if (((_a = poolUnderlyingsA.tokenPrice) === null || _a === void 0 ? void 0 : _a.price) === 0)
33
+ return null;
34
+ if (((_b = poolUnderlyingsB.tokenPrice) === null || _b === void 0 ? void 0 : _b.price) === 0)
35
+ return null;
36
+ const isAcceptedTokenA = acceptedPairs.includes(poolUnderlyingsA.address);
37
+ const isAcceptedTokenB = acceptedPairs.includes(poolUnderlyingsB.address);
38
+ if (isAcceptedTokenA && isAcceptedTokenB)
39
+ return null;
40
+ let knownUnderlaying;
41
+ let unknownUnderlaying;
42
+ if (poolUnderlyingsA.tokenPrice && isAcceptedTokenA) {
43
+ knownUnderlaying = poolUnderlyingsA;
44
+ unknownUnderlaying = poolUnderlyingsB;
45
+ }
46
+ else if (poolUnderlyingsB.tokenPrice && isAcceptedTokenB) {
47
+ knownUnderlaying = poolUnderlyingsB;
48
+ unknownUnderlaying = poolUnderlyingsA;
49
+ }
50
+ if (!knownUnderlaying || !unknownUnderlaying)
51
+ return null;
52
+ if (unknownUnderlaying.tokenPrice &&
53
+ unknownUnderlaying.tokenPrice.sources.some((source) => source.id === portfolio_core_1.coingeckoSourceId)) {
54
+ return null;
55
+ }
56
+ const knownReserveAmount = knownUnderlaying.reserveAmountRaw
57
+ .div(Math.pow(10, knownUnderlaying.decimals))
58
+ .toNumber();
59
+ const knownReserveValue = knownReserveAmount * knownUnderlaying.tokenPrice.price;
60
+ const poolTvl = knownReserveValue * 2;
61
+ if (minTvl > poolTvl)
62
+ return null;
63
+ const unknownReserveAmount = unknownUnderlaying.reserveAmountRaw
64
+ .div(Math.pow(10, unknownUnderlaying.decimals))
65
+ .toNumber();
66
+ const price = knownReserveValue / unknownReserveAmount;
67
+ const source = {
68
+ id: sourceId,
69
+ networkId,
70
+ platformId,
71
+ address: unknownUnderlaying.address,
72
+ decimals: unknownUnderlaying.decimals,
73
+ price,
74
+ weight: (0, getSourceWeight_1.default)(poolTvl),
75
+ timestamp: Date.now(),
76
+ };
77
+ return source;
78
+ }
79
+ exports.default = getLpUnderlyingTokenSource;
80
+ //# sourceMappingURL=getLpUnderlyingTokenSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getLpUnderlyingTokenSource.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/getLpUnderlyingTokenSource.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@ import BigNumber from 'bignumber.js';
2
2
  /**
3
3
  * Get the weight of a new TokenPriceSource depending on the size of the pool in USD$ value
4
4
  *
5
- * @param poolUsdValue Total value in USD$ of the pool
5
+ * @param {BigNumber | number} poolTvl Pool total value locked (in USD$)
6
+ * @param {number} [trustValue=1000000000] Value (in USD$) from which the weight is 1
6
7
  *
7
8
  * @returns weight between 0 and 1
8
9
  */
9
- export default function getSourceWeight(poolUsdValue: BigNumber): number;
10
+ export default function getSourceWeight(poolTvl: BigNumber | number, trustValue?: number): number;
@@ -4,19 +4,23 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
7
- const usdValueForWeightOfOne = new bignumber_js_1.default(10).pow(9);
7
+ const constants_1 = require("./constants");
8
8
  /**
9
9
  * Get the weight of a new TokenPriceSource depending on the size of the pool in USD$ value
10
10
  *
11
- * @param poolUsdValue Total value in USD$ of the pool
11
+ * @param {BigNumber | number} poolTvl Pool total value locked (in USD$)
12
+ * @param {number} [trustValue=1000000000] Value (in USD$) from which the weight is 1
12
13
  *
13
14
  * @returns weight between 0 and 1
14
15
  */
15
- function getSourceWeight(poolUsdValue) {
16
- if (poolUsdValue.isGreaterThan(usdValueForWeightOfOne))
16
+ function getSourceWeight(poolTvl, trustValue = 1000000000) {
17
+ const fPoolTvl = new bignumber_js_1.default(poolTvl);
18
+ if (fPoolTvl.isGreaterThanOrEqualTo(trustValue))
17
19
  return 1;
18
- return poolUsdValue
19
- .dividedBy(usdValueForWeightOfOne)
20
+ if (fPoolTvl.isLessThanOrEqualTo(constants_1.zeroBigNumber))
21
+ return 0;
22
+ return fPoolTvl
23
+ .dividedBy(trustValue)
20
24
  .decimalPlaces(3, bignumber_js_1.default.ROUND_CEIL)
21
25
  .toNumber();
22
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getSourceWeight.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/getSourceWeight.ts"],"names":[],"mappings":";;;;;AAAA,gEAAqC;AAErC,MAAM,sBAAsB,GAAG,IAAI,sBAAS,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACxD;;;;;;GAMG;AACH,SAAwB,eAAe,CAAC,YAAuB;IAC7D,IAAI,YAAY,CAAC,aAAa,CAAC,sBAAsB,CAAC;QAAE,OAAO,CAAC,CAAC;IACjE,OAAO,YAAY;SAChB,SAAS,CAAC,sBAAsB,CAAC;SACjC,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;SACtC,QAAQ,EAAE,CAAC;AAChB,CAAC;AAND,kCAMC"}
1
+ {"version":3,"file":"getSourceWeight.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/utils/misc/getSourceWeight.ts"],"names":[],"mappings":";;;;;AAAA,gEAAqC;AACrC,2CAA4C;AAE5C;;;;;;;GAOG;AACH,SAAwB,eAAe,CACrC,OAA2B,EAC3B,UAAU,GAAG,UAAU;IAEvB,MAAM,QAAQ,GAAG,IAAI,sBAAS,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,QAAQ,CAAC,sBAAsB,CAAC,UAAU,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1D,IAAI,QAAQ,CAAC,mBAAmB,CAAC,yBAAa,CAAC;QAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,QAAQ;SACZ,SAAS,CAAC,UAAU,CAAC;SACrB,aAAa,CAAC,CAAC,EAAE,sBAAS,CAAC,UAAU,CAAC;SACtC,QAAQ,EAAE,CAAC;AAChB,CAAC;AAXD,kCAWC"}