@merkl/api 0.17.35 → 0.17.37

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.
@@ -2,7 +2,7 @@ import { Redis } from "../cache";
2
2
  import { redisClient } from "../cache/redis";
3
3
  import { getEulerV2Vaults, updateEulerVaultsCollatInDatabase } from "../libs/campaigns/utils/getEulerV2Vaults";
4
4
  import { getUniswapV4Pools } from "../libs/campaigns/utils/getUniswapV4Pools";
5
- import { DungeonKeeperController } from "../modules/v4/dungeonKeeper";
5
+ import { DungeonKeeperController } from "../modules/v4/dungeonKeeper/dungeonKeeper.controller";
6
6
  import { log } from "../utils/logger";
7
7
  import { engineDbClient } from "../utils/prisma";
8
8
  import { swagger } from "@elysiajs/swagger";
@@ -97,21 +97,21 @@ export const tokenTypeToProtocol = {
97
97
  [tokenType.aave_borrowing]: { protocol: "Aave", action: OpportunityAction.BORROW },
98
98
  [tokenType.anglesLiquid]: { protocol: "Angles", action: OpportunityAction.LEND },
99
99
  [tokenType.aave_lending]: { protocol: "Aave", action: OpportunityAction.LEND },
100
- [tokenType.aerodrome]: { protocol: "Aerodrome V2", action: OpportunityAction.POOL },
101
- [tokenType.akron]: { protocol: "Akron V2", action: OpportunityAction.POOL },
100
+ [tokenType.aerodrome]: { protocol: "Aerodrome", action: OpportunityAction.POOL },
101
+ [tokenType.akron]: { protocol: "Akron", action: OpportunityAction.POOL },
102
102
  [tokenType.aura]: { protocol: "Aura", action: OpportunityAction.POOL },
103
103
  [tokenType.balancerGauge]: { protocol: "Balancer Gauge", action: OpportunityAction.POOL },
104
- [tokenType.balancerPool]: { protocol: "Balancer Pool", action: OpportunityAction.POOL },
105
- [tokenType.baseswap]: { protocol: "Baseswap V2", action: OpportunityAction.HOLD },
106
- [tokenType.beefy]: { protocol: "Moo Velodrome V2", action: OpportunityAction.POOL },
104
+ [tokenType.balancerPool]: { protocol: "Balancer", action: OpportunityAction.POOL },
105
+ [tokenType.baseswap]: { protocol: "Baseswap", action: OpportunityAction.HOLD },
106
+ [tokenType.beefy]: { protocol: "Moo Velodrome", action: OpportunityAction.POOL },
107
107
  [tokenType.compound]: { protocol: "Compound", action: OpportunityAction.LEND },
108
108
  [tokenType.curve]: { protocol: "Curve", action: OpportunityAction.POOL },
109
109
  [tokenType.curve_2]: { protocol: "Curve", action: OpportunityAction.POOL },
110
- [tokenType.dragonswap]: { protocol: "Dragonswap V2", action: OpportunityAction.POOL },
110
+ [tokenType.dragonswap]: { protocol: "Dragonswap", action: OpportunityAction.POOL },
111
111
  [tokenType.enzyme]: { protocol: "Enzyme", action: OpportunityAction.HOLD },
112
- [tokenType.euler_borrow]: { protocol: "Euler V2", action: OpportunityAction.BORROW },
113
- [tokenType.euler_lend]: { protocol: "Euler V2", action: OpportunityAction.LEND },
114
- [tokenType.fenix]: { protocol: "Fenix V2", action: OpportunityAction.HOLD },
112
+ [tokenType.euler_borrow]: { protocol: "Euler", action: OpportunityAction.BORROW },
113
+ [tokenType.euler_lend]: { protocol: "Euler", action: OpportunityAction.LEND },
114
+ [tokenType.fenix]: { protocol: "Fenix", action: OpportunityAction.HOLD },
115
115
  [tokenType.filament]: { protocol: "Filament", action: OpportunityAction.HOLD },
116
116
  [tokenType.fluid]: { protocol: "Fluid", action: OpportunityAction.LEND },
117
117
  [tokenType.fraxlend]: { protocol: "Fraxlend", action: OpportunityAction.LEND },
@@ -135,8 +135,8 @@ export const tokenTypeToProtocol = {
135
135
  [tokenType.sturdy_silo]: { protocol: "Sturdy", action: OpportunityAction.LEND },
136
136
  [tokenType.syncswap]: { protocol: "SyncSwap", action: OpportunityAction.POOL },
137
137
  [tokenType.toros]: { protocol: "Toros", action: OpportunityAction.HOLD },
138
- [tokenType.uniswapv2]: { protocol: "Uniswap V2", action: OpportunityAction.POOL },
139
- [tokenType.velodrome]: { protocol: "Velodrome V2", action: OpportunityAction.POOL },
138
+ [tokenType.uniswapv2]: { protocol: "Uniswap", action: OpportunityAction.POOL },
139
+ [tokenType.velodrome]: { protocol: "Velodrome", action: OpportunityAction.POOL },
140
140
  [tokenType.venus]: { protocol: "Venus", action: OpportunityAction.LEND },
141
141
  [tokenType.unknown]: { protocol: "Unknown", action: OpportunityAction.HOLD },
142
142
  [tokenType.yei_borrowing]: { protocol: "Yei Finance", action: OpportunityAction.HOLD },
@@ -152,7 +152,7 @@ export const tokenTypeToProtocol = {
152
152
  [tokenType.maha]: { protocol: "Maha", action: OpportunityAction.HOLD },
153
153
  [tokenType.tempest]: { protocol: "Tempest", action: OpportunityAction.POOL },
154
154
  [tokenType.pendleYT]: { protocol: "Pendle", action: OpportunityAction.HOLD },
155
- [tokenType.pancakeswap]: { protocol: "PancakeSwap V2", action: OpportunityAction.POOL },
155
+ [tokenType.pancakeswap]: { protocol: "PancakeSwap", action: OpportunityAction.POOL },
156
156
  [tokenType.tempestStaking]: { protocol: "Tempest", action: OpportunityAction.HOLD },
157
157
  [tokenType.holdstation]: { protocol: "HoldStation", action: OpportunityAction.HOLD },
158
158
  [tokenType.noLinkVault]: { protocol: "NoLinkVault", action: OpportunityAction.HOLD },
@@ -19,7 +19,8 @@ export declare const DungeonKeeperController: Elysia<"/dungeonkeeper", false, {
19
19
  query: unknown;
20
20
  headers: unknown;
21
21
  response: {
22
- 200: void;
22
+ [x: string]: any;
23
+ 200: any;
23
24
  };
24
25
  };
25
26
  };
@@ -1,7 +1,7 @@
1
1
  import { AuthorizationHeadersDto, BackOfficeGuard } from "../../../guards/BackOffice.guard";
2
2
  import Elysia from "elysia";
3
- import { ExplorerService } from ".";
4
3
  import { CreateExplorerDto } from "./explorer.model";
4
+ import { ExplorerService } from "./explorer.service";
5
5
  // ─── Explorer Controller ───────────────────────────────────────────────────────
6
6
  export const ExplorerController = new Elysia({ prefix: "/explorers", detail: { tags: ["Explorers"] } })
7
7
  // ─── Create An Explorer ──────────────────────────────────────────────────────
@@ -95,7 +95,10 @@ export declare enum celoCampaigns {
95
95
  UniswapV3_cKES_cEUR_Celo = "UniswapV3 cKES/cEUR Celo 0xA143ccF73C25eeC6f38bD1b741043ebeA228b8e9",
96
96
  UniswapV3_eXOF_CELO_Celo = "UniswapV3 eXOF/CELO Celo 0xc767C0b2E2e56C455fd29f9eE9b6e6F035C71Ed4",
97
97
  UniswapV3_cREAL_CELO_Celo = "UniswapV3 cREAL/CELO Celo 0x2E067E0eAB7fd31c01473c0f56f3295Afb82e461",
98
- UniswapV3_cKES_CELO_Celo = "UniswapV3 cKES/CELO Celo 0xbC83c60E853398d263C1d88899cf5A8B408F9654"
98
+ UniswapV3_cKES_CELO_Celo = "UniswapV3 cKES/CELO Celo 0xbC83c60E853398d263C1d88899cf5A8B408F9654",
99
+ Aave_Supply_CELO_on_Aave_Celo = "Aave Supply CELO on Aave Celo 0xC3e77dC389537Db1EEc7C33B95Cf3beECA71A209",
100
+ Aave_Supply_USDT_on_Aave_Celo = "Aave Supply USDT on Aave Celo 0xDeE98402A302e4D707fB9bf2bac66fAEEc31e8Df",
101
+ Aave_Supply_USDC_on_Aave_Celo = "Aave Supply USDC on Aave Celo 0xFF8309b9e99bfd2D4021bc71a362aBD93dBd4785"
99
102
  }
100
103
  export declare enum beetsCampaigns {
101
104
  Staked_Sonic_Symphony_Beets = "Staked Sonic Symphony Beets 0x374641076B68371e69D03C417DAc3E5F236c32FA",
@@ -104,6 +104,9 @@ export var celoCampaigns;
104
104
  celoCampaigns["UniswapV3_eXOF_CELO_Celo"] = "UniswapV3 eXOF/CELO Celo 0xc767C0b2E2e56C455fd29f9eE9b6e6F035C71Ed4";
105
105
  celoCampaigns["UniswapV3_cREAL_CELO_Celo"] = "UniswapV3 cREAL/CELO Celo 0x2E067E0eAB7fd31c01473c0f56f3295Afb82e461";
106
106
  celoCampaigns["UniswapV3_cKES_CELO_Celo"] = "UniswapV3 cKES/CELO Celo 0xbC83c60E853398d263C1d88899cf5A8B408F9654";
107
+ celoCampaigns["Aave_Supply_CELO_on_Aave_Celo"] = "Aave Supply CELO on Aave Celo 0xC3e77dC389537Db1EEc7C33B95Cf3beECA71A209";
108
+ celoCampaigns["Aave_Supply_USDT_on_Aave_Celo"] = "Aave Supply USDT on Aave Celo 0xDeE98402A302e4D707fB9bf2bac66fAEEc31e8Df";
109
+ celoCampaigns["Aave_Supply_USDC_on_Aave_Celo"] = "Aave Supply USDC on Aave Celo 0xFF8309b9e99bfd2D4021bc71a362aBD93dBd4785";
107
110
  })(celoCampaigns || (celoCampaigns = {}));
108
111
  export var beetsCampaigns;
109
112
  (function (beetsCampaigns) {
@@ -1580,6 +1583,36 @@ const CeloInterfaceCampaigns = {
1580
1583
  weightToken0: 2500,
1581
1584
  weightToken1: 2500,
1582
1585
  },
1586
+ [celoCampaigns.Aave_Supply_CELO_on_Aave_Celo]: {
1587
+ campaignType: Campaign.ERC20,
1588
+ computeChainId: ChainId.CELO,
1589
+ hooks: [],
1590
+ targetToken: "0xC3e77dC389537Db1EEc7C33B95Cf3beECA71A209",
1591
+ whitelist: [],
1592
+ blacklist: [],
1593
+ url: "https://app.aave.com/?marketName=proto_celo_v3",
1594
+ forwarders: [],
1595
+ },
1596
+ [celoCampaigns.Aave_Supply_USDT_on_Aave_Celo]: {
1597
+ campaignType: Campaign.ERC20,
1598
+ computeChainId: ChainId.CELO,
1599
+ hooks: [],
1600
+ targetToken: "0xDeE98402A302e4D707fB9bf2bac66fAEEc31e8Df",
1601
+ whitelist: [],
1602
+ blacklist: [],
1603
+ url: "https://app.aave.com/?marketName=proto_celo_v3",
1604
+ forwarders: [],
1605
+ },
1606
+ [celoCampaigns.Aave_Supply_USDC_on_Aave_Celo]: {
1607
+ campaignType: Campaign.ERC20,
1608
+ computeChainId: ChainId.CELO,
1609
+ hooks: [],
1610
+ targetToken: "0xFF8309b9e99bfd2D4021bc71a362aBD93dBd4785",
1611
+ whitelist: [],
1612
+ blacklist: [],
1613
+ url: "https://app.aave.com/?marketName=proto_celo_v3",
1614
+ forwarders: [],
1615
+ },
1583
1616
  };
1584
1617
  const BeetsInterfaceCampaigns = {
1585
1618
  [beetsCampaigns.Staked_Sonic_Symphony_Beets]: {
@@ -12,8 +12,8 @@ export const query = t.Object({
12
12
  });
13
13
  export default (app) => {
14
14
  return app.get("/opportunity", async ({ query: { campaigns: showCampaigns, ...filters } }) => {
15
- await OpportunityConvertorService.logKeyAndTTLV3Opportunities(showCampaigns ?? false, !!filters.testTokens ? filters.testTokens : undefined, !!filters.mainParameter ? filters.mainParameter : undefined, !!filters.chainId ? filters.chainId.toString() : undefined);
16
- return await OpportunityConvertorService.wrapV3Opportunities(showCampaigns ?? false, !!filters.testTokens ? filters.testTokens : undefined, !!filters.mainParameter ? filters.mainParameter : undefined, !!filters.chainId ? filters.chainId.toString() : undefined);
15
+ await OpportunityConvertorService.logKeyAndTTLV3Opportunities(showCampaigns ?? false, !!filters.testTokens ? filters.testTokens : false, !!filters.mainParameter ? filters.mainParameter : undefined, !!filters.chainId ? filters.chainId.toString() : undefined);
16
+ return await OpportunityConvertorService.wrapV3Opportunities(showCampaigns ?? false, !!filters.testTokens ? filters.testTokens : false, !!filters.mainParameter ? filters.mainParameter : undefined, !!filters.chainId ? filters.chainId.toString() : undefined);
17
17
  }, {
18
18
  transform({ query }) {
19
19
  query.chainId = !query.chainId ? undefined : Number.parseInt(query.chainId.toString());