@sonarwatch/portfolio-plugins 0.8.46 → 0.8.48

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 (71) hide show
  1. package/CHANGELOG.md +164 -151
  2. package/package.json +2 -41
  3. package/src/index.js +8 -0
  4. package/src/index.js.map +1 -1
  5. package/src/plugins/balancer/{getPoolsV2Fetcher.js → getV2Fetcher.js} +1 -2
  6. package/src/plugins/balancer/getV2Fetcher.js.map +1 -0
  7. package/src/plugins/balancer/helpers/pools.js +21 -21
  8. package/src/plugins/balancer/index.js +6 -6
  9. package/src/plugins/balancer/index.js.map +1 -1
  10. package/src/plugins/balancer/{poolsJob.js → v2Job.js} +5 -8
  11. package/src/plugins/balancer/v2Job.js.map +1 -0
  12. package/src/plugins/paraswap/abis.d.ts +76 -0
  13. package/src/plugins/paraswap/abis.js +69 -0
  14. package/src/plugins/paraswap/abis.js.map +1 -0
  15. package/src/plugins/paraswap/bptFarmingFetcher.d.ts +3 -0
  16. package/src/plugins/paraswap/bptFarmingFetcher.js +106 -0
  17. package/src/plugins/paraswap/bptFarmingFetcher.js.map +1 -0
  18. package/src/plugins/paraswap/bptInfoJob.d.ts +3 -0
  19. package/src/plugins/paraswap/bptInfoJob.js +47 -0
  20. package/src/plugins/paraswap/bptInfoJob.js.map +1 -0
  21. package/src/plugins/paraswap/bptStakingFetcher.d.ts +3 -0
  22. package/src/plugins/paraswap/bptStakingFetcher.js +140 -0
  23. package/src/plugins/paraswap/bptStakingFetcher.js.map +1 -0
  24. package/src/plugins/paraswap/constants.d.ts +24 -0
  25. package/src/plugins/paraswap/constants.js +79 -0
  26. package/src/plugins/paraswap/constants.js.map +1 -0
  27. package/src/plugins/paraswap/index.d.ts +6 -0
  28. package/src/plugins/paraswap/index.js +19 -0
  29. package/src/plugins/paraswap/index.js.map +1 -0
  30. package/src/plugins/paraswap/stakingFetcher.d.ts +3 -0
  31. package/src/plugins/paraswap/stakingFetcher.js +114 -0
  32. package/src/plugins/paraswap/stakingFetcher.js.map +1 -0
  33. package/src/plugins/paraswap/types.d.ts +9 -0
  34. package/src/plugins/paraswap/types.js +3 -0
  35. package/src/plugins/paraswap/types.js.map +1 -0
  36. package/src/plugins/tokens/fetchers/evms/evmExecutorGenerator.js +1 -1
  37. package/src/plugins/tokens/fetchers/evms/evmExecutorGenerator.js.map +1 -1
  38. package/src/plugins/top-tokens/forcedAddresses.js +11 -0
  39. package/src/plugins/top-tokens/forcedAddresses.js.map +1 -1
  40. package/src/plugins/top-tokens/ignoredAddresses.js +1 -0
  41. package/src/plugins/top-tokens/ignoredAddresses.js.map +1 -1
  42. package/src/plugins/top-tokens/topTokensJob.js +6 -1
  43. package/src/plugins/top-tokens/topTokensJob.js.map +1 -1
  44. package/src/plugins/uniswap/abis.d.ts +201 -0
  45. package/src/plugins/uniswap/abis.js +132 -0
  46. package/src/plugins/uniswap/abis.js.map +1 -0
  47. package/src/plugins/uniswap/constants.d.ts +7 -0
  48. package/src/plugins/uniswap/constants.js +46 -0
  49. package/src/plugins/uniswap/constants.js.map +1 -0
  50. package/src/plugins/uniswap/getPositionsV3Fetcher.d.ts +3 -0
  51. package/src/plugins/uniswap/getPositionsV3Fetcher.js +318 -0
  52. package/src/plugins/uniswap/getPositionsV3Fetcher.js.map +1 -0
  53. package/src/plugins/uniswap/index.d.ts +6 -0
  54. package/src/plugins/uniswap/index.js +11 -0
  55. package/src/plugins/uniswap/index.js.map +1 -0
  56. package/src/plugins/uniswap/types.d.ts +55 -0
  57. package/src/plugins/uniswap/types.js +3 -0
  58. package/src/plugins/uniswap/types.js.map +1 -0
  59. package/src/utils/clients/constants.js +2 -0
  60. package/src/utils/clients/constants.js.map +1 -1
  61. package/src/utils/clients/getEvmClients.js +1 -0
  62. package/src/utils/clients/getEvmClients.js.map +1 -1
  63. package/src/utils/evm/erc20Abi.d.ts +1 -1
  64. package/src/utils/evm/erc20Abi.js +2 -2
  65. package/src/utils/evm/erc20Abi.js.map +1 -1
  66. package/src/utils/evm/getBalances.js +1 -1
  67. package/src/utils/evm/getBalances.js.map +1 -1
  68. package/src/plugins/balancer/getPoolsV2Fetcher.js.map +0 -1
  69. package/src/plugins/balancer/poolsJob.js.map +0 -1
  70. /package/src/plugins/balancer/{getPoolsV2Fetcher.d.ts → getV2Fetcher.d.ts} +0 -0
  71. /package/src/plugins/balancer/{poolsJob.d.ts → v2Job.d.ts} +0 -0
@@ -0,0 +1,114 @@
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 executor = (owner, cache) => __awaiter(void 0, void 0, void 0, function* () {
23
+ const client = (0, clients_1.getEvmClient)(portfolio_core_1.NetworkId.ethereum);
24
+ const baseLockedContract = {
25
+ abi: erc20Abi_1.balanceOfErc20ABI,
26
+ functionName: 'balanceOf',
27
+ args: [owner],
28
+ };
29
+ const baseUnlockingContract = {
30
+ abi: abis_1.pendingWithdrawalsAbi,
31
+ 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
+ };
36
+ const tokens = new Set();
37
+ const lockedContracts = [];
38
+ const unlockingContracts = [];
39
+ for (const staker of constants_1.stakers) {
40
+ tokens.add(staker.token);
41
+ unlockingContracts.push(Object.assign(Object.assign({}, baseUnlockingContract), { address: staker.address }));
42
+ lockedContracts.push(Object.assign(Object.assign({}, baseLockedContract), { address: staker.address }));
43
+ }
44
+ const [tokensPrices, lockedBalancesRes, unlockingBalancesRes] = yield Promise.all([
45
+ cache.getTokenPrices(Array.from(tokens), portfolio_core_1.NetworkId.ethereum),
46
+ client.multicall({ contracts: lockedContracts }),
47
+ client.multicall({ contracts: unlockingContracts }),
48
+ ]);
49
+ const tokenPriceById = new Map();
50
+ for (const tokenPrice of tokensPrices) {
51
+ if (!tokenPrice)
52
+ continue;
53
+ tokenPriceById.set(tokenPrice.address, tokenPrice);
54
+ }
55
+ const lockedAssets = [];
56
+ 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) {
78
+ // TODO : Unlocking date can be found here, not supported by our Data Structure for now.
79
+ // const unlockEpoch = Number(unlockingAmountRes.result?.[1]);
80
+ // const dateToDisplay = new Date(unlockEpoch * 1000).toLocaleDateString();
81
+ unlockingAssets.push((0, tokenPriceToAssetToken_1.default)(tokenPrice.address, unlockingAmount, portfolio_core_1.NetworkId.ethereum, tokenPrice));
82
+ }
83
+ }
84
+ const elements = [];
85
+ if (lockedAssets.length !== 0) {
86
+ elements.push({
87
+ type: portfolio_core_1.PortfolioElementType.multiple,
88
+ networkId: portfolio_core_1.NetworkId.ethereum,
89
+ platformId: constants_1.platformId,
90
+ label: 'Staked',
91
+ value: (0, portfolio_core_1.getUsdValueSum)(lockedAssets.map((a) => a.value)),
92
+ data: { assets: lockedAssets },
93
+ });
94
+ }
95
+ if (unlockingAssets.length !== 0) {
96
+ elements.push({
97
+ type: portfolio_core_1.PortfolioElementType.multiple,
98
+ networkId: portfolio_core_1.NetworkId.ethereum,
99
+ platformId: constants_1.platformId,
100
+ label: 'Staked',
101
+ name: 'Unlocking',
102
+ value: (0, portfolio_core_1.getUsdValueSum)(unlockingAssets.map((a) => a.value)),
103
+ data: { assets: unlockingAssets },
104
+ });
105
+ }
106
+ return elements;
107
+ });
108
+ const fetcher = {
109
+ id: `${constants_1.platformId}-staking-fetcher`,
110
+ networkId: portfolio_core_1.NetworkId.ethereum,
111
+ executor,
112
+ };
113
+ exports.default = fetcher;
114
+ //# sourceMappingURL=stakingFetcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingFetcher.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/stakingFetcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export type ContractInfo = {
2
+ chain: string;
3
+ address: `0x${string}`;
4
+ provider?: string;
5
+ };
6
+ export type PoolInfo = {
7
+ totalSupply: string;
8
+ balances: string[];
9
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/paraswap/types.ts"],"names":[],"mappings":""}
@@ -44,7 +44,7 @@ function getEvmFetcherExecutor(networkId, topTokens) {
44
44
  const tPricesRes = yield cache.getTokenPrices(addresses, networkId);
45
45
  const tokenPrices = tPricesRes.filter((tp) => tp !== undefined);
46
46
  const commonProps = {
47
- abi: erc20Abi_1.erc20ABI,
47
+ abi: erc20Abi_1.balanceOfErc20ABI,
48
48
  functionName: 'balanceOf',
49
49
  args: [(0, viem_1.getAddress)(owner)],
50
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"evmExecutorGenerator.js","sourceRoot":"","sources":["../../../../../../../../packages/plugins/src/plugins/tokens/fetchers/evms/evmExecutorGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evmExecutorGenerator.js","sourceRoot":"","sources":["../../../../../../../../packages/plugins/src/plugins/tokens/fetchers/evms/evmExecutorGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+DAOoC;AACpC,+CAAyC;AACzC,+BAAkC;AAGlC,uDAAyD;AACzD,6DAAmE;AACnE,2GAAmF;AAEnF,+CAAyE;AACzE,6DAAgE;AAEhE,MAAM,YAAY,GAAG,EAAE,CAAC;AACxB,SAAwB,qBAAqB,CAC3C,SAA2B,EAC3B,SAAkB;IAElB,OAAO,CAAO,KAAa,EAAE,KAAY,EAAE,EAAE;;QAC3C,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAE1B,qBAAqB;QACrB,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAY,SAAS,EAAE;YAC1D,MAAM,EAAE,4BAAgB;SACzB,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC3D,MAAM,kBAAkB,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE1E,eAAe;QACf,MAAM,YAAY,GAAyB,MAAA,CACzC,MAAM,KAAK,CAAC,OAAO,CAAW,SAAS,EAAE;YACvC,MAAM,EAAE,2BAAe;SACxB,CAAC,CACH,0CAAE,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QAC1B,IAAI,CAAC,YAAY;YAAE,OAAO,EAAE,CAAC;QAE7B,gDAAgD;QAChD,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAChD,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CACzB,CAAC;QACF,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACpE,MAAM,WAAW,GAAiB,UAAU,CAAC,MAAM,CACjD,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,SAAS,CACT,CAAC;QAElB,MAAM,WAAW,GAAG;YAClB,GAAG,EAAE,4BAAiB;YACtB,YAAY,EAAE,WAAW;YACzB,IAAI,EAAE,CAAC,IAAA,iBAAU,EAAC,KAAK,CAAC,CAAC;SACjB,CAAC;QACX,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAC/B,CAAC,EAAE,EAAE,EAAE,CACL,CAAC,gBACC,OAAO,EAAE,IAAA,iBAAU,EAAC,EAAE,CAAC,OAAO,CAAC,IAC5B,WAAW,CACL,CAAA,CACd,CAAC;QACF,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,SAAS,CAAC,CAAC;QACvC,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QAE3D,MAAM,kBAAkB,GAA0B,EAAE,CAAC;QACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC/C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS;gBAAE,SAAS;YAC/C,IAAI,CAAC,WAAW,CAAC,MAAM;gBAAE,SAAS;YAElC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;YAC/B,MAAM,MAAM,GAAG,IAAI,wBAAS,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;iBACxD,GAAG,CAAC,SAAA,EAAE,EAAI,UAAU,CAAC,QAAQ,CAAA,CAAC;iBAC9B,QAAQ,EAAE,CAAC;YACd,IAAI,MAAM,KAAK,CAAC;gBAAE,SAAS;YAE3B,MAAM,KAAK,GAAG,IAAA,gCAAsB,EAClC,OAAO,EACP,MAAM,EACN,SAAS,EACT,UAAU,CACX,CAAC;YACF,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;QACD,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAE/C,MAAM,OAAO,GAA6B;YACxC,IAAI,EAAE,qCAAoB,CAAC,QAAQ;YACnC,SAAS;YACT,UAAU,EAAE,gCAAoB,CAAC,EAAE;YACnC,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE,IAAA,+BAAc,EAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAI,EAAE;gBACJ,MAAM,EAAE,kBAAkB;aAC3B;SACF,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC,CAAA,CAAC;AACJ,CAAC;AAjFD,wCAiFC"}
@@ -46,6 +46,17 @@ const forcedAddresses = new Map([
46
46
  '0x49D5c2BdFfac6CE2BFdB6640F4F80f226bc10bAB', // weth.e
47
47
  ],
48
48
  ],
49
+ [
50
+ portfolio_core_1.NetworkId.bnb,
51
+ [
52
+ '0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d',
53
+ '0x55d398326f99059ff775485246999027b3197955',
54
+ '0x1af3f329e8be154074d8769d1ffa4ee058b1dbc3',
55
+ '0xe9e7cea3dedca5984780bafc599bd69add087d56',
56
+ '0x2170ed0880ac9a755fd29b2688956bd959f933f8',
57
+ '0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c', // BTCB
58
+ ],
59
+ ],
49
60
  ]);
50
61
  exports.default = forcedAddresses;
51
62
  //# sourceMappingURL=forcedAddresses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"forcedAddresses.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/forcedAddresses.ts"],"names":[],"mappings":";;AAAA,+DAAsE;AAEtE,MAAM,eAAe,GAAiC,IAAI,GAAG,CAAC;IAC5D;QACE,0BAAS,CAAC,QAAQ;QAClB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,gBAAgB;SAC/D;KACF;IACD;QACE,0BAAS,CAAC,OAAO;QACjB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,gBAAgB;SAC/D;KACF;IACD;QACE,0BAAS,CAAC,SAAS;QACnB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,SAAS;SACxD;KACF;CACF,CAAC,CAAC;AACH,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"forcedAddresses.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/forcedAddresses.ts"],"names":[],"mappings":";;AAAA,+DAAsE;AAEtE,MAAM,eAAe,GAAiC,IAAI,GAAG,CAAC;IAC5D;QACE,0BAAS,CAAC,QAAQ;QAClB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,gBAAgB;SAC/D;KACF;IACD;QACE,0BAAS,CAAC,OAAO;QACjB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,gBAAgB;SAC/D;KACF;IACD;QACE,0BAAS,CAAC,SAAS;QACnB;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,SAAS;SACxD;KACF;IACD;QACE,0BAAS,CAAC,GAAG;QACb;YACE,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C;YAC5C,4CAA4C,EAAE,OAAO;SACtD;KACF;CACF,CAAC,CAAC;AACH,kBAAe,eAAe,CAAC"}
@@ -11,6 +11,7 @@ const ignoredAddresses = new Map([
11
11
  ],
12
12
  [portfolio_core_1.NetworkId.polygon, []],
13
13
  [portfolio_core_1.NetworkId.avalanche, []],
14
+ [portfolio_core_1.NetworkId.bnb, []],
14
15
  ]);
15
16
  exports.default = ignoredAddresses;
16
17
  //# sourceMappingURL=ignoredAddresses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ignoredAddresses.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/ignoredAddresses.ts"],"names":[],"mappings":";;AAAA,+DAAsE;AAEtE,MAAM,gBAAgB,GAAiC,IAAI,GAAG,CAAC;IAC7D;QACE,0BAAS,CAAC,QAAQ;QAClB;YACE,4CAA4C;YAC5C,4CAA4C,EAAE,eAAe;SAC9D;KACF;IACD,CAAC,0BAAS,CAAC,OAAO,EAAE,EAAE,CAAC;IACvB,CAAC,0BAAS,CAAC,SAAS,EAAE,EAAE,CAAC;CAC1B,CAAC,CAAC;AACH,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"ignoredAddresses.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/ignoredAddresses.ts"],"names":[],"mappings":";;AAAA,+DAAsE;AAEtE,MAAM,gBAAgB,GAAiC,IAAI,GAAG,CAAC;IAC7D;QACE,0BAAS,CAAC,QAAQ;QAClB;YACE,4CAA4C;YAC5C,4CAA4C,EAAE,eAAe;SAC9D;KACF;IACD,CAAC,0BAAS,CAAC,OAAO,EAAE,EAAE,CAAC;IACvB,CAAC,0BAAS,CAAC,SAAS,EAAE,EAAE,CAAC;IACzB,CAAC,0BAAS,CAAC,GAAG,EAAE,EAAE,CAAC;CACpB,CAAC,CAAC;AACH,kBAAe,gBAAgB,CAAC"}
@@ -18,7 +18,12 @@ const constants_1 = require("./constants");
18
18
  const constants_2 = require("../../utils/coingecko/constants");
19
19
  const sleep_1 = __importDefault(require("../../utils/misc/sleep"));
20
20
  const getTopAddresses_1 = __importDefault(require("./getTopAddresses"));
21
- const networkIds = [portfolio_core_1.NetworkId.avalanche, portfolio_core_1.NetworkId.polygon, portfolio_core_1.NetworkId.ethereum];
21
+ const networkIds = [
22
+ portfolio_core_1.NetworkId.avalanche,
23
+ portfolio_core_1.NetworkId.polygon,
24
+ portfolio_core_1.NetworkId.ethereum,
25
+ portfolio_core_1.NetworkId.bnb,
26
+ ];
22
27
  const executor = (cache) => __awaiter(void 0, void 0, void 0, function* () {
23
28
  const coingeckoCoinsListRes = yield axios_1.default
24
29
  .get(constants_2.coingeckoCoinsListUrl, {
@@ -1 +1 @@
1
- {"version":3,"file":"topTokensJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/topTokensJob.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kDAA6C;AAC7C,+DAAuD;AAGvD,2CAA8C;AAC9C,+DAAwE;AAExE,mEAA2C;AAC3C,wEAAgD;AAEhD,MAAM,UAAU,GAAG,CAAC,0BAAS,CAAC,SAAS,EAAE,0BAAS,CAAC,OAAO,EAAE,0BAAS,CAAC,QAAQ,CAAC,CAAC;AAEhF,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,qBAAqB,GACzB,MAAM,eAAK;SACR,GAAG,CAAC,iCAAqB,EAAE;QAC1B,MAAM,EAAE;YACN,gBAAgB,EAAE,MAAM;SACzB;QACD,OAAO,EAAE,IAAI;KACd,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;IACnB,IAAI,CAAC,qBAAqB,IAAI,CAAC,qBAAqB,CAAC,IAAI;QAAE,OAAO;IAElE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI;YACF,MAAM,SAAS,GAAG,MAAM,IAAA,yBAAe,EACrC,SAAS,EACT,qBAAqB,CAAC,IAAI,CAC3B,CAAC;YACF,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE;gBACxC,MAAM,EAAE,2BAAe;aACxB,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,EAAE;SACH;KACF;IACD,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;AACrB,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,YAAY;IAChB,QAAQ;CACT,CAAC;AACF,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"topTokensJob.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/top-tokens/topTokensJob.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kDAA6C;AAC7C,+DAAuD;AAGvD,2CAA8C;AAC9C,+DAAwE;AAExE,mEAA2C;AAC3C,wEAAgD;AAEhD,MAAM,UAAU,GAAG;IACjB,0BAAS,CAAC,SAAS;IACnB,0BAAS,CAAC,OAAO;IACjB,0BAAS,CAAC,QAAQ;IAClB,0BAAS,CAAC,GAAG;CACd,CAAC;AAEF,MAAM,QAAQ,GAAgB,CAAO,KAAY,EAAE,EAAE;IACnD,MAAM,qBAAqB,GACzB,MAAM,eAAK;SACR,GAAG,CAAC,iCAAqB,EAAE;QAC1B,MAAM,EAAE;YACN,gBAAgB,EAAE,MAAM;SACzB;QACD,OAAO,EAAE,IAAI;KACd,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;IACnB,IAAI,CAAC,qBAAqB,IAAI,CAAC,qBAAqB,CAAC,IAAI;QAAE,OAAO;IAElE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC1C,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI;YACF,MAAM,SAAS,GAAG,MAAM,IAAA,yBAAe,EACrC,SAAS,EACT,qBAAqB,CAAC,IAAI,CAC3B,CAAC;YACF,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE;gBACxC,MAAM,EAAE,2BAAe;aACxB,CAAC,CAAC;SACJ;QAAC,OAAO,KAAK,EAAE;YACd,EAAE;SACH;KACF;IACD,MAAM,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;AACrB,CAAC,CAAA,CAAC;AAEF,MAAM,GAAG,GAAQ;IACf,EAAE,EAAE,YAAY;IAChB,QAAQ;CACT,CAAC;AACF,kBAAe,GAAG,CAAC"}
@@ -0,0 +1,201 @@
1
+ export declare const tokenOfOwnerByIndexAbi: readonly [{
2
+ readonly inputs: readonly [{
3
+ readonly internalType: "address";
4
+ readonly name: "owner";
5
+ readonly type: "address";
6
+ }, {
7
+ readonly internalType: "uint256";
8
+ readonly name: "index";
9
+ readonly type: "uint256";
10
+ }];
11
+ readonly name: "tokenOfOwnerByIndex";
12
+ readonly outputs: readonly [{
13
+ readonly internalType: "uint256";
14
+ readonly name: "";
15
+ readonly type: "uint256";
16
+ }];
17
+ readonly stateMutability: "view";
18
+ readonly type: "function";
19
+ }];
20
+ export declare const positionsAbi: readonly [{
21
+ readonly inputs: readonly [{
22
+ readonly internalType: "uint256";
23
+ readonly name: "tokenId";
24
+ readonly type: "uint256";
25
+ }];
26
+ readonly name: "positions";
27
+ readonly outputs: readonly [{
28
+ readonly internalType: "uint96";
29
+ readonly name: "nonce";
30
+ readonly type: "uint96";
31
+ }, {
32
+ readonly internalType: "address";
33
+ readonly name: "operator";
34
+ readonly type: "address";
35
+ }, {
36
+ readonly internalType: "address";
37
+ readonly name: "token0";
38
+ readonly type: "address";
39
+ }, {
40
+ readonly internalType: "address";
41
+ readonly name: "token1";
42
+ readonly type: "address";
43
+ }, {
44
+ readonly internalType: "uint24";
45
+ readonly name: "fee";
46
+ readonly type: "uint24";
47
+ }, {
48
+ readonly internalType: "int24";
49
+ readonly name: "tickLower";
50
+ readonly type: "int24";
51
+ }, {
52
+ readonly internalType: "int24";
53
+ readonly name: "tickUpper";
54
+ readonly type: "int24";
55
+ }, {
56
+ readonly internalType: "uint128";
57
+ readonly name: "liquidity";
58
+ readonly type: "uint128";
59
+ }, {
60
+ readonly internalType: "uint256";
61
+ readonly name: "feeGrowthInside0LastX128";
62
+ readonly type: "uint256";
63
+ }, {
64
+ readonly internalType: "uint256";
65
+ readonly name: "feeGrowthInside1LastX128";
66
+ readonly type: "uint256";
67
+ }, {
68
+ readonly internalType: "uint128";
69
+ readonly name: "tokensOwed0";
70
+ readonly type: "uint128";
71
+ }, {
72
+ readonly internalType: "uint128";
73
+ readonly name: "tokensOwed1";
74
+ readonly type: "uint128";
75
+ }];
76
+ readonly stateMutability: "view";
77
+ readonly type: "function";
78
+ }];
79
+ export declare const getPoolsAbi: readonly [{
80
+ readonly inputs: readonly [{
81
+ readonly internalType: "address";
82
+ readonly name: "";
83
+ readonly type: "address";
84
+ }, {
85
+ readonly internalType: "address";
86
+ readonly name: "";
87
+ readonly type: "address";
88
+ }, {
89
+ readonly internalType: "uint24";
90
+ readonly name: "";
91
+ readonly type: "uint24";
92
+ }];
93
+ readonly name: "getPool";
94
+ readonly outputs: readonly [{
95
+ readonly internalType: "address";
96
+ readonly name: "";
97
+ readonly type: "address";
98
+ }];
99
+ readonly stateMutability: "view";
100
+ readonly type: "function";
101
+ }];
102
+ export declare const slot0Abi: readonly [{
103
+ readonly inputs: readonly [];
104
+ readonly name: "slot0";
105
+ readonly outputs: readonly [{
106
+ readonly internalType: "uint160";
107
+ readonly name: "sqrtPriceX96";
108
+ readonly type: "uint160";
109
+ }, {
110
+ readonly internalType: "int24";
111
+ readonly name: "tick";
112
+ readonly type: "int24";
113
+ }, {
114
+ readonly internalType: "uint16";
115
+ readonly name: "observationIndex";
116
+ readonly type: "uint16";
117
+ }, {
118
+ readonly internalType: "uint16";
119
+ readonly name: "observationCardinality";
120
+ readonly type: "uint16";
121
+ }, {
122
+ readonly internalType: "uint16";
123
+ readonly name: "observationCardinalityNext";
124
+ readonly type: "uint16";
125
+ }, {
126
+ readonly internalType: "uint8";
127
+ readonly name: "feeProtocol";
128
+ readonly type: "uint8";
129
+ }, {
130
+ readonly internalType: "bool";
131
+ readonly name: "unlocked";
132
+ readonly type: "bool";
133
+ }];
134
+ readonly stateMutability: "view";
135
+ readonly type: "function";
136
+ }];
137
+ export declare const ticksAbi: readonly [{
138
+ readonly inputs: readonly [{
139
+ readonly internalType: "int24";
140
+ readonly name: "";
141
+ readonly type: "int24";
142
+ }];
143
+ readonly name: "ticks";
144
+ readonly outputs: readonly [{
145
+ readonly internalType: "uint128";
146
+ readonly name: "liquidityGross";
147
+ readonly type: "uint128";
148
+ }, {
149
+ readonly internalType: "int128";
150
+ readonly name: "liquidityNet";
151
+ readonly type: "int128";
152
+ }, {
153
+ readonly internalType: "uint256";
154
+ readonly name: "feeGrowthOutside0X128";
155
+ readonly type: "uint256";
156
+ }, {
157
+ readonly internalType: "uint256";
158
+ readonly name: "feeGrowthOutside1X128";
159
+ readonly type: "uint256";
160
+ }, {
161
+ readonly internalType: "int56";
162
+ readonly name: "tickCumulativeOutside";
163
+ readonly type: "int56";
164
+ }, {
165
+ readonly internalType: "uint160";
166
+ readonly name: "secondsPerLiquidityOutsideX128";
167
+ readonly type: "uint160";
168
+ }, {
169
+ readonly internalType: "uint32";
170
+ readonly name: "secondsOutside";
171
+ readonly type: "uint32";
172
+ }, {
173
+ readonly internalType: "bool";
174
+ readonly name: "initialized";
175
+ readonly type: "bool";
176
+ }];
177
+ readonly stateMutability: "view";
178
+ readonly type: "function";
179
+ }];
180
+ export declare const feeGrowthGlobal0X128Abi: readonly [{
181
+ readonly inputs: readonly [];
182
+ readonly name: "feeGrowthGlobal0X128";
183
+ readonly outputs: readonly [{
184
+ readonly internalType: "uint256";
185
+ readonly name: "";
186
+ readonly type: "uint256";
187
+ }];
188
+ readonly stateMutability: "view";
189
+ readonly type: "function";
190
+ }];
191
+ export declare const feeGrowthGlobal1X128Abi: readonly [{
192
+ readonly inputs: readonly [];
193
+ readonly name: "feeGrowthGlobal1X128";
194
+ readonly outputs: readonly [{
195
+ readonly internalType: "uint256";
196
+ readonly name: "";
197
+ readonly type: "uint256";
198
+ }];
199
+ readonly stateMutability: "view";
200
+ readonly type: "function";
201
+ }];
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.feeGrowthGlobal1X128Abi = exports.feeGrowthGlobal0X128Abi = exports.ticksAbi = exports.slot0Abi = exports.getPoolsAbi = exports.positionsAbi = exports.tokenOfOwnerByIndexAbi = void 0;
4
+ exports.tokenOfOwnerByIndexAbi = [
5
+ {
6
+ inputs: [
7
+ { internalType: 'address', name: 'owner', type: 'address' },
8
+ { internalType: 'uint256', name: 'index', type: 'uint256' },
9
+ ],
10
+ name: 'tokenOfOwnerByIndex',
11
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
12
+ stateMutability: 'view',
13
+ type: 'function',
14
+ },
15
+ ];
16
+ exports.positionsAbi = [
17
+ {
18
+ inputs: [{ internalType: 'uint256', name: 'tokenId', type: 'uint256' }],
19
+ name: 'positions',
20
+ outputs: [
21
+ { internalType: 'uint96', name: 'nonce', type: 'uint96' },
22
+ { internalType: 'address', name: 'operator', type: 'address' },
23
+ { internalType: 'address', name: 'token0', type: 'address' },
24
+ { internalType: 'address', name: 'token1', type: 'address' },
25
+ { internalType: 'uint24', name: 'fee', type: 'uint24' },
26
+ { internalType: 'int24', name: 'tickLower', type: 'int24' },
27
+ { internalType: 'int24', name: 'tickUpper', type: 'int24' },
28
+ { internalType: 'uint128', name: 'liquidity', type: 'uint128' },
29
+ {
30
+ internalType: 'uint256',
31
+ name: 'feeGrowthInside0LastX128',
32
+ type: 'uint256',
33
+ },
34
+ {
35
+ internalType: 'uint256',
36
+ name: 'feeGrowthInside1LastX128',
37
+ type: 'uint256',
38
+ },
39
+ { internalType: 'uint128', name: 'tokensOwed0', type: 'uint128' },
40
+ { internalType: 'uint128', name: 'tokensOwed1', type: 'uint128' },
41
+ ],
42
+ stateMutability: 'view',
43
+ type: 'function',
44
+ },
45
+ ];
46
+ exports.getPoolsAbi = [
47
+ {
48
+ inputs: [
49
+ { internalType: 'address', name: '', type: 'address' },
50
+ { internalType: 'address', name: '', type: 'address' },
51
+ { internalType: 'uint24', name: '', type: 'uint24' },
52
+ ],
53
+ name: 'getPool',
54
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
55
+ stateMutability: 'view',
56
+ type: 'function',
57
+ },
58
+ ];
59
+ exports.slot0Abi = [
60
+ {
61
+ inputs: [],
62
+ name: 'slot0',
63
+ outputs: [
64
+ { internalType: 'uint160', name: 'sqrtPriceX96', type: 'uint160' },
65
+ { internalType: 'int24', name: 'tick', type: 'int24' },
66
+ { internalType: 'uint16', name: 'observationIndex', type: 'uint16' },
67
+ {
68
+ internalType: 'uint16',
69
+ name: 'observationCardinality',
70
+ type: 'uint16',
71
+ },
72
+ {
73
+ internalType: 'uint16',
74
+ name: 'observationCardinalityNext',
75
+ type: 'uint16',
76
+ },
77
+ { internalType: 'uint8', name: 'feeProtocol', type: 'uint8' },
78
+ { internalType: 'bool', name: 'unlocked', type: 'bool' },
79
+ ],
80
+ stateMutability: 'view',
81
+ type: 'function',
82
+ },
83
+ ];
84
+ exports.ticksAbi = [
85
+ {
86
+ inputs: [{ internalType: 'int24', name: '', type: 'int24' }],
87
+ name: 'ticks',
88
+ outputs: [
89
+ { internalType: 'uint128', name: 'liquidityGross', type: 'uint128' },
90
+ { internalType: 'int128', name: 'liquidityNet', type: 'int128' },
91
+ {
92
+ internalType: 'uint256',
93
+ name: 'feeGrowthOutside0X128',
94
+ type: 'uint256',
95
+ },
96
+ {
97
+ internalType: 'uint256',
98
+ name: 'feeGrowthOutside1X128',
99
+ type: 'uint256',
100
+ },
101
+ { internalType: 'int56', name: 'tickCumulativeOutside', type: 'int56' },
102
+ {
103
+ internalType: 'uint160',
104
+ name: 'secondsPerLiquidityOutsideX128',
105
+ type: 'uint160',
106
+ },
107
+ { internalType: 'uint32', name: 'secondsOutside', type: 'uint32' },
108
+ { internalType: 'bool', name: 'initialized', type: 'bool' },
109
+ ],
110
+ stateMutability: 'view',
111
+ type: 'function',
112
+ },
113
+ ];
114
+ exports.feeGrowthGlobal0X128Abi = [
115
+ {
116
+ inputs: [],
117
+ name: 'feeGrowthGlobal0X128',
118
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
119
+ stateMutability: 'view',
120
+ type: 'function',
121
+ },
122
+ ];
123
+ exports.feeGrowthGlobal1X128Abi = [
124
+ {
125
+ inputs: [],
126
+ name: 'feeGrowthGlobal1X128',
127
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
128
+ stateMutability: 'view',
129
+ type: 'function',
130
+ },
131
+ ];
132
+ //# sourceMappingURL=abis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abis.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/uniswap/abis.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Platform } from '@sonarwatch/portfolio-core';
2
+ import { UniswapConfig } from './types';
3
+ export declare const platformId = "uniswap";
4
+ export declare const uniswapPlatform: Platform;
5
+ export declare const poolsPrefix = "uniswap-v3";
6
+ export declare const poolsKey = "poolsInfo";
7
+ export declare const uniswapNetworksConfigs: UniswapConfig[];
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.uniswapNetworksConfigs = exports.poolsKey = exports.poolsPrefix = exports.uniswapPlatform = exports.platformId = void 0;
4
+ const portfolio_core_1 = require("@sonarwatch/portfolio-core");
5
+ exports.platformId = 'uniswap';
6
+ exports.uniswapPlatform = {
7
+ id: exports.platformId,
8
+ name: 'Uniswap',
9
+ image: 'https://sonar.watch/img/platforms/uniswap.png',
10
+ defiLlamaId: 'uniswap',
11
+ };
12
+ exports.poolsPrefix = 'uniswap-v3';
13
+ exports.poolsKey = 'poolsInfo';
14
+ exports.uniswapNetworksConfigs = [
15
+ {
16
+ networkId: portfolio_core_1.NetworkId.ethereum,
17
+ factory: '0x1f98431c8ad98523631ae4a59f267346ea31f984',
18
+ positionManager: '0xc36442b4a4522e871399cd717abdd847ab11fe88',
19
+ },
20
+ {
21
+ networkId: portfolio_core_1.NetworkId.polygon,
22
+ factory: '0x1f98431c8ad98523631ae4a59f267346ea31f984',
23
+ positionManager: '0xc36442b4a4522e871399cd717abdd847ab11fe88',
24
+ },
25
+ // {
26
+ // networkId: NetworkId.arbitrum,
27
+ // factory: '0x1f98431c8ad98523631ae4a59f267346ea31f984',
28
+ // positionManager: '0xc36442b4a4522e871399cd717abdd847ab11fe88',
29
+ // },
30
+ // {
31
+ // networkId: NetworkId.base,
32
+ // factory: '0x33128a8fC17869897dcE68Ed026d694621f6FDfD',
33
+ // positionManager: '0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1',
34
+ // },
35
+ // {
36
+ // networkId: NetworkId.bsc,
37
+ // factory: '0xdB1d10011AD0Ff90774D0C6Bb92e5C5c8b4461F7',
38
+ // positionManager: '0x7b8A01B39D58278b5DE7e48c8449c9f4F5170613',
39
+ // },
40
+ // {
41
+ // networkId: NetworkId.optimism,
42
+ // factory: '0x1f98431c8ad98523631ae4a59f267346ea31f984',
43
+ // positionManager: '0xc36442b4a4522e871399cd717abdd847ab11fe88',
44
+ // },
45
+ ];
46
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../packages/plugins/src/plugins/uniswap/constants.ts"],"names":[],"mappings":";;;AAAA,+DAAiE;AAGpD,QAAA,UAAU,GAAG,SAAS,CAAC;AACvB,QAAA,eAAe,GAAa;IACvC,EAAE,EAAE,kBAAU;IACd,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,+CAA+C;IACtD,WAAW,EAAE,SAAS;CACvB,CAAC;AAEW,QAAA,WAAW,GAAG,YAAY,CAAC;AAC3B,QAAA,QAAQ,GAAG,WAAW,CAAC;AAEvB,QAAA,sBAAsB,GAAoB;IACrD;QACE,SAAS,EAAE,0BAAS,CAAC,QAAQ;QAC7B,OAAO,EAAE,4CAA4C;QACrD,eAAe,EAAE,4CAA4C;KAC9D;IACD;QACE,SAAS,EAAE,0BAAS,CAAC,OAAO;QAC5B,OAAO,EAAE,4CAA4C;QACrD,eAAe,EAAE,4CAA4C;KAC9D;IACD,IAAI;IACJ,mCAAmC;IACnC,2DAA2D;IAC3D,mEAAmE;IACnE,KAAK;IACL,IAAI;IACJ,+BAA+B;IAC/B,2DAA2D;IAC3D,mEAAmE;IACnE,KAAK;IACL,IAAI;IACJ,8BAA8B;IAC9B,2DAA2D;IAC3D,mEAAmE;IACnE,KAAK;IACL,IAAI;IACJ,mCAAmC;IACnC,2DAA2D;IAC3D,mEAAmE;IACnE,KAAK;CACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Fetcher } from '../../Fetcher';
2
+ import { UniswapConfig } from './types';
3
+ export declare function getPositionsV3Fetcher(config: UniswapConfig): Fetcher;