@sonarwatch/portfolio-plugins 0.8.48 → 0.8.50

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 (49) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/package.json +41 -2
  3. package/src/index.js +3 -0
  4. package/src/index.js.map +1 -1
  5. package/src/plugins/balancer/getV2Fetcher.js +2 -2
  6. package/src/plugins/balancer/getV2Fetcher.js.map +1 -1
  7. package/src/plugins/paraswap/abis.d.ts +42 -0
  8. package/src/plugins/paraswap/abis.js +44 -1
  9. package/src/plugins/paraswap/abis.js.map +1 -1
  10. package/src/plugins/paraswap/index.js +2 -7
  11. package/src/plugins/paraswap/index.js.map +1 -1
  12. package/src/plugins/paraswap/poolsFetcher.js +230 -0
  13. package/src/plugins/paraswap/poolsFetcher.js.map +1 -0
  14. package/src/plugins/paraswap/stakingFetcher.js +46 -37
  15. package/src/plugins/paraswap/stakingFetcher.js.map +1 -1
  16. package/src/plugins/paraswap/types.d.ts +6 -0
  17. package/src/plugins/paraswap/types.js +8 -0
  18. package/src/plugins/paraswap/types.js.map +1 -1
  19. package/src/plugins/solend/reservesJob.js +34 -3
  20. package/src/plugins/solend/reservesJob.js.map +1 -1
  21. package/src/plugins/stargate/gePoolPositionsFetcher.js +1 -2
  22. package/src/plugins/stargate/gePoolPositionsFetcher.js.map +1 -1
  23. package/src/plugins/stargate/getFarmPositionsFetcher.js +2 -3
  24. package/src/plugins/stargate/getFarmPositionsFetcher.js.map +1 -1
  25. package/src/plugins/tokens/fetchers/evms/index.js +1 -0
  26. package/src/plugins/tokens/fetchers/evms/index.js.map +1 -1
  27. package/src/plugins/uniswap/getPositionsV3Fetcher.js +2 -0
  28. package/src/plugins/uniswap/getPositionsV3Fetcher.js.map +1 -1
  29. package/src/plugins/uniswap-v2/constants.d.ts +2 -0
  30. package/src/plugins/uniswap-v2/constants.js +6 -0
  31. package/src/plugins/uniswap-v2/constants.js.map +1 -0
  32. package/src/plugins/uniswap-v2/helpers.d.ts +2 -0
  33. package/src/plugins/uniswap-v2/helpers.js +69 -0
  34. package/src/plugins/uniswap-v2/helpers.js.map +1 -0
  35. package/src/plugins/uniswap-v2/index.d.ts +4 -0
  36. package/src/plugins/uniswap-v2/index.js +10 -0
  37. package/src/plugins/uniswap-v2/index.js.map +1 -0
  38. package/src/plugins/uniswap-v2/types.d.ts +18 -0
  39. package/src/plugins/uniswap-v2/types.js +3 -0
  40. package/src/plugins/uniswap-v2/types.js.map +1 -0
  41. package/src/plugins/uniswap-v2/v2Job.d.ts +3 -0
  42. package/src/plugins/uniswap-v2/v2Job.js +85 -0
  43. package/src/plugins/uniswap-v2/v2Job.js.map +1 -0
  44. package/src/plugins/paraswap/bptFarmingFetcher.js +0 -106
  45. package/src/plugins/paraswap/bptFarmingFetcher.js.map +0 -1
  46. package/src/plugins/paraswap/bptStakingFetcher.d.ts +0 -3
  47. package/src/plugins/paraswap/bptStakingFetcher.js +0 -140
  48. package/src/plugins/paraswap/bptStakingFetcher.js.map +0 -1
  49. /package/src/plugins/paraswap/{bptFarmingFetcher.d.ts → poolsFetcher.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.8.50](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.49...plugins-0.8.50) (2023-10-27)
6
+
7
+
8
+
9
+ ## [0.8.49](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.48...plugins-0.8.49) (2023-10-26)
10
+
11
+
12
+
5
13
  ## [0.8.48](https://github.com/sonarwatch/portfolio/compare/plugins-0.8.47...plugins-0.8.48) (2023-10-26)
6
14
 
7
15
 
package/package.json CHANGED
@@ -1,7 +1,46 @@
1
1
  {
2
2
  "name": "@sonarwatch/portfolio-plugins",
3
- "version": "0.8.48",
3
+ "version": "0.8.50",
4
4
  "type": "commonjs",
5
5
  "generators": "./generators.json",
6
- "main": "./src/index.js"
6
+ "dependencies": {
7
+ "@aave/contract-helpers": "^1.18.3",
8
+ "@aave/math-utils": "^1.18.3",
9
+ "@bonfida/spl-name-service": "^1.0.10",
10
+ "@cosmjs/cosmwasm-stargate": "^0.31.1",
11
+ "@ethersproject/address": "^5.7.0",
12
+ "@ethersproject/bignumber": "^5.7.0",
13
+ "@ethersproject/bytes": "^5.7.0",
14
+ "@ethersproject/constants": "^5.7.0",
15
+ "@ethersproject/providers": "^5.7.2",
16
+ "@ethersproject/units": "^5.7.0",
17
+ "@metaplex-foundation/beet": "^0.7.1",
18
+ "@metaplex-foundation/beet-solana": "^0.4.0",
19
+ "@metaplex-foundation/js": "^0.19.4",
20
+ "@metaplex-foundation/umi-serializers-encodings": "^0.8.9",
21
+ "@mysten/sui.js": "^0.37.1",
22
+ "@sei-js/core": "^3.0.1",
23
+ "@sei-js/proto": "^3.0.1",
24
+ "@solana/web3.js": "^1.78.4",
25
+ "aptos": "^1.13.1",
26
+ "axios": "^1.4.0",
27
+ "bignumber.js": "^9.1.1",
28
+ "bitcoin-address-validation": "^2.2.1",
29
+ "bn.js": "^5.2.1",
30
+ "decimal.js": "^10.4.3",
31
+ "dsa-connect": "^0.6.47",
32
+ "graphql": "^16.8.1",
33
+ "graphql-request": "^6.1.0",
34
+ "long": "^5.2.3",
35
+ "osmojs": "^16.5.1",
36
+ "reflect-metadata": "^0.1.13",
37
+ "unstorage": "^1.9.0",
38
+ "viem": "^1.16.5",
39
+ "web3-v1": "npm:web3@^1.5.0"
40
+ },
41
+ "peerDependencies": {
42
+ "@sonarwatch/portfolio-core": "0.8.50"
43
+ },
44
+ "main": "./src/index.js",
45
+ "types": "./src/index.d.ts"
7
46
  }
package/src/index.js CHANGED
@@ -56,6 +56,7 @@ const compound_1 = require("./plugins/compound");
56
56
  const stargate_1 = require("./plugins/stargate");
57
57
  const stader_1 = require("./plugins/stader");
58
58
  const uniswap_1 = require("./plugins/uniswap");
59
+ const uniswap_v2_1 = require("./plugins/uniswap-v2");
59
60
  const balancer_1 = require("./plugins/balancer");
60
61
  const paraswap_1 = require("./plugins/paraswap");
61
62
  var constants_1 = require("./plugins/tokens/constants");
@@ -139,6 +140,7 @@ exports.jobs = [
139
140
  ...compound_1.jobs,
140
141
  ...stargate_1.jobs,
141
142
  ...stader_1.jobs,
143
+ ...uniswap_v2_1.jobs,
142
144
  ...uniswap_1.jobs,
143
145
  ...balancer_1.jobs,
144
146
  ...paraswap_1.jobs,
@@ -172,6 +174,7 @@ exports.fetchers = [
172
174
  ...compound_1.fetchers,
173
175
  ...lido_1.fetchers,
174
176
  ...stader_1.fetchers,
177
+ ...uniswap_v2_1.fetchers,
175
178
  ...uniswap_1.fetchers,
176
179
  ...balancer_1.fetchers,
177
180
  ...paraswap_1.fetchers,
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/plugins/src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/plugins/src/index.ts"],"names":[],"mappings":"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"}
@@ -97,7 +97,7 @@ function getPoolsV2Fetcher(networkId) {
97
97
  label: 'LiquidityPool',
98
98
  networkId,
99
99
  platformId: constants_1.platformId,
100
- value: 1,
100
+ value: (0, portfolio_core_1.getUsdValueSum)(poolLiquidities.map((a) => a.value)),
101
101
  name: 'Balancer V2',
102
102
  data: {
103
103
  liquidities: poolLiquidities,
@@ -110,7 +110,7 @@ function getPoolsV2Fetcher(networkId) {
110
110
  label: 'Farming',
111
111
  networkId,
112
112
  platformId: constants_1.platformId,
113
- value: 1,
113
+ value: (0, portfolio_core_1.getUsdValueSum)(farmLiquidities.map((a) => a.value)),
114
114
  name: 'Balancer V2',
115
115
  data: {
116
116
  liquidities: farmLiquidities,
@@ -1 +1 @@
1
- {"version":3,"file":"getV2Fetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/balancer/getV2Fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getV2Fetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/balancer/getV2Fetcher.ts"],"names":[],"mappings":"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"}
@@ -74,3 +74,45 @@ export declare const pendingWithdrawalsAbi: readonly [{
74
74
  readonly stateMutability: "view";
75
75
  readonly type: "function";
76
76
  }];
77
+ export declare const userVsWithdrawalsAbi: readonly [{
78
+ readonly name: "userVsWithdrawals";
79
+ readonly inputs: readonly [{
80
+ readonly internalType: "address";
81
+ readonly name: "staker";
82
+ readonly type: "address";
83
+ }, {
84
+ readonly internalType: "int256";
85
+ readonly name: "id";
86
+ readonly type: "int256";
87
+ }];
88
+ readonly outputs: readonly [{
89
+ readonly internalType: "uint256";
90
+ readonly name: "amountPSP";
91
+ readonly type: "uint256";
92
+ }, {
93
+ readonly internalType: "uint256";
94
+ readonly name: "releaseBlockNumber";
95
+ readonly type: "uint256";
96
+ }, {
97
+ readonly internalType: "uint8";
98
+ readonly name: "status";
99
+ readonly type: "uint8";
100
+ }];
101
+ readonly stateMutability: "view";
102
+ readonly type: "function";
103
+ }];
104
+ export declare const userVsNextIDAbi: readonly [{
105
+ readonly name: "userVsNextID";
106
+ readonly inputs: readonly [{
107
+ readonly internalType: "address";
108
+ readonly name: "user";
109
+ readonly type: "address";
110
+ }];
111
+ readonly outputs: readonly [{
112
+ readonly internalType: "int256";
113
+ readonly name: "nextID";
114
+ readonly type: "int256";
115
+ }];
116
+ readonly stateMutability: "view";
117
+ readonly type: "function";
118
+ }];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.pendingWithdrawalsAbi = exports.totalSupplyAbi = exports.getTotalRewardsAbi = exports.getPoolTokensAbi = void 0;
3
+ exports.userVsNextIDAbi = exports.userVsWithdrawalsAbi = exports.pendingWithdrawalsAbi = exports.totalSupplyAbi = exports.getTotalRewardsAbi = exports.getPoolTokensAbi = void 0;
4
4
  exports.getPoolTokensAbi = [
5
5
  {
6
6
  inputs: [{ internalType: 'bytes32', name: 'poolId', type: 'bytes32' }],
@@ -66,4 +66,47 @@ exports.pendingWithdrawalsAbi = [
66
66
  type: 'function',
67
67
  },
68
68
  ];
69
+ exports.userVsWithdrawalsAbi = [
70
+ {
71
+ name: 'userVsWithdrawals',
72
+ inputs: [
73
+ { internalType: 'address', name: 'staker', type: 'address' },
74
+ { internalType: 'int256', name: 'id', type: 'int256' },
75
+ ],
76
+ outputs: [
77
+ {
78
+ internalType: 'uint256',
79
+ name: 'amountPSP',
80
+ type: 'uint256',
81
+ },
82
+ {
83
+ internalType: 'uint256',
84
+ name: 'releaseBlockNumber',
85
+ type: 'uint256',
86
+ },
87
+ {
88
+ internalType: 'uint8',
89
+ name: 'status',
90
+ type: 'uint8',
91
+ },
92
+ ],
93
+ stateMutability: 'view',
94
+ type: 'function',
95
+ },
96
+ ];
97
+ exports.userVsNextIDAbi = [
98
+ {
99
+ name: 'userVsNextID',
100
+ inputs: [{ internalType: 'address', name: 'user', type: 'address' }],
101
+ outputs: [
102
+ {
103
+ internalType: 'int256',
104
+ name: 'nextID',
105
+ type: 'int256',
106
+ },
107
+ ],
108
+ stateMutability: 'view',
109
+ type: 'function',
110
+ },
111
+ ];
69
112
  //# sourceMappingURL=abis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abis.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/abis.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG;IAC9B;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE;YACP,EAAE,YAAY,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE;YACxE,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE;YAClE,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE;SACtE;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEE,QAAA,kBAAkB,GAAG;IAChC;QACE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEE,QAAA,cAAc,GAAG;IAC5B;QACE,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEE,QAAA,qBAAqB,GAAG;IACnC;QACE,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5D,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE;SACvD;QACD,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;aACd;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAC"}
1
+ {"version":3,"file":"abis.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/abis.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.platforms = exports.fetchers = exports.jobs = void 0;
7
7
  const stakingFetcher_1 = __importDefault(require("./stakingFetcher"));
8
- const bptFarmingFetcher_1 = __importDefault(require("./bptFarmingFetcher"));
9
- const bptStakingFetcher_1 = __importDefault(require("./bptStakingFetcher"));
8
+ const poolsFetcher_1 = __importDefault(require("./poolsFetcher"));
10
9
  const bptInfoJob_1 = __importDefault(require("./bptInfoJob"));
11
10
  const constants_1 = require("./constants");
12
11
  exports.jobs = [bptInfoJob_1.default];
13
- exports.fetchers = [
14
- stakingFetcher_1.default,
15
- bptFarmingFetcher_1.default,
16
- bptStakingFetcher_1.default,
17
- ];
12
+ exports.fetchers = [stakingFetcher_1.default, poolsFetcher_1.default];
18
13
  exports.platforms = [constants_1.paraswapPlatform];
19
14
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/index.ts"],"names":[],"mappings":";;;;;;AAGA,sEAA8C;AAC9C,4EAAoD;AACpD,4EAAoD;AACpD,8DAAsC;AACtC,2CAA+C;AAElC,QAAA,IAAI,GAAU,CAAC,oBAAU,CAAC,CAAC;AAC3B,QAAA,QAAQ,GAAc;IACjC,wBAAc;IACd,2BAAiB;IACjB,2BAAiB;CAClB,CAAC;AACW,QAAA,SAAS,GAAe,CAAC,4BAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/index.ts"],"names":[],"mappings":";;;;;;AAGA,sEAA8C;AAC9C,kEAA0C;AAC1C,8DAAsC;AACtC,2CAA+C;AAElC,QAAA,IAAI,GAAU,CAAC,oBAAU,CAAC,CAAC;AAC3B,QAAA,QAAQ,GAAc,CAAC,wBAAc,EAAE,sBAAY,CAAC,CAAC;AACrD,QAAA,SAAS,GAAe,CAAC,4BAAgB,CAAC,CAAC"}
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
16
+ const bignumber_js_1 = __importDefault(require("bignumber.js"));
17
+ const constants_1 = require("./constants");
18
+ const clients_1 = require("../../utils/clients");
19
+ const erc20Abi_1 = require("../../utils/evm/erc20Abi");
20
+ const tokenPriceToAssetToken_1 = __importDefault(require("../../utils/misc/tokenPriceToAssetToken"));
21
+ const abis_1 = require("./abis");
22
+ const types_1 = require("./types");
23
+ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
24
+ const client = (0, clients_1.getEvmClient)(portfolio_core_1.NetworkId.ethereum);
25
+ // Farming
26
+ const farmingBalanceContract = {
27
+ address: constants_1.bptParaFarmer.address,
28
+ abi: erc20Abi_1.balanceOfErc20ABI,
29
+ functionName: erc20Abi_1.balanceOfErc20ABI[0].name,
30
+ args: [owner],
31
+ };
32
+ const farmLpBalance = yield client.readContract(farmingBalanceContract);
33
+ const totalRewardsContract = {
34
+ address: constants_1.bptParaFarmer.address,
35
+ abi: abis_1.getTotalRewardsAbi,
36
+ functionName: abis_1.getTotalRewardsAbi[0].name,
37
+ args: [owner],
38
+ };
39
+ const farmRewardBalance = yield client.readContract(totalRewardsContract);
40
+ // Staking
41
+ const nbrOfWithdrawContract = {
42
+ address: constants_1.bptParaStaker.address,
43
+ abi: abis_1.userVsNextIDAbi,
44
+ functionName: abis_1.userVsNextIDAbi[0].name,
45
+ args: [owner],
46
+ };
47
+ const baseUnlockingContract = {
48
+ address: constants_1.bptParaStaker.address,
49
+ abi: abis_1.pendingWithdrawalsAbi,
50
+ functionName: 'userVsWithdrawals',
51
+ };
52
+ const nbrOfWithdraws = yield client.readContract(nbrOfWithdrawContract);
53
+ const unlockingContracts = [];
54
+ for (let i = BigInt(0); i < nbrOfWithdraws; i++) {
55
+ unlockingContracts.push(Object.assign(Object.assign({}, baseUnlockingContract), { args: [owner, i] }));
56
+ }
57
+ const withdrawals = unlockingContracts.length > 0
58
+ ? yield client.multicall({
59
+ contracts: unlockingContracts,
60
+ })
61
+ : undefined;
62
+ const stakingBalanceContract = {
63
+ address: constants_1.bptParaStaker.address,
64
+ abi: erc20Abi_1.balanceOfErc20ABI,
65
+ functionName: erc20Abi_1.balanceOfErc20ABI[0].name,
66
+ args: [owner],
67
+ };
68
+ const stakingLockedBalance = yield client.readContract(stakingBalanceContract);
69
+ if (stakingLockedBalance === BigInt(0) &&
70
+ (!withdrawals || withdrawals.length === 0) &&
71
+ farmLpBalance === BigInt(0))
72
+ return [];
73
+ const { underlyings } = constants_1.poolAddresses;
74
+ const tokensPrices = yield cache.getTokenPrices(underlyings, portfolio_core_1.NetworkId.ethereum);
75
+ const bptInfo = yield cache.getItem(constants_1.bptInfoKey, {
76
+ prefix: constants_1.platformId,
77
+ networkId: portfolio_core_1.NetworkId.ethereum,
78
+ });
79
+ if (!bptInfo)
80
+ return [];
81
+ const tokenPriceById = new Map();
82
+ for (const tokenPrice of tokensPrices) {
83
+ if (!tokenPrice)
84
+ continue;
85
+ tokenPriceById.set(tokenPrice.address, tokenPrice);
86
+ }
87
+ const { balances } = bptInfo;
88
+ const { totalSupply } = bptInfo;
89
+ const farmAssets = [];
90
+ const stakeAssetsLocked = [];
91
+ const stakeAssetsUnlocking = [];
92
+ const rewardAssets = [];
93
+ for (let i = 0; i < underlyings.length; i++) {
94
+ const underlying = underlyings[i];
95
+ const tokenPrice = tokenPriceById.get(underlying);
96
+ if (!tokenPrice)
97
+ continue;
98
+ const underlyingAmountRaw = new bignumber_js_1.default(balances[i].toString()).dividedBy(totalSupply);
99
+ if (farmLpBalance !== BigInt(0)) {
100
+ const underlyingsAmountStaked = underlyingAmountRaw
101
+ .multipliedBy(new bignumber_js_1.default(stakingLockedBalance.toString()))
102
+ .dividedBy(Math.pow(10, tokenPrice.decimals))
103
+ .toNumber();
104
+ farmAssets.push((0, tokenPriceToAssetToken_1.default)(underlying, underlyingsAmountStaked, portfolio_core_1.NetworkId.ethereum, tokenPrice));
105
+ }
106
+ if (stakingLockedBalance !== BigInt(0)) {
107
+ const underlyingsAmountLocked = underlyingAmountRaw
108
+ .multipliedBy(new bignumber_js_1.default(stakingLockedBalance.toString()))
109
+ .dividedBy(Math.pow(10, tokenPrice.decimals))
110
+ .toNumber();
111
+ stakeAssetsLocked.push((0, tokenPriceToAssetToken_1.default)(underlying, underlyingsAmountLocked, portfolio_core_1.NetworkId.ethereum, tokenPrice));
112
+ }
113
+ }
114
+ const unlockingLiquidities = [];
115
+ if (withdrawals) {
116
+ for (let n = 0; n < withdrawals.length; n++) {
117
+ const withdrawal = withdrawals[n].status === 'success' ? withdrawals[n].result : undefined;
118
+ if (!withdrawal)
119
+ continue;
120
+ const withdrawBalance = withdrawal[0];
121
+ const withdrawStatus = withdrawal[2];
122
+ // TODO : Unlocking date can be found here, not supported by our Data Structure for now.
123
+ // const withdrawEpoch = Number(withdrawals[1]);
124
+ // const dateToDisplay = new Date(withdrawEpoch * 1000).toLocaleDateString();
125
+ if (withdrawBalance !== BigInt(0) &&
126
+ withdrawStatus === types_1.WithdrawStatus.UNLOCKING) {
127
+ const unlockingAssets = [];
128
+ for (let t = 0; t < underlyings.length; t++) {
129
+ const tokenPrice = tokenPriceById.get(underlyings[t]);
130
+ if (!tokenPrice)
131
+ continue;
132
+ const underlyingsAmountUnlocking = new bignumber_js_1.default(balances[t].toString())
133
+ .dividedBy(totalSupply)
134
+ .multipliedBy(new bignumber_js_1.default(withdrawBalance.toString()))
135
+ .dividedBy(Math.pow(10, tokenPrice.decimals))
136
+ .toNumber();
137
+ unlockingAssets.push((0, tokenPriceToAssetToken_1.default)(underlyings[t], underlyingsAmountUnlocking, portfolio_core_1.NetworkId.ethereum, tokenPrice));
138
+ }
139
+ unlockingLiquidities.push({
140
+ assets: unlockingAssets,
141
+ assetsValue: (0, portfolio_core_1.getUsdValueSum)(unlockingAssets.map((a) => a.value)),
142
+ rewardAssets: [],
143
+ rewardAssetsValue: null,
144
+ value: (0, portfolio_core_1.getUsdValueSum)(unlockingAssets.map((a) => a.value)),
145
+ yields: [],
146
+ });
147
+ }
148
+ }
149
+ }
150
+ if (farmAssets.length === 0 &&
151
+ stakeAssetsLocked.length === 0 &&
152
+ stakeAssetsUnlocking.length === 0 &&
153
+ unlockingLiquidities.length === 0)
154
+ return [];
155
+ const pspTokenPrice = tokenPriceById.get(constants_1.PSPToken.address);
156
+ if (pspTokenPrice && farmRewardBalance > BigInt(0)) {
157
+ rewardAssets.push((0, tokenPriceToAssetToken_1.default)(constants_1.PSPToken.address, new bignumber_js_1.default(farmRewardBalance.toString())
158
+ .dividedBy(Math.pow(10, pspTokenPrice.decimals))
159
+ .toNumber(), portfolio_core_1.NetworkId.ethereum, pspTokenPrice));
160
+ }
161
+ const elements = [];
162
+ if (farmAssets.length !== 0) {
163
+ const assetsValue = (0, portfolio_core_1.getUsdValueSum)(farmAssets.map((a) => a.value));
164
+ const rewardsValue = (0, portfolio_core_1.getUsdValueSum)(rewardAssets.map((a) => a.value));
165
+ elements.push({
166
+ type: portfolio_core_1.PortfolioElementType.liquidity,
167
+ networkId: portfolio_core_1.NetworkId.ethereum,
168
+ platformId: constants_1.platformId,
169
+ label: 'Staked',
170
+ name: 'Boosted Pool',
171
+ value: (0, portfolio_core_1.getUsdValueSum)(farmAssets.map((a) => a.value)),
172
+ data: {
173
+ liquidities: [
174
+ {
175
+ assets: farmAssets,
176
+ assetsValue: (0, portfolio_core_1.getUsdValueSum)(farmAssets.map((a) => a.value)),
177
+ rewardAssets,
178
+ rewardAssetsValue: (0, portfolio_core_1.getUsdValueSum)(rewardAssets.map((a) => a.value)),
179
+ value: (0, portfolio_core_1.getUsdValueSum)([assetsValue, rewardsValue]),
180
+ yields: [],
181
+ },
182
+ ],
183
+ },
184
+ });
185
+ }
186
+ if (stakeAssetsLocked.length !== 0) {
187
+ const assetsValue = (0, portfolio_core_1.getUsdValueSum)(stakeAssetsLocked.map((a) => a.value));
188
+ elements.push({
189
+ type: portfolio_core_1.PortfolioElementType.liquidity,
190
+ networkId: portfolio_core_1.NetworkId.ethereum,
191
+ platformId: constants_1.platformId,
192
+ label: 'Staked',
193
+ name: 'Basic Pool',
194
+ value: assetsValue,
195
+ data: {
196
+ liquidities: [
197
+ {
198
+ assets: stakeAssetsLocked,
199
+ assetsValue,
200
+ rewardAssets: [],
201
+ rewardAssetsValue: null,
202
+ value: assetsValue,
203
+ yields: [],
204
+ },
205
+ ],
206
+ },
207
+ });
208
+ }
209
+ if (unlockingLiquidities.length !== 0) {
210
+ elements.push({
211
+ type: portfolio_core_1.PortfolioElementType.liquidity,
212
+ networkId: portfolio_core_1.NetworkId.ethereum,
213
+ platformId: constants_1.platformId,
214
+ label: 'Farming',
215
+ name: 'Unlocking',
216
+ value: (0, portfolio_core_1.getUsdValueSum)(unlockingLiquidities.map((a) => a.value)),
217
+ data: {
218
+ liquidities: unlockingLiquidities,
219
+ },
220
+ });
221
+ }
222
+ return elements;
223
+ });
224
+ const fetcher = {
225
+ id: `${constants_1.platformId}-pools-fetcher`,
226
+ networkId: portfolio_core_1.NetworkId.ethereum,
227
+ executor,
228
+ };
229
+ exports.default = fetcher;
230
+ //# sourceMappingURL=poolsFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"poolsFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/poolsFetcher.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ const clients_1 = require("../../utils/clients");
19
19
  const erc20Abi_1 = require("../../utils/evm/erc20Abi");
20
20
  const tokenPriceToAssetToken_1 = __importDefault(require("../../utils/misc/tokenPriceToAssetToken"));
21
21
  const abis_1 = require("./abis");
22
+ const types_1 = require("./types");
22
23
  const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
23
24
  const client = (0, clients_1.getEvmClient)(portfolio_core_1.NetworkId.ethereum);
24
25
  const baseLockedContract = {
@@ -27,58 +28,66 @@ const executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* (
27
28
  args: [owner],
28
29
  };
29
30
  const baseUnlockingContract = {
30
- abi: abis_1.pendingWithdrawalsAbi,
31
+ abi: abis_1.userVsWithdrawalsAbi,
31
32
  functionName: 'userVsWithdrawals',
32
- args: [owner, BigInt(0)],
33
- // Here we might miss pending withdrawal if user has more than 1
34
- // We will need to find a way to know how many pending withdrawals exist for a user
35
33
  };
36
- const tokens = new Set();
37
34
  const lockedContracts = [];
38
35
  const unlockingContracts = [];
39
36
  for (const staker of constants_1.stakers) {
40
- tokens.add(staker.token);
41
- unlockingContracts.push(Object.assign(Object.assign({}, baseUnlockingContract), { address: staker.address }));
37
+ const nbrOfWithdrawContract = {
38
+ address: staker.address,
39
+ abi: abis_1.userVsNextIDAbi,
40
+ functionName: abis_1.userVsNextIDAbi[0].name,
41
+ args: [owner],
42
+ };
43
+ const nbrOfWithdraws = yield client.readContract(nbrOfWithdrawContract);
44
+ for (let i = BigInt(0); i < nbrOfWithdraws; i++) {
45
+ unlockingContracts.push(Object.assign(Object.assign({ address: staker.address }, baseUnlockingContract), { args: [owner, i] }));
46
+ }
42
47
  lockedContracts.push(Object.assign(Object.assign({}, baseLockedContract), { address: staker.address }));
43
48
  }
44
- const [tokensPrices, lockedBalancesRes, unlockingBalancesRes] = yield Promise.all([
45
- cache.getTokenPrices(Array.from(tokens), portfolio_core_1.NetworkId.ethereum),
49
+ const [lockedBalancesRes, unlockingBalancesRes] = yield Promise.all([
46
50
  client.multicall({ contracts: lockedContracts }),
47
51
  client.multicall({ contracts: unlockingContracts }),
48
52
  ]);
49
- const tokenPriceById = new Map();
50
- for (const tokenPrice of tokensPrices) {
51
- if (!tokenPrice)
52
- continue;
53
- tokenPriceById.set(tokenPrice.address, tokenPrice);
53
+ const lockedBalances = lockedBalancesRes.map((res) => res.status === 'failure' ? BigInt(0) : res.result);
54
+ const unlockingBalances = [];
55
+ const statuses = [];
56
+ for (let n = 0; n < unlockingBalancesRes.length; n++) {
57
+ const res = unlockingBalancesRes[n];
58
+ if (res.status === 'success') {
59
+ unlockingBalances.push(res.result[0]);
60
+ statuses.push(res.result[2]);
61
+ }
62
+ else {
63
+ unlockingBalances.push(BigInt(0));
64
+ statuses.push(undefined);
65
+ }
54
66
  }
55
- const lockedAssets = [];
67
+ if (!lockedBalances.some((value) => value !== BigInt(0)) &&
68
+ !unlockingBalances.some((value) => value !== BigInt(0)))
69
+ return [];
70
+ const pspTokenPrice = yield cache.getTokenPrice(constants_1.PSPToken.address, portfolio_core_1.NetworkId.ethereum);
71
+ if (!pspTokenPrice)
72
+ return [];
56
73
  const unlockingAssets = [];
57
- for (let i = 0; i < constants_1.stakers.length; i++) {
58
- const staker = constants_1.stakers[i];
59
- const lockedAmountRes = lockedBalancesRes[i];
60
- const unlockingAmountRes = unlockingBalancesRes[i];
61
- const tokenPrice = tokenPriceById.get(staker.token);
62
- if (!tokenPrice)
63
- continue;
64
- const lockedAmount = lockedAmountRes.status === 'failure'
65
- ? undefined
66
- : new bignumber_js_1.default(lockedAmountRes.result.toString())
67
- .dividedBy(Math.pow(10, tokenPrice.decimals))
68
- .toNumber();
69
- const unlockingAmount = unlockingAmountRes.status === 'failure'
70
- ? undefined
71
- : new bignumber_js_1.default(unlockingAmountRes.result[0].toString())
72
- .dividedBy(Math.pow(10, tokenPrice.decimals))
73
- .toNumber();
74
- if (lockedAmount) {
75
- lockedAssets.push((0, tokenPriceToAssetToken_1.default)(tokenPrice.address, lockedAmount, portfolio_core_1.NetworkId.ethereum, tokenPrice));
76
- }
77
- if (unlockingAmount) {
74
+ for (let j = 0; j < unlockingBalances.length; j++) {
75
+ const unlockingAmount = new bignumber_js_1.default(unlockingBalances[j].toString()).dividedBy(Math.pow(10, pspTokenPrice.decimals));
76
+ const status = statuses[j];
77
+ if (status &&
78
+ status === types_1.WithdrawStatus.UNLOCKING &&
79
+ unlockingAmount.isGreaterThan(0)) {
78
80
  // TODO : Unlocking date can be found here, not supported by our Data Structure for now.
79
81
  // const unlockEpoch = Number(unlockingAmountRes.result?.[1]);
80
82
  // const dateToDisplay = new Date(unlockEpoch * 1000).toLocaleDateString();
81
- unlockingAssets.push((0, tokenPriceToAssetToken_1.default)(tokenPrice.address, unlockingAmount, portfolio_core_1.NetworkId.ethereum, tokenPrice));
83
+ unlockingAssets.push((0, tokenPriceToAssetToken_1.default)(pspTokenPrice.address, unlockingAmount.toNumber(), portfolio_core_1.NetworkId.ethereum, pspTokenPrice));
84
+ }
85
+ }
86
+ const lockedAssets = [];
87
+ for (let i = 0; i < lockedBalances.length; i++) {
88
+ const lockedAmount = new bignumber_js_1.default(lockedBalances[i].toString()).dividedBy(Math.pow(10, pspTokenPrice.decimals));
89
+ if (lockedAmount.isGreaterThan(0)) {
90
+ lockedAssets.push((0, tokenPriceToAssetToken_1.default)(pspTokenPrice.address, lockedAmount.toNumber(), portfolio_core_1.NetworkId.ethereum, pspTokenPrice));
82
91
  }
83
92
  }
84
93
  const elements = [];