@merkl/api 0.10.199 → 0.10.201
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/src/eden/index.d.ts +2 -6398
- package/dist/src/errors/HttpError.d.ts +5 -0
- package/dist/src/errors/HttpError.js +6 -0
- package/dist/src/errors/NotFound.error.d.ts +4 -0
- package/dist/src/errors/NotFound.error.js +5 -0
- package/dist/src/index.d.ts +1 -2464
- package/dist/src/index.js +56 -7
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicData.js +15 -22
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/factoryFinder.js +1 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.d.ts +3 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.js +8 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/GammaProcessor.d.ts +43 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/GammaProcessor.js +63 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/GenericProcessor.d.ts +3 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/GenericProcessor.js +3 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/NoLinkVaultProcessor.d.ts +36 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/NoLinkVaultProcessor.js +51 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/StakingProcessor.d.ts +0 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/StakingProcessor.js +15 -7
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/processorMapping.js +4 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesPrices.d.ts +1 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesPrices.js +13 -572
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1.d.ts +2 -21
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1.js +197 -1174
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound2.d.ts +1 -5
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound2.js +11 -634
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound3.d.ts +1 -4
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound3.js +10 -380
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound4.d.ts +3 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound4.js +11 -312
- package/dist/src/libs/campaigns/campaignTypes/EulerDynamicData.js +8 -8
- package/dist/src/libs/campaigns/campaignTypes/RadiantDynamicData.js +3 -4
- package/dist/src/libs/campaigns/campaignsDynamicData.js +0 -5
- package/dist/src/modules/v4/accounting/accounting.controller.js +1 -1
- package/dist/src/modules/v4/apr/apr.model.d.ts +26 -0
- package/dist/src/modules/v4/apr/apr.model.js +15 -1
- package/dist/src/modules/v4/blacklist/blacklist.controller.js +1 -1
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +6 -4
- package/dist/src/modules/v4/campaign/campaign.controller.js +14 -4
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +51 -5
- package/dist/src/modules/v4/campaign/campaign.model.js +48 -13
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +2 -2
- package/dist/src/modules/v4/campaign/campaign.repository.js +10 -2
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +2 -2
- package/dist/src/modules/v4/chain/chain.controller.d.ts +2 -2
- package/dist/src/modules/v4/chain/chain.controller.js +7 -2
- package/dist/src/modules/v4/chain/chain.model.d.ts +6 -1
- package/dist/src/modules/v4/chain/chain.model.js +8 -1
- package/dist/src/modules/v4/chain/chain.repository.js +1 -1
- package/dist/src/modules/v4/claims/claims.controller.js +1 -1
- package/dist/src/modules/v4/dynamicData/dynamicData.controller.js +4 -1
- package/dist/src/modules/v4/enso/enso.model.d.ts +1 -1
- package/dist/src/modules/v4/enso/enso.model.js +2 -1
- package/dist/src/modules/v4/enso/enso.service.d.ts +0 -1
- package/dist/src/modules/v4/enso/enso.service.js +4 -4
- package/dist/src/modules/v4/interaction/interaction.controller.d.ts +26 -17
- package/dist/src/modules/v4/interaction/interaction.controller.js +19 -28
- package/dist/src/modules/v4/interaction/interaction.model.d.ts +17 -5
- package/dist/src/modules/v4/interaction/interaction.model.js +3 -3
- package/dist/src/modules/v4/interaction/interaction.service.d.ts +18 -3
- package/dist/src/modules/v4/interaction/interaction.service.js +89 -11
- package/dist/src/modules/v4/kyberzap/kyberzap.model.d.ts +72 -0
- package/dist/src/modules/v4/kyberzap/kyberzap.model.js +79 -0
- package/dist/src/modules/v4/kyberzap/kyberzap.service.d.ts +15 -0
- package/dist/src/modules/v4/kyberzap/kyberzap.service.js +84 -0
- package/dist/src/modules/v4/liquidity/liquidity.controller.js +1 -1
- package/dist/src/modules/v4/merklRoot/merklRoot.controller.js +1 -1
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +224 -213
- package/dist/src/modules/v4/opportunity/opportunity.controller.js +39 -10
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +252 -22
- package/dist/src/modules/v4/opportunity/opportunity.model.js +58 -15
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +11 -11
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +12 -232
- package/dist/src/modules/v4/opportunity/opportunity.service.js +0 -32
- package/dist/src/modules/v4/price/price.controller.js +1 -1
- package/dist/src/modules/v4/protocol/protocol.controller.d.ts +23 -24
- package/dist/src/modules/v4/protocol/protocol.controller.js +15 -9
- package/dist/src/modules/v4/protocol/protocol.model.d.ts +13 -1
- package/dist/src/modules/v4/protocol/protocol.model.js +12 -8
- package/dist/src/modules/v4/reward/reward.controller.js +1 -1
- package/dist/src/modules/v4/reward/reward.model.d.ts +44 -1
- package/dist/src/modules/v4/reward/reward.model.js +15 -0
- package/dist/src/modules/v4/reward/reward.repository.d.ts +2 -2
- package/dist/src/modules/v4/reward/reward.service.d.ts +11 -11
- package/dist/src/modules/v4/reward/reward.service.js +1 -1
- package/dist/src/modules/v4/router.d.ts +289 -268
- package/dist/src/modules/v4/status/status.controller.js +2 -3
- package/dist/src/modules/v4/status/status.model.d.ts +12 -0
- package/dist/src/modules/v4/status/status.model.js +12 -0
- package/dist/src/modules/v4/token/token.controller.d.ts +4 -4
- package/dist/src/modules/v4/token/token.controller.js +1 -1
- package/dist/src/modules/v4/token/token.model.d.ts +12 -0
- package/dist/src/modules/v4/token/token.model.js +12 -0
- package/dist/src/modules/v4/token/token.repository.d.ts +2 -2
- package/dist/src/modules/v4/token/token.service.d.ts +7 -7
- package/dist/src/modules/v4/tvl/tvl.model.d.ts +24 -0
- package/dist/src/modules/v4/tvl/tvl.model.js +15 -1
- package/dist/src/modules/v4/uniswapV4/uniswapV4.controller.d.ts +1 -1
- package/dist/src/modules/v4/uniswapV4/uniswapV4.controller.js +9 -8
- package/dist/src/modules/v4/user/user.controller.d.ts +4 -4
- package/dist/src/modules/v4/user/user.controller.js +20 -17
- package/dist/src/modules/v4/user/user.model.d.ts +30 -0
- package/dist/src/modules/v4/user/user.model.js +27 -0
- package/dist/src/modules/v4/zyfi/zyfi.model.d.ts +45 -0
- package/dist/src/modules/v4/zyfi/zyfi.model.js +1 -0
- package/dist/src/modules/v4/zyfi/zyfi.service.d.ts +30 -0
- package/dist/src/modules/v4/zyfi/zyfi.service.js +35 -0
- package/dist/src/plugins/error-handling.plugin.d.ts +2 -2
- package/dist/src/plugins/error-handling.plugin.js +9 -3
- package/dist/src/plugins/logger.plugin.js +1 -20
- package/dist/src/routes/v1/allowances.d.ts +1 -1
- package/dist/src/routes/v1/allowances.js +1 -1
- package/dist/src/routes/v1/balances.d.ts +1 -1
- package/dist/src/routes/v1/balances.js +1 -1
- package/dist/src/routes/v1/prices.d.ts +1 -1
- package/dist/src/routes/v1/prices.js +1 -1
- package/dist/src/routes/v1/router.d.ts +102 -0
- package/dist/src/routes/v1/router.js +6 -0
- package/dist/src/routes/v1/tokens.d.ts +1 -1
- package/dist/src/routes/v1/tokens.js +1 -1
- package/dist/src/routes/v2/merkl.d.ts +5 -5
- package/dist/src/routes/v2/merkl.js +1 -1
- package/dist/src/routes/v2/router.d.ts +46 -0
- package/dist/src/routes/v2/router.js +3 -0
- package/dist/src/routes/v3/app.d.ts +1 -1
- package/dist/src/routes/v3/app.js +1 -1
- package/dist/src/routes/v3/blacklist.d.ts +1 -2479
- package/dist/src/routes/v3/blacklist.js +1 -1
- package/dist/src/routes/v3/campaignClaims.d.ts +1 -1
- package/dist/src/routes/v3/campaignClaims.js +1 -1
- package/dist/src/routes/v3/campaignReport.d.ts +1 -1
- package/dist/src/routes/v3/campaignReport.js +1 -1
- package/dist/src/routes/v3/campaignUnclaimed.d.ts +1 -1
- package/dist/src/routes/v3/campaignUnclaimed.js +1 -1
- package/dist/src/routes/v3/campaigns.d.ts +1 -2483
- package/dist/src/routes/v3/campaigns.js +1 -1
- package/dist/src/routes/v3/campaignsForMainParameter.d.ts +1 -1
- package/dist/src/routes/v3/campaignsForMainParameter.js +1 -1
- package/dist/src/routes/v3/campaignsInfo.d.ts +1 -2481
- package/dist/src/routes/v3/campaignsInfo.js +1 -1
- package/dist/src/routes/v3/campaignsRewardsReport.d.ts +1 -1
- package/dist/src/routes/v3/campaignsRewardsReport.js +1 -1
- package/dist/src/routes/v3/claims.d.ts +2 -2
- package/dist/src/routes/v3/claims.js +1 -1
- package/dist/src/routes/v3/compoundV2.d.ts +1 -1
- package/dist/src/routes/v3/compoundV2.js +1 -1
- package/dist/src/routes/v3/createCampaign.d.ts +1 -1
- package/dist/src/routes/v3/createCampaign.js +1 -1
- package/dist/src/routes/v3/dolomite.d.ts +1 -1
- package/dist/src/routes/v3/dolomite.js +1 -1
- package/dist/src/routes/v3/euler.d.ts +1 -1
- package/dist/src/routes/v3/euler.js +1 -1
- package/dist/src/routes/v3/fetch.d.ts +1 -1
- package/dist/src/routes/v3/fetch.js +1 -1
- package/dist/src/routes/v3/health.d.ts +1 -1
- package/dist/src/routes/v3/health.js +1 -1
- package/dist/src/routes/v3/lostyield.d.ts +1 -1
- package/dist/src/routes/v3/lostyield.js +1 -1
- package/dist/src/routes/v3/merkl.d.ts +1 -1
- package/dist/src/routes/v3/merkl.js +1 -1
- package/dist/src/routes/v3/morphoMarkets.d.ts +1 -1
- package/dist/src/routes/v3/morphoMarkets.js +1 -1
- package/dist/src/routes/v3/morphoVaults.d.ts +1 -1
- package/dist/src/routes/v3/morphoVaults.js +1 -1
- package/dist/src/routes/v3/multiChainPositions.d.ts +1 -2480
- package/dist/src/routes/v3/multiChainPositions.js +1 -1
- package/dist/src/routes/v3/opportunity.d.ts +1 -2483
- package/dist/src/routes/v3/opportunity.js +1 -1
- package/dist/src/routes/v3/overview.d.ts +1 -1
- package/dist/src/routes/v3/overview.js +1 -1
- package/dist/src/routes/v3/parse.d.ts +1 -1
- package/dist/src/routes/v3/parse.js +1 -1
- package/dist/src/routes/v3/payload.d.ts +1 -1
- package/dist/src/routes/v3/payload.js +1 -1
- package/dist/src/routes/v3/poolInfo.js +1 -1
- package/dist/src/routes/v3/positions.d.ts +1 -2479
- package/dist/src/routes/v3/positions.js +1 -1
- package/dist/src/routes/v3/radiant.d.ts +1 -1
- package/dist/src/routes/v3/radiant.js +1 -1
- package/dist/src/routes/v3/recipients.d.ts +1 -1
- package/dist/src/routes/v3/recipients.js +1 -1
- package/dist/src/routes/v3/rewards.d.ts +1 -2508
- package/dist/src/routes/v3/rewards.js +1 -1
- package/dist/src/routes/v3/rewardsReport.d.ts +1 -1
- package/dist/src/routes/v3/rewardsReport.js +1 -1
- package/dist/src/routes/v3/router.d.ts +1 -0
- package/dist/src/routes/v3/router.js +74 -0
- package/dist/src/routes/v3/silo.d.ts +1 -1
- package/dist/src/routes/v3/silo.js +1 -1
- package/dist/src/routes/v3/token.d.ts +1 -1
- package/dist/src/routes/v3/token.js +1 -1
- package/dist/src/routes/v3/tokenUnclaimed.d.ts +1 -1
- package/dist/src/routes/v3/tokenUnclaimed.js +1 -1
- package/dist/src/routes/v3/updates.d.ts +1 -2483
- package/dist/src/routes/v3/updates.js +1 -1
- package/dist/src/routes/v3/userRewards.d.ts +1 -2499
- package/dist/src/routes/v3/userRewards.js +1 -1
- package/dist/src/utils/decodeCalls.js +12 -1
- package/dist/src/utils/encodeCalls.js +26 -3
- package/dist/src/utils/generateCardName.js +2 -0
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +2 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicDataRefacto.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicDataRefacto.js +0 -155
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesPricesRefactoFinal.d.ts +0 -4
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesPricesRefactoFinal.js +0 -24
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1RefactoFinal.d.ts +0 -4
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1RefactoFinal.js +0 -230
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound2RefactoFinal.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound2RefactoFinal.js +0 -22
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound3RefactoFinal.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound3RefactoFinal.js +0 -22
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound4RefactoFinal.d.ts +0 -4
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound4RefactoFinal.js +0 -22
- package/dist/src/libs/campaigns/campaignsDynamicDataRefacto.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignsDynamicDataRefacto.js +0 -75
package/dist/src/index.js
CHANGED
@@ -2,9 +2,11 @@ import { cors } from "@elysiajs/cors";
|
|
2
2
|
import { swagger } from "@elysiajs/swagger";
|
3
3
|
import axios from "axios";
|
4
4
|
import { Elysia } from "elysia";
|
5
|
-
import { autoroutes } from "elysia-autoroutes";
|
6
5
|
import { redisClient } from "./cache/redis";
|
7
6
|
import { v4 } from "./modules/v4/router";
|
7
|
+
import { v1 } from "./routes/v1/router";
|
8
|
+
import { v2 } from "./routes/v2/router";
|
9
|
+
import { v3 } from "./routes/v3/router";
|
8
10
|
import { errorHandler } from "./utils/error";
|
9
11
|
import { log } from "./utils/logger";
|
10
12
|
import { apiDbClient, engineDbClient } from "./utils/prisma";
|
@@ -18,13 +20,17 @@ const app = new Elysia({
|
|
18
20
|
},
|
19
21
|
})
|
20
22
|
.use(swagger({
|
23
|
+
scalarConfig: {
|
24
|
+
theme: "kepler",
|
25
|
+
darkMode: true,
|
26
|
+
},
|
21
27
|
documentation: {
|
22
28
|
info: {
|
23
29
|
contact: {
|
24
30
|
email: "contact@merkl.money",
|
25
31
|
name: "Angle Labs",
|
26
32
|
},
|
27
|
-
description: "API to access data related to Merkl campaigns, built and maintained by Angle Labs. This API is provided as is, without any warranty of any kind.",
|
33
|
+
description: "The official API to access data related to Merkl campaigns, built and maintained by Angle Labs. This API is provided as is, without any warranty of any kind.",
|
28
34
|
license: {
|
29
35
|
name: "UNLICENSED",
|
30
36
|
},
|
@@ -32,15 +38,58 @@ const app = new Elysia({
|
|
32
38
|
version: "1.0.1",
|
33
39
|
},
|
34
40
|
},
|
35
|
-
exclude: [/
|
41
|
+
exclude: [/v4\/.*/, "/"],
|
42
|
+
}))
|
43
|
+
.use(swagger({
|
44
|
+
path: "/v4/docs",
|
45
|
+
scalarConfig: {
|
46
|
+
theme: "kepler",
|
47
|
+
darkMode: true,
|
48
|
+
},
|
49
|
+
documentation: {
|
50
|
+
tags: [
|
51
|
+
{
|
52
|
+
name: "Opportunities",
|
53
|
+
description: "An opportunity represents a collection of campaigns.",
|
54
|
+
},
|
55
|
+
{
|
56
|
+
name: "Campaigns",
|
57
|
+
description: "Campaigns are designed to incentivize participation in a protocol by offering rewards to users for specific behaviors or actions.",
|
58
|
+
},
|
59
|
+
{
|
60
|
+
name: "Protocols",
|
61
|
+
description: "Endpoints related to protocols integrated by Merkl.",
|
62
|
+
},
|
63
|
+
{
|
64
|
+
name: "Chains",
|
65
|
+
description: "Endpoints related to chains integrated by Merkl.",
|
66
|
+
},
|
67
|
+
{
|
68
|
+
name: "Users",
|
69
|
+
description: "Endpoints related to Merkl users.",
|
70
|
+
},
|
71
|
+
],
|
72
|
+
info: {
|
73
|
+
contact: {
|
74
|
+
email: "contact@merkl.money",
|
75
|
+
name: "Angle Labs",
|
76
|
+
},
|
77
|
+
description: "The official API to access data related to Merkl campaigns, built and maintained by Angle Labs. This API is provided as is, without any warranty of any kind.",
|
78
|
+
license: {
|
79
|
+
name: "UNLICENSED",
|
80
|
+
},
|
81
|
+
title: "Merkl API",
|
82
|
+
version: "1.0.1",
|
83
|
+
},
|
84
|
+
},
|
85
|
+
exclude: [/engine\/*/, /v1\/.*/, /v2\/.*/, /v3\/.*/, "/", /swagger\/*/],
|
36
86
|
}))
|
37
87
|
.use(cors())
|
38
88
|
.get("/", () => "Merkl API")
|
89
|
+
.use(v1)
|
90
|
+
.use(v2)
|
91
|
+
.use(v3)
|
39
92
|
.use(v4)
|
40
|
-
.use(autoroutes({
|
41
|
-
routesDir: `${import.meta.dir}/routes`,
|
42
|
-
generateTags: false,
|
43
|
-
}))
|
44
93
|
.use(errorHandler())
|
45
94
|
.listen(PORT, ({ hostname, port }) => {
|
46
95
|
log.info(`🌐 Api started (${hostname}:${port})`);
|
@@ -1,12 +1,12 @@
|
|
1
1
|
import { merklChainDataWithCache } from "../../merklChainData";
|
2
|
-
import { BN2Number, ERC20Interface, YEAR, } from "@sdk";
|
2
|
+
import { BN2Number, BalancerPoolInterface, ERC20Interface, EnzymeInterface, FactoryInterface, MetamorphoInterface, YEAR, } from "@sdk";
|
3
3
|
import { batchMulticallCallWithRetry } from "../../../utils/generic";
|
4
4
|
import { Pricer } from "../../../utils/pricer";
|
5
5
|
import { getLastEligibilityRatio } from "../utils/getLastEligibilityRatio";
|
6
6
|
import { tokenType } from "./ERC20SubTypes/helpers/tokenType";
|
7
7
|
import { getTokenPricesInfo } from "./ERC20SubTypes/subtypesPrices";
|
8
|
-
import {
|
9
|
-
import {
|
8
|
+
import { getTokenTypeRound1 } from "./ERC20SubTypes/subtypesRound1";
|
9
|
+
import { getTokenTypeRound2 } from "./ERC20SubTypes/subtypesRound2";
|
10
10
|
import { getTokenTypeRound3 } from "./ERC20SubTypes/subtypesRound3";
|
11
11
|
import { getTokenTypeRound4 } from "./ERC20SubTypes/subtypesRound4";
|
12
12
|
export async function ERC20DynamicData(chainId, campaigns) {
|
@@ -31,27 +31,23 @@ export async function ERC20DynamicData(chainId, campaigns) {
|
|
31
31
|
}
|
32
32
|
callsRounds1.push({
|
33
33
|
allowFailure: true,
|
34
|
-
callData:
|
34
|
+
callData: FactoryInterface.encodeFunctionData("factory"),
|
35
35
|
target: campaign.campaignParameters.targetToken,
|
36
|
-
}
|
37
|
-
callsRounds1.push({
|
36
|
+
}, {
|
38
37
|
allowFailure: true,
|
39
|
-
callData:
|
38
|
+
callData: MetamorphoInterface.encodeFunctionData("MORPHO"),
|
40
39
|
target: campaign.campaignParameters.targetToken,
|
41
|
-
}
|
42
|
-
callsRounds1.push({
|
40
|
+
}, {
|
43
41
|
allowFailure: true,
|
44
42
|
callData: ERC20Interface.encodeFunctionData("name"),
|
45
43
|
target: campaign.campaignParameters.targetToken,
|
46
|
-
}
|
47
|
-
callsRounds1.push({
|
44
|
+
}, {
|
48
45
|
allowFailure: true,
|
49
|
-
callData:
|
46
|
+
callData: BalancerPoolInterface.encodeFunctionData("getPoolId"),
|
50
47
|
target: campaign.campaignParameters.targetToken,
|
51
|
-
}
|
52
|
-
callsRounds1.push({
|
48
|
+
}, {
|
53
49
|
allowFailure: true,
|
54
|
-
callData:
|
50
|
+
callData: EnzymeInterface.encodeFunctionData("getCreator"),
|
55
51
|
target: campaign.campaignParameters.targetToken,
|
56
52
|
});
|
57
53
|
}
|
@@ -68,7 +64,7 @@ export async function ERC20DynamicData(chainId, campaigns) {
|
|
68
64
|
calls: [],
|
69
65
|
typeInfo: {},
|
70
66
|
};
|
71
|
-
typeStruct = getTokenTypeRound1(resultRound1, campaign.campaignParameters.targetToken, i);
|
67
|
+
typeStruct = getTokenTypeRound1(resultRound1, campaign.campaignParameters.targetToken, i, campaign);
|
72
68
|
i += 5;
|
73
69
|
tokenTypesByCampaign[campaign.campaignId] = typeStruct;
|
74
70
|
callsRounds2.push(...typeStruct.calls);
|
@@ -128,12 +124,9 @@ export async function ERC20DynamicData(chainId, campaigns) {
|
|
128
124
|
const callsForCampaign = tokenTypesByCampaign[campaign.campaignId].calls.length;
|
129
125
|
tokenTypesByCampaign[campaign.campaignId] = await getTokenPricesInfo(i, tokenTypesByCampaign[campaign.campaignId].type, tokenTypesByCampaign[campaign.campaignId].typeInfo, result, campaign, pricer);
|
130
126
|
i += callsForCampaign;
|
131
|
-
const
|
132
|
-
|
127
|
+
const whitelistedSupplyTargetToken = tokenTypesByCampaign[campaign.campaignId].typeInfo.whitelistedSupplyTargetToken;
|
128
|
+
const totalSupplyTargetToken = whitelistedSupplyTargetToken;
|
133
129
|
const priceTargetToken = tokenTypesByCampaign[campaign.campaignId].typeInfo.priceTargetToken;
|
134
|
-
if (whitelistedSupplyTargetToken === 0) {
|
135
|
-
whitelistedSupplyTargetToken = 0.00001;
|
136
|
-
}
|
137
130
|
let lastEligibilityRatio = 1;
|
138
131
|
if (!!campaign.campaignParameters.hooks?.length) {
|
139
132
|
lastEligibilityRatio = await getLastEligibilityRatio(campaign, chainId, currentRoot, []);
|
@@ -148,7 +141,7 @@ export async function ERC20DynamicData(chainId, campaigns) {
|
|
148
141
|
campaign.campaignParameters.duration /
|
149
142
|
(whitelistedSupplyTargetToken * priceTargetToken),
|
150
143
|
totalSupplyTargetToken,
|
151
|
-
tvl:
|
144
|
+
tvl: whitelistedSupplyTargetToken * priceTargetToken,
|
152
145
|
type: tokenTypesByCampaign[campaign.campaignId].type,
|
153
146
|
typeInfo: tokenTypesByCampaign[campaign.campaignId].typeInfo,
|
154
147
|
priceRewardToken: priceRewardToken,
|
@@ -18,6 +18,7 @@ const factoryAddresses = {
|
|
18
18
|
"0x35A338522a435D46f77Be32C70E215B813D0e3aC": tokenType.pendleYT, // Pendle YT Factory
|
19
19
|
"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73": tokenType.pancakeswap, // PancakeSwap Factory BNB
|
20
20
|
"0x70ee0A6DB4F5a2Dc4d9c0b57bE97B9987e75BAFD": tokenType.pendleYT, // Pendle YT Factory
|
21
|
+
"0xFD513630F697A9C1731F196185fb9ebA6eAAc20B": tokenType.cpmmGamma, // CPMMGAMMA Factory
|
21
22
|
};
|
22
23
|
export function getTypeFromFactoryAddress(address) {
|
23
24
|
if (factoryAddresses[address]) {
|
@@ -58,7 +58,9 @@ export declare enum tokenType {
|
|
58
58
|
pancakeswap = "pancakeswap",
|
59
59
|
tempestStaking = "tempestStaking",
|
60
60
|
holdstation = "holdstation",
|
61
|
-
staking = "staking"
|
61
|
+
staking = "staking",
|
62
|
+
noLinkVault = "noLinkVault",
|
63
|
+
cpmmGamma = "cpmmGamma"
|
62
64
|
}
|
63
65
|
export declare const tokenTypeToProtocol: {
|
64
66
|
[key in tokenType]: {
|
@@ -60,6 +60,8 @@ export var tokenType;
|
|
60
60
|
tokenType["tempestStaking"] = "tempestStaking";
|
61
61
|
tokenType["holdstation"] = "holdstation";
|
62
62
|
tokenType["staking"] = "staking";
|
63
|
+
tokenType["noLinkVault"] = "noLinkVault";
|
64
|
+
tokenType["cpmmGamma"] = "cpmmGamma";
|
63
65
|
})(tokenType || (tokenType = {}));
|
64
66
|
export const tokenTypeToProtocol = {
|
65
67
|
[tokenType.aave_borrowing]: { protocol: "Aave" },
|
@@ -143,4 +145,10 @@ export const tokenTypeToProtocol = {
|
|
143
145
|
[tokenType.staking]: {
|
144
146
|
protocol: "Staking",
|
145
147
|
},
|
148
|
+
[tokenType.noLinkVault]: {
|
149
|
+
protocol: "NoLinkVault",
|
150
|
+
},
|
151
|
+
[tokenType.cpmmGamma]: {
|
152
|
+
protocol: "GammaSwap",
|
153
|
+
},
|
146
154
|
};
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import type { Pricer } from "../../../../../utils/pricer";
|
2
|
+
import { type Campaign, type CampaignParameters } from "@sdk";
|
3
|
+
import type { tokenType, tokenTypeStruct } from "../helpers/tokenType";
|
4
|
+
import { GenericProcessor, type dataType, type mandatoryCallKeys } from "./GenericProcessor";
|
5
|
+
type callType = {
|
6
|
+
key: keyof dataRawGamma;
|
7
|
+
call: string;
|
8
|
+
target: keyof callKeysGamma;
|
9
|
+
metaData?: keyof callKeysGamma;
|
10
|
+
};
|
11
|
+
type callKeysGamma = mandatoryCallKeys & {
|
12
|
+
token0: string;
|
13
|
+
token1: string;
|
14
|
+
CFMMPrice: string;
|
15
|
+
cfmm: string;
|
16
|
+
};
|
17
|
+
type dataRawGamma = callKeysGamma & {
|
18
|
+
tokensRaw: string[];
|
19
|
+
tokenBalances: string[];
|
20
|
+
symbolToken0: string;
|
21
|
+
symbolToken1: string;
|
22
|
+
decimalsToken0: string;
|
23
|
+
decimalsToken1: string;
|
24
|
+
balanceToken0: string;
|
25
|
+
balanceToken1: string;
|
26
|
+
};
|
27
|
+
type dataTypeGamma = dataType & {};
|
28
|
+
export declare class GammaProcessor extends GenericProcessor<callKeysGamma, dataRawGamma, dataTypeGamma> {
|
29
|
+
rounds: {
|
30
|
+
round1: callType[];
|
31
|
+
round2: callType[];
|
32
|
+
round3: callType[];
|
33
|
+
round4: callType[];
|
34
|
+
};
|
35
|
+
processingRound2(typeInfo: dataRawGamma): void;
|
36
|
+
processingRound5(index: number, type: tokenType, typeInfo: dataRawGamma, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<dataTypeGamma>;
|
37
|
+
computeRound1(type: tokenType, typeInfo: dataRawGamma): tokenTypeStruct;
|
38
|
+
computeRound2(index: number, type: tokenType, typeInfo: dataRawGamma, calls: string[]): tokenTypeStruct;
|
39
|
+
computeRound3(index: number, type: tokenType, typeInfo: dataRawGamma, calls: string[]): tokenTypeStruct;
|
40
|
+
computeRound4(index: number, type: tokenType, typeInfo: dataRawGamma, calls: string[], campaign: CampaignParameters<Campaign.ERC20>): tokenTypeStruct;
|
41
|
+
computeRound5(index: number, type: tokenType, typeInfo: dataRawGamma, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<tokenTypeStruct>;
|
42
|
+
}
|
43
|
+
export {};
|
@@ -0,0 +1,63 @@
|
|
1
|
+
import { generateCardName } from "../../../../../utils/generateCardName";
|
2
|
+
import { BN2Number } from "@sdk";
|
3
|
+
import { GenericProcessor } from "./GenericProcessor";
|
4
|
+
export class GammaProcessor extends GenericProcessor {
|
5
|
+
rounds = {
|
6
|
+
round1: [
|
7
|
+
{ key: "tokensRaw", call: "tokensRaw", target: "tokenAddress" },
|
8
|
+
{ key: "tokenBalances", call: "tokenBalances", target: "tokenAddress" },
|
9
|
+
],
|
10
|
+
round2: [
|
11
|
+
{ key: "symbolToken0", call: "symbol", target: "token0" },
|
12
|
+
{ key: "symbolToken1", call: "symbol", target: "token1" },
|
13
|
+
{ key: "decimalsToken0", call: "decimals", target: "token0" },
|
14
|
+
{ key: "decimalsToken1", call: "decimals", target: "token1" },
|
15
|
+
],
|
16
|
+
round3: [],
|
17
|
+
round4: [{ key: "totalSupply", call: "totalSupply", target: "tokenAddress" }],
|
18
|
+
};
|
19
|
+
processingRound2(typeInfo) {
|
20
|
+
typeInfo.token0 = typeInfo.tokensRaw[0];
|
21
|
+
typeInfo.token1 = typeInfo.tokensRaw[1];
|
22
|
+
typeInfo.balanceToken0 = typeInfo.tokenBalances[0];
|
23
|
+
typeInfo.balanceToken1 = typeInfo.tokenBalances[1];
|
24
|
+
}
|
25
|
+
async processingRound5(index, type, typeInfo, calls, campaign, pricer) {
|
26
|
+
const { whitelistedSupplyTargetToken, totalSupply, blacklistedSupply } = this.handleWhiteListBlacklistRound5(typeInfo, campaign);
|
27
|
+
const decimalsToken0 = Number(typeInfo.decimalsToken0);
|
28
|
+
const decimalsToken1 = Number(typeInfo.decimalsToken1);
|
29
|
+
const priceToken0 = (await pricer.get({ symbol: typeInfo.symbolToken0 })) ?? 0;
|
30
|
+
const priceToken1 = (await pricer.get({ symbol: typeInfo.symbolToken1 })) ?? 0;
|
31
|
+
const balanceToken0 = BN2Number(typeInfo.balanceToken0, decimalsToken0);
|
32
|
+
const balanceToken1 = BN2Number(typeInfo.balanceToken1, decimalsToken1);
|
33
|
+
let tvl = 0;
|
34
|
+
if (priceToken0 !== 0 && priceToken1 !== 0) {
|
35
|
+
tvl = priceToken0 * balanceToken0 + priceToken1 * balanceToken1;
|
36
|
+
}
|
37
|
+
const priceTargetToken = tvl / totalSupply;
|
38
|
+
return {
|
39
|
+
...typeInfo,
|
40
|
+
priceTargetToken,
|
41
|
+
totalSupply,
|
42
|
+
whitelistedSupplyTargetToken,
|
43
|
+
blacklistedSupply,
|
44
|
+
tvl,
|
45
|
+
cardName: generateCardName(type, typeInfo, campaign),
|
46
|
+
};
|
47
|
+
}
|
48
|
+
computeRound1(type, typeInfo) {
|
49
|
+
return super.computeRound1(type, typeInfo);
|
50
|
+
}
|
51
|
+
computeRound2(index, type, typeInfo, calls) {
|
52
|
+
return super.computeRound2(index, type, typeInfo, calls);
|
53
|
+
}
|
54
|
+
computeRound3(index, type, typeInfo, calls) {
|
55
|
+
return super.computeRound3(index, type, typeInfo, calls);
|
56
|
+
}
|
57
|
+
computeRound4(index, type, typeInfo, calls, campaign) {
|
58
|
+
return super.computeRound4(index, type, typeInfo, calls, campaign);
|
59
|
+
}
|
60
|
+
async computeRound5(index, type, typeInfo, calls, campaign, pricer) {
|
61
|
+
return super.computeRound5(index, type, typeInfo, calls, campaign, pricer);
|
62
|
+
}
|
63
|
+
}
|
@@ -60,10 +60,10 @@ export declare class GenericProcessor<Input extends callKeys, DataRaw extends da
|
|
60
60
|
computeRound1(type: tokenType, typeInfo: DataRaw): tokenTypeStruct;
|
61
61
|
computeRound2(index: number, type: tokenType, typeInfo: DataRaw, calls: string[]): tokenTypeStruct;
|
62
62
|
computeRound3(index: number, type: tokenType, typeInfo: DataRaw, calls: string[]): tokenTypeStruct;
|
63
|
-
computeRound4(index: number, type: tokenType, typeInfo: DataRaw, calls: string[], campaign: CampaignParameters<Campaign.ERC20>): tokenTypeStruct;
|
63
|
+
computeRound4(index: number, type: tokenType, typeInfo: DataRaw, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>): tokenTypeStruct;
|
64
64
|
computeRound5(index: number, type: tokenType, typeInfo: DataRaw, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<tokenTypeStruct>;
|
65
|
-
generateWhitelistCall(type: tokenType, typeInfo: DataRaw, campaign: CampaignParameters<Campaign.ERC20>): Multicall3.Call3Struct[];
|
66
|
-
generateBlackListCall(type: tokenType, typeInfo: DataRaw, campaign: CampaignParameters<Campaign.ERC20>): Multicall3.Call3Struct[];
|
65
|
+
generateWhitelistCall(type: tokenType, typeInfo: DataRaw, campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>): Multicall3.Call3Struct[];
|
66
|
+
generateBlackListCall(type: tokenType, typeInfo: DataRaw, campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>): Multicall3.Call3Struct[];
|
67
67
|
decodeListedSupply(index: number, decimals: number, list: string[], calls: string[]): string;
|
68
68
|
decodeRound(round: callType[], index: number, calls: string[], type: tokenType, data: DataRaw): void;
|
69
69
|
decodePreviousRound(round: roundType, calls: string[], data: DataRaw, type: tokenType, index: number): void;
|
package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/NoLinkVaultProcessor.d.ts
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
import type { Pricer } from "../../../../../utils/pricer";
|
2
|
+
import { type Campaign, type CampaignParameters } from "@sdk";
|
3
|
+
import type { tokenType, tokenTypeStruct } from "../helpers/tokenType";
|
4
|
+
import { GenericProcessor, type dataType, type mandatoryCallKeys } from "./GenericProcessor";
|
5
|
+
type callType = {
|
6
|
+
key: keyof dataRawNoLinkVault;
|
7
|
+
call: string;
|
8
|
+
target: keyof callKeysNoLinkVault;
|
9
|
+
metaData?: keyof callKeysNoLinkVault;
|
10
|
+
};
|
11
|
+
type callKeysNoLinkVault = mandatoryCallKeys & {
|
12
|
+
rateAccountant: string;
|
13
|
+
base: string;
|
14
|
+
};
|
15
|
+
type dataRawNoLinkVault = callKeysNoLinkVault & {
|
16
|
+
rate: string;
|
17
|
+
};
|
18
|
+
type dataTypeNoLinkVault = dataType & {
|
19
|
+
rate: number;
|
20
|
+
};
|
21
|
+
export declare class NoLinkVaultProcessor extends GenericProcessor<callKeysNoLinkVault, dataRawNoLinkVault, dataTypeNoLinkVault> {
|
22
|
+
rounds: {
|
23
|
+
round1: callType[];
|
24
|
+
round2: callType[];
|
25
|
+
round3: callType[];
|
26
|
+
round4: callType[];
|
27
|
+
};
|
28
|
+
processingRound1(typeInfo: dataRawNoLinkVault): void;
|
29
|
+
processingRound5(index: number, type: tokenType, typeInfo: dataRawNoLinkVault, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<dataTypeNoLinkVault>;
|
30
|
+
computeRound1(type: tokenType, typeInfo: dataRawNoLinkVault): tokenTypeStruct;
|
31
|
+
computeRound2(index: number, type: tokenType, typeInfo: dataRawNoLinkVault, calls: string[]): tokenTypeStruct;
|
32
|
+
computeRound3(index: number, type: tokenType, typeInfo: dataRawNoLinkVault, calls: string[]): tokenTypeStruct;
|
33
|
+
computeRound4(index: number, type: tokenType, typeInfo: dataRawNoLinkVault, calls: string[], campaign: CampaignParameters<Campaign.ERC20>): tokenTypeStruct;
|
34
|
+
computeRound5(index: number, type: tokenType, typeInfo: dataRawNoLinkVault, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<tokenTypeStruct>;
|
35
|
+
}
|
36
|
+
export {};
|
@@ -0,0 +1,51 @@
|
|
1
|
+
import { generateCardName } from "../../../../../utils/generateCardName";
|
2
|
+
import { BN2Number } from "@sdk";
|
3
|
+
import { GenericProcessor } from "./GenericProcessor";
|
4
|
+
export class NoLinkVaultProcessor extends GenericProcessor {
|
5
|
+
rounds = {
|
6
|
+
round1: [],
|
7
|
+
round2: [
|
8
|
+
{ key: "rate", call: "getRate", target: "rateAccountant" },
|
9
|
+
{ key: "base", call: "base", target: "rateAccountant" },
|
10
|
+
],
|
11
|
+
round3: [],
|
12
|
+
round4: [{ key: "totalSupply", call: "totalSupply", target: "tokenAddress" }],
|
13
|
+
};
|
14
|
+
processingRound1(typeInfo) {
|
15
|
+
if (typeInfo.tokenAddress === "0x196ead472583Bc1e9aF7A05F860D9857e1Bd3dCc") {
|
16
|
+
typeInfo.rateAccountant = "0xA9fB7e2922216deBE3Fd5E1bBE7591eE446Dc21c";
|
17
|
+
}
|
18
|
+
}
|
19
|
+
async processingRound5(index, type, typeInfo, calls, campaign, pricer) {
|
20
|
+
const rate = BN2Number(typeInfo.rate, Number(campaign.campaignParameters.decimalsTargetToken));
|
21
|
+
const { whitelistedSupplyTargetToken, totalSupply, blacklistedSupply } = this.handleWhiteListBlacklistRound5(typeInfo, campaign);
|
22
|
+
console.log(typeInfo.base);
|
23
|
+
const priceTargetToken = rate * ((await pricer.get({ symbol: typeInfo.base })) ?? 0);
|
24
|
+
const tvl = whitelistedSupplyTargetToken * priceTargetToken;
|
25
|
+
return {
|
26
|
+
tokenAddress: typeInfo.tokenAddress,
|
27
|
+
whitelistedSupplyTargetToken,
|
28
|
+
rate,
|
29
|
+
totalSupply,
|
30
|
+
priceTargetToken,
|
31
|
+
tvl,
|
32
|
+
blacklistedSupply,
|
33
|
+
cardName: generateCardName(type, typeInfo, campaign),
|
34
|
+
};
|
35
|
+
}
|
36
|
+
computeRound1(type, typeInfo) {
|
37
|
+
return super.computeRound1(type, typeInfo);
|
38
|
+
}
|
39
|
+
computeRound2(index, type, typeInfo, calls) {
|
40
|
+
return super.computeRound2(index, type, typeInfo, calls);
|
41
|
+
}
|
42
|
+
computeRound3(index, type, typeInfo, calls) {
|
43
|
+
return super.computeRound3(index, type, typeInfo, calls);
|
44
|
+
}
|
45
|
+
computeRound4(index, type, typeInfo, calls, campaign) {
|
46
|
+
return super.computeRound4(index, type, typeInfo, calls, campaign);
|
47
|
+
}
|
48
|
+
async computeRound5(index, type, typeInfo, calls, campaign, pricer) {
|
49
|
+
return super.computeRound5(index, type, typeInfo, calls, campaign, pricer);
|
50
|
+
}
|
51
|
+
}
|
@@ -25,7 +25,6 @@ export declare class StakingProcessor extends GenericProcessor<callKeysStaking,
|
|
25
25
|
round3: callType[];
|
26
26
|
round4: callType[];
|
27
27
|
};
|
28
|
-
processingRound1(typeInfo: dataRawStaking): void;
|
29
28
|
processingRound2(typeInfo: dataRawStaking): void;
|
30
29
|
processingRound3(typeInfo: dataRawStaking): void;
|
31
30
|
processingRound4(typeInfo: dataRawStaking): void;
|
@@ -10,16 +10,24 @@ export class StakingProcessor extends GenericProcessor {
|
|
10
10
|
round4: [{ key: "totalSupply", call: "totalSupply", target: "tokenAddress" }],
|
11
11
|
};
|
12
12
|
// override computeRound1(): void {}
|
13
|
-
processingRound1(typeInfo) {
|
14
|
-
if (typeInfo.stakingContract === "0x18eeD20f71BEf84B605253C89A7576E3634134C0") {
|
15
|
-
typeInfo.stakingSymbol = "CyberStaking";
|
16
|
-
}
|
17
|
-
}
|
18
13
|
processingRound2(typeInfo) {
|
19
|
-
typeInfo.stakingSymbol
|
14
|
+
if (typeInfo.stakingSymbol === undefined) {
|
15
|
+
typeInfo.stakingSymbol = typeInfo.eip712DomainName;
|
16
|
+
}
|
20
17
|
}
|
21
18
|
processingRound3(typeInfo) {
|
22
|
-
|
19
|
+
if (typeInfo.stakingSymbol === undefined &&
|
20
|
+
typeInfo.stakingContract === "0x18eeD20f71BEf84B605253C89A7576E3634134C0") {
|
21
|
+
typeInfo.stakingSymbol = "CyberStaking";
|
22
|
+
}
|
23
|
+
if (typeInfo.stakingSymbol === undefined &&
|
24
|
+
typeInfo.stakingContract === "0x68754d29f2e97B837Cb622ccfF325adAC27E9977") {
|
25
|
+
typeInfo.stakingSymbol = "Karak";
|
26
|
+
}
|
27
|
+
if (typeInfo.stakingSymbol === undefined &&
|
28
|
+
typeInfo.stakingContract === "0xcd28cF8f7755f03967D27E128B38022B63919836") {
|
29
|
+
typeInfo.stakingSymbol = "Llamalend";
|
30
|
+
}
|
23
31
|
}
|
24
32
|
processingRound4(typeInfo) {
|
25
33
|
super.processingRound4(typeInfo);
|
@@ -11,11 +11,13 @@ import { EulerBorrowProcessor } from "./EulerBorrowProcessor";
|
|
11
11
|
import { EulerLendProcessor } from "./EulerLendProcessor";
|
12
12
|
import { FluidProcessor } from "./FluidProcessor";
|
13
13
|
import { FraxProcessor } from "./FraxProcessor";
|
14
|
+
import { GammaProcessor } from "./GammaProcessor";
|
14
15
|
import { GearboxProcessor } from "./GearboxProcessor";
|
15
16
|
import { GenericProcessor } from "./GenericProcessor";
|
16
17
|
import { HoldStationProcessor } from "./HoldStationProcessor";
|
17
18
|
import { MaverickBPProcessor } from "./MaverickBPProcessor";
|
18
19
|
import { MetamorphoProcessor } from "./MetamorphoProcessor";
|
20
|
+
import { NoLinkVaultProcessor } from "./NoLinkVaultProcessor";
|
19
21
|
import { PendleProcessor } from "./PendleProcessor";
|
20
22
|
import { PendleYTProcessor } from "./PendleYTProcessor";
|
21
23
|
import { RadiantProcessor } from "./RadiantProcessor";
|
@@ -90,4 +92,6 @@ export const processorMapping = {
|
|
90
92
|
[tokenType.tempestStaking]: TempestVaultProcessor,
|
91
93
|
[tokenType.holdstation]: HoldStationProcessor,
|
92
94
|
[tokenType.staking]: StakingProcessor,
|
95
|
+
[tokenType.noLinkVault]: NoLinkVaultProcessor,
|
96
|
+
[tokenType.cpmmGamma]: GammaProcessor,
|
93
97
|
};
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import type { Pricer } from "../../../../utils/pricer";
|
2
|
-
import {
|
2
|
+
import type { Campaign, CampaignParameters } from "@sdk";
|
3
3
|
import { tokenType, type tokenTypeStruct } from "./helpers/tokenType";
|
4
4
|
export declare function getTokenPricesInfo(index: number, type: tokenType, typeInfo: any, calls: string[], campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.EULER>, pricer: Pricer): Promise<tokenTypeStruct>;
|