@merkl/api 0.20.117 → 0.20.119

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 (138) hide show
  1. package/dist/src/eden/index.d.ts +18 -18
  2. package/dist/src/engine/deprecated/dynamicData/factory.js +1 -1
  3. package/dist/src/engine/deprecated/dynamicData/implementations/Radiant.js +1 -1
  4. package/dist/src/engine/implementations/Ajna/metadata.d.ts +1 -1
  5. package/dist/src/engine/implementations/Ambient/metadata.d.ts +1 -1
  6. package/dist/src/engine/implementations/Badger/metadata.d.ts +1 -1
  7. package/dist/src/engine/implementations/Clamm/metadata.d.ts +1 -1
  8. package/dist/src/engine/implementations/Compound/metadata.d.ts +1 -1
  9. package/dist/src/engine/implementations/CompoundV3/metadata.d.ts +1 -1
  10. package/dist/src/engine/implementations/Default/metadata.d.ts +1 -1
  11. package/dist/src/engine/implementations/Dolomite/metadata.d.ts +1 -1
  12. package/dist/src/engine/implementations/EigenLayer/metadata.d.ts +1 -1
  13. package/dist/src/engine/implementations/Encompassing/metadata.d.ts +1 -1
  14. package/dist/src/engine/implementations/Erc20/metadata.d.ts +1 -1
  15. package/dist/src/engine/implementations/Erc20/subTypes/implementations/gearbox/metadata.d.ts +1 -1
  16. package/dist/src/engine/implementations/Erc20/subTypes/implementations/superlend/metadata.d.ts +1 -1
  17. package/dist/src/engine/implementations/Erc20Snapshot/metadata.d.ts +1 -1
  18. package/dist/src/engine/implementations/Erc721/metadata.d.ts +1 -1
  19. package/dist/src/engine/implementations/ErcMultiToken/metadata.d.ts +1 -1
  20. package/dist/src/engine/implementations/Euler/metadata.d.ts +1 -1
  21. package/dist/src/engine/implementations/EventBased/metadata.d.ts +1 -1
  22. package/dist/src/engine/implementations/Hyperdrive/metadata.d.ts +1 -1
  23. package/dist/src/engine/implementations/Ion/metadata.d.ts +1 -1
  24. package/dist/src/engine/implementations/JsonAirdrop/metadata.d.ts +1 -1
  25. package/dist/src/engine/implementations/Morpho/metadata.d.ts +1 -1
  26. package/dist/src/engine/implementations/MultiLog/metadata.d.ts +8 -0
  27. package/dist/src/engine/implementations/MultiLog/metadata.js +36 -0
  28. package/dist/src/engine/implementations/MultiLog/tvl.d.ts +7 -0
  29. package/dist/src/engine/implementations/MultiLog/tvl.js +19 -0
  30. package/dist/src/engine/implementations/Radiant/metadata.d.ts +1 -1
  31. package/dist/src/engine/implementations/Silo/metadata.d.ts +1 -1
  32. package/dist/src/engine/implementations/UniswapV4/metadata.d.ts +1 -1
  33. package/dist/src/engine/implementations/Vest/metadata.d.ts +1 -1
  34. package/dist/src/engine/metadata/factory.js +2 -1
  35. package/dist/src/engine/tvl/factory.js +2 -0
  36. package/dist/src/index.d.ts +6 -6
  37. package/dist/src/jobs/pendings.js +1 -1
  38. package/dist/src/jobs/update-analytics.js +3 -3
  39. package/dist/src/jobs/update-dynamic-data.js +4 -4
  40. package/dist/src/jobs/update-euler-vaults.js +1 -1
  41. package/dist/src/jobs/update-rpc-calls-cache.js +2 -2
  42. package/dist/src/jobs/update-uniswap-v4-pools.js +1 -1
  43. package/dist/src/libs/positions/clamm/index.js +2 -2
  44. package/dist/src/modules/v4/accounting/accounting.controller.js +2 -1
  45. package/dist/src/modules/v4/accounting/accounting.repository.d.ts +1 -1
  46. package/dist/src/modules/v4/accounting/accounting.service.d.ts +1 -1
  47. package/dist/src/modules/v4/blacklist/blacklist.service.d.ts +1 -1
  48. package/dist/src/modules/v4/blacklist/blacklist.service.js +2 -2
  49. package/dist/src/modules/v4/campaign/campaign.controller.js +1 -1
  50. package/dist/src/modules/v4/campaign/campaign.repository.d.ts +1 -1
  51. package/dist/src/modules/v4/campaign/campaign.repository.js +1 -1
  52. package/dist/src/modules/v4/campaign/campaign.service.d.ts +1 -1
  53. package/dist/src/modules/v4/campaign/campaign.service.js +1 -1
  54. package/dist/src/modules/v4/campaign/campaign.test.controller.js +3 -3
  55. package/dist/src/modules/v4/chain/chain.service.js +1 -1
  56. package/dist/src/modules/v4/claims/claims.service.d.ts +2 -2
  57. package/dist/src/modules/v4/claims/claims.service.js +2 -2
  58. package/dist/src/modules/v4/coingecko/coingecko.service.js +1 -1
  59. package/dist/src/modules/v4/computedValue/computedValue.controller.js +1 -1
  60. package/dist/src/modules/v4/dynamicData/dynamicData.service.js +4 -4
  61. package/dist/src/modules/v4/liquidity/implementations/AjnaPositionFetcher.d.ts +1 -1
  62. package/dist/src/modules/v4/liquidity/implementations/AjnaPositionFetcher.js +1 -1
  63. package/dist/src/modules/v4/liquidity/implementations/BadgerPositionFetcher.d.ts +1 -1
  64. package/dist/src/modules/v4/liquidity/implementations/BadgerPositionFetcher.js +1 -1
  65. package/dist/src/modules/v4/liquidity/implementations/ClammPositionFetcher.d.ts +1 -1
  66. package/dist/src/modules/v4/liquidity/implementations/ClammPositionFetcher.js +1 -1
  67. package/dist/src/modules/v4/liquidity/implementations/DolomitePositionFetcher.d.ts +1 -1
  68. package/dist/src/modules/v4/liquidity/implementations/DolomitePositionFetcher.js +1 -1
  69. package/dist/src/modules/v4/liquidity/implementations/ERC20PositionFetcher.d.ts +2 -2
  70. package/dist/src/modules/v4/liquidity/implementations/ERC20PositionFetcher.js +1 -1
  71. package/dist/src/modules/v4/liquidity/implementations/EulerPositionFetcher.d.ts +1 -1
  72. package/dist/src/modules/v4/liquidity/liquidity.model.d.ts +1 -1
  73. package/dist/src/modules/v4/liquidity/liquidity.service.js +1 -1
  74. package/dist/src/modules/v4/merklRoot/merklRoot.service.js +1 -1
  75. package/dist/src/modules/v4/opportunity/opportunity.controller.js +1 -1
  76. package/dist/src/modules/v4/opportunity/opportunity.converter.d.ts +2 -2
  77. package/dist/src/modules/v4/opportunity/opportunity.converter.js +3 -3
  78. package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +1 -1
  79. package/dist/src/modules/v4/opportunity/opportunity.repository.js +1 -1
  80. package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +1 -1
  81. package/dist/src/modules/v4/opportunity/opportunity.service.js +1 -1
  82. package/dist/src/modules/v4/opportunity/transform-id.pipe.js +1 -1
  83. package/dist/src/modules/v4/protocol/protocol.service.js +1 -1
  84. package/dist/src/modules/v4/reward/reward.controller.js +1 -1
  85. package/dist/src/modules/v4/reward/reward.repository.js +1 -1
  86. package/dist/src/modules/v4/reward/reward.service.d.ts +1 -1
  87. package/dist/src/modules/v4/reward/reward.service.js +8 -8
  88. package/dist/src/modules/v4/router.d.ts +6 -6
  89. package/dist/src/modules/v4/router.js +1 -1
  90. package/dist/src/modules/v4/status/status.model.d.ts +2 -2
  91. package/dist/src/modules/v4/status/status.repository.d.ts +1 -1
  92. package/dist/src/modules/v4/status/status.repository.js +1 -1
  93. package/dist/src/modules/v4/status/status.service.d.ts +2 -1
  94. package/dist/src/modules/v4/status/status.service.js +2 -2
  95. package/dist/src/modules/v4/token/token.controller.js +4 -3
  96. package/dist/src/modules/v4/token/token.service.js +1 -1
  97. package/dist/src/modules/v4/uniswap/uniswap.controller.d.ts +2 -2
  98. package/dist/src/modules/v4/uniswap/uniswap.controller.js +1 -1
  99. package/dist/src/modules/v4/uniswap/uniswap.service.d.ts +2 -2
  100. package/dist/src/modules/v4/uniswap/uniswap.service.js +5 -5
  101. package/dist/src/modules/v4/user/user.controller.d.ts +2 -2
  102. package/dist/src/modules/v4/user/user.controller.js +2 -2
  103. package/dist/src/modules/v4/user/user.service.js +1 -1
  104. package/dist/src/routes/v3/app.js +1 -1
  105. package/dist/src/routes/v3/blacklist.js +1 -1
  106. package/dist/src/routes/v3/campaignUnclaimed.js +1 -1
  107. package/dist/src/routes/v3/campaigns.js +1 -1
  108. package/dist/src/routes/v3/campaignsForMainParameter.js +1 -1
  109. package/dist/src/routes/v3/campaignsRewardsReport.js +1 -1
  110. package/dist/src/routes/v3/euler.js +1 -1
  111. package/dist/src/routes/v3/recipients.js +1 -1
  112. package/dist/src/routes/v3/rewards.js +1 -1
  113. package/dist/src/routes/v3/rewardsReport.js +1 -1
  114. package/dist/src/routes/v3/uniswapv4.js +1 -1
  115. package/dist/src/routes/v3/userRewards.js +2 -1
  116. package/dist/src/scripts/reparse-opportunities.js +1 -1
  117. package/dist/tsconfig.package.tsbuildinfo +1 -1
  118. package/package.json +1 -1
  119. package/dist/src/modules/v4/accounting/index.d.ts +0 -3
  120. package/dist/src/modules/v4/accounting/index.js +0 -3
  121. package/dist/src/modules/v4/apr/index.d.ts +0 -2
  122. package/dist/src/modules/v4/apr/index.js +0 -2
  123. package/dist/src/modules/v4/blacklist/index.d.ts +0 -3
  124. package/dist/src/modules/v4/blacklist/index.js +0 -3
  125. package/dist/src/modules/v4/boost/index.d.ts +0 -2
  126. package/dist/src/modules/v4/boost/index.js +0 -2
  127. package/dist/src/modules/v4/cache/index.d.ts +0 -1
  128. package/dist/src/modules/v4/cache/index.js +0 -1
  129. package/dist/src/modules/v4/campaign/index.d.ts +0 -2
  130. package/dist/src/modules/v4/campaign/index.js +0 -2
  131. package/dist/src/modules/v4/creator/index.d.ts +0 -3
  132. package/dist/src/modules/v4/creator/index.js +0 -3
  133. package/dist/src/modules/v4/merklRoot/index.d.ts +0 -3
  134. package/dist/src/modules/v4/merklRoot/index.js +0 -3
  135. package/dist/src/modules/v4/opportunity/index.d.ts +0 -3
  136. package/dist/src/modules/v4/opportunity/index.js +0 -3
  137. package/dist/src/modules/v4/reward/index.d.ts +0 -2
  138. package/dist/src/modules/v4/reward/index.js +0 -2
@@ -1,8 +1,8 @@
1
- import { CacheService } from "@/modules/v4/cache";
2
1
  import { TTLPresets } from "@/modules/v4/cache/cache.model";
2
+ import { CacheService } from "@/modules/v4/cache/cache.service";
3
3
  import { ChainService } from "@/modules/v4/chain/chain.service";
4
4
  import { MerklRootRepository } from "@/modules/v4/merklRoot/merklRoot.repository";
5
- import { OpportunityService } from "@/modules/v4/opportunity";
5
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
6
6
  import { log } from "@/utils/logger";
7
7
  import { NETWORK_LABELS } from "@sdk";
8
8
  const main = async () => {
@@ -1,5 +1,5 @@
1
- import { CacheService } from "@/modules/v4/cache";
2
1
  import { TTLPresets } from "@/modules/v4/cache/cache.model";
2
+ import { CacheService } from "@/modules/v4/cache/cache.service";
3
3
  import { UniswapService } from "@/modules/v4/uniswap/uniswap.service";
4
4
  async function main() {
5
5
  try {
@@ -1,6 +1,6 @@
1
- // @ts-nocheck
2
- import { CacheService } from "@/modules/v4/cache";
3
1
  import { TTLPresets } from "@/modules/v4/cache/cache.model";
2
+ // @ts-nocheck
3
+ import { CacheService } from "@/modules/v4/cache/cache.service";
4
4
  import { ChainInteractionService } from "@/modules/v4/chainInteraction/chainInteraction.service";
5
5
  import { log } from "@/utils/logger";
6
6
  import { Pricer } from "@/utils/pricer";
@@ -1,7 +1,8 @@
1
1
  import { AuthorizationHeadersDto, BackOfficeGuard } from "@/guards/BackOffice.guard";
2
- import { AccountingService, ChainDto, DateDto, GetTransactionsQueryModel, RevenuesDto, TokensDateDto, TokensDto, } from "@/modules/v4/accounting";
3
2
  import { throwOnInvalidRequiredAddress, throwOnUnsupportedChainId } from "@/utils/throw";
4
3
  import Elysia from "elysia";
4
+ import { ChainDto, DateDto, GetTransactionsQueryModel, RevenuesDto, TokensDateDto, TokensDto, } from "./accounting.model";
5
+ import { AccountingService } from "./accounting.service";
5
6
  export const AccountingController = new Elysia({ prefix: "/accounting", detail: { tags: ["Accounting"], hide: true } })
6
7
  .get("/", async ({ query }) => await AccountingService.findMany(query), {
7
8
  query: GetTransactionsQueryModel,
@@ -1,4 +1,4 @@
1
- import type { GetTransactionsQueryModel } from "@/modules/v4/accounting";
1
+ import type { GetTransactionsQueryModel } from "@/modules/v4/accounting/accounting.model";
2
2
  export declare class AccountingRepository {
3
3
  static findMany(query: GetTransactionsQueryModel): Promise<{
4
4
  id: string;
@@ -1,4 +1,4 @@
1
- import type { GetTransactionsQueryModel } from "@/modules/v4/accounting";
1
+ import type { GetTransactionsQueryModel } from "@/modules/v4/accounting/accounting.model";
2
2
  import { ChainId } from "@sdk";
3
3
  export declare class AccountingService {
4
4
  static hashId(chainId: ChainId, fromTokenId: string, toTokenId: string, timestamp: number): string;
@@ -1,5 +1,5 @@
1
1
  import type { ChainId } from "@sdk";
2
- import type { AddBlacklistModel } from ".";
2
+ import type { AddBlacklistModel } from "./blacklist.model";
3
3
  export declare class BlacklistService {
4
4
  static hashId(chainId: ChainId, userAddress: string, poolAddress: string): string;
5
5
  static findMany(): Promise<{
@@ -1,6 +1,6 @@
1
+ import { TTLPresets } from "@/modules/v4/cache/cache.model";
2
+ import { CacheService } from "@/modules/v4/cache/cache.service";
1
3
  import { utils } from "ethers";
2
- import { CacheService } from "../cache";
3
- import { TTLPresets } from "../cache/cache.model";
4
4
  import { BlacklistRepository } from "./blacklist.repository";
5
5
  export class BlacklistService {
6
6
  static hashId(chainId, userAddress, poolAddress) {
@@ -1,11 +1,11 @@
1
1
  import { HttpError, NotFoundError } from "@/errors";
2
2
  import { BackOfficeGuard } from "@/guards/BackOffice.guard";
3
3
  import { AuthorizationHeadersDto, EngineGuard } from "@/guards/Engine.guard";
4
+ import { CacheService } from "@/modules/v4/cache/cache.service";
4
5
  import { ChainUniqueDto } from "@/modules/v4/chain/chain.model";
5
6
  import { Campaign } from "@sdk";
6
7
  import Elysia, { t } from "elysia";
7
8
  import { throwOnUnsupportedChainId } from "src/utils/throw";
8
- import { CacheService } from "../cache";
9
9
  import { TTLPresets } from "../cache/cache.model";
10
10
  import { DynamicDataService } from "../dynamicData/dynamicData.service";
11
11
  import { OpportunityConvertorService } from "../opportunity/opportunity.converter";
@@ -1,4 +1,4 @@
1
- import type { CampaignUnique, CampaignWithParams, GetCampaignQueryModel } from "@/modules/v4/campaign";
1
+ import type { CampaignUnique, CampaignWithParams, GetCampaignQueryModel } from "@/modules/v4/campaign/campaign.model";
2
2
  import { type CampaignManualOverride, Prisma } from "@db/api";
3
3
  import { type ChainId } from "@sdk";
4
4
  export declare abstract class CampaignRepository {
@@ -1,10 +1,10 @@
1
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
1
2
  import { CannotUpdateOpportunityLastCreatedAt } from "@/utils/error";
2
3
  import { log } from "@/utils/logger";
3
4
  import { apiDbClient, engineDbClient } from "@db";
4
5
  import { Prisma, RunStatus } from "@db/api";
5
6
  import { MAX_COMPUTE_JOB_TIME } from "@sdk";
6
7
  import moment from "moment";
7
- import { OpportunityService } from "../opportunity";
8
8
  export class CampaignRepository {
9
9
  static transformQueryToPrismaFilters(query) {
10
10
  const { creatorTag, creatorId, creatorAddress, chainId, distributionChainIds, endTimestamp, opportunityId, mainParameter, campaignId, startTimestamp, status, subType, type, types, tokenAddress, tokenSymbol, test, createdAfter, point, } = query;
@@ -1,4 +1,4 @@
1
- import type { CampaignConfigMinimalModel, CampaignUnique, CampaignWithParams, CreateCampaignModel, GetCampaignQueryModel, UpdateCampaignCreatorModel, UpdateCampaignModel, UpdateMetaDataCampaignModel } from "@/modules/v4/campaign";
1
+ import type { CampaignConfigMinimalModel, CampaignUnique, CampaignWithParams, CreateCampaignModel, GetCampaignQueryModel, UpdateCampaignCreatorModel, UpdateCampaignModel, UpdateMetaDataCampaignModel } from "@/modules/v4/campaign/campaign.model";
2
2
  import type { CampaignManualOverride } from "@db/api";
3
3
  import { type CampaignParameters, Campaign as CampaignType, type ChainId } from "@sdk";
4
4
  import type { GetCampaignComputedValueModel } from "../computedValue/computedValue.model";
@@ -1,5 +1,5 @@
1
1
  import { HttpError } from "@/errors";
2
- import { OpportunityService } from "@/modules/v4/opportunity";
2
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
3
3
  import { StatusService } from "@/modules/v4/status/status.service";
4
4
  import { TokenService } from "@/modules/v4/token/token.service";
5
5
  import { CannotParseOpportunity, InvalidParameter } from "@/utils/error";
@@ -2,12 +2,12 @@ import { NotFoundError } from "@/errors";
2
2
  import { InvalidParameter } from "@/errors/InvalidParameter.error";
3
3
  import { BackOfficeGuard } from "@/guards/BackOffice.guard";
4
4
  import { AuthorizationHeadersDto } from "@/guards/Engine.guard";
5
+ import { DynamicDataSourceIdentifier } from "@/modules/v4/dynamicData/dynamicData.model";
6
+ import { DynamicDataService } from "@/modules/v4/dynamicData/dynamicData.service";
7
+ import { OpportunityConvertorService } from "@/modules/v4/opportunity/opportunity.converter";
5
8
  import { throwOnUnsupportedChainId } from "@/utils/throw";
6
9
  import { Campaign as CampaignType } from "@sdk";
7
10
  import Elysia, { t } from "elysia";
8
- import { DynamicDataSourceIdentifier } from "../dynamicData/dynamicData.model";
9
- import { DynamicDataService } from "../dynamicData/dynamicData.service";
10
- import { OpportunityConvertorService } from "../opportunity/opportunity.converter";
11
11
  import { CampaignConfigMinimal, CampaignsDto } from "./campaign.model";
12
12
  import { CampaignService } from "./campaign.service";
13
13
  // ─── Routes for dev and test only ──────────────────────────────────────────────
@@ -1,5 +1,5 @@
1
+ import { CacheService } from "@/modules/v4/cache/cache.service";
1
2
  import { DistributorService } from "@sdk";
2
- import { CacheService } from "../cache";
3
3
  import { TTLPresets } from "../cache/cache.model";
4
4
  import { ChainRepository } from "./chain.repository";
5
5
  export class ChainService {
@@ -1,6 +1,6 @@
1
+ import type { Token } from "@/modules/v4/token/token.model";
2
+ import type { UserUniqueModel } from "@/modules/v4/user/user.model";
1
3
  import type { ChainId } from "@sdk";
2
- import type { Token } from "../token/token.model";
3
- import type { UserUniqueModel } from "../user/user.model";
4
4
  import type { ClaimModel } from "./claims.model";
5
5
  export declare abstract class ClaimService {
6
6
  static getHistoricalClaims(params: UserUniqueModel, chainFilter?: ChainId[]): Promise<(ClaimModel & {
@@ -1,5 +1,5 @@
1
- import { MerklRootService } from "../merklRoot";
2
- import { RewardService } from "../reward";
1
+ import { MerklRootService } from "@/modules/v4/merklRoot/merklRoot.service";
2
+ import { RewardService } from "@/modules/v4/reward/reward.service";
3
3
  import { ClaimRepository } from "./claims.repository";
4
4
  export class ClaimService {
5
5
  // ─── Get Historical Claims ─────────────────────────────────────────────────
@@ -1,4 +1,4 @@
1
- import { CacheService } from "@/modules/v4/cache";
1
+ import { CacheService } from "@/modules/v4/cache/cache.service";
2
2
  import { PriceService } from "@/modules/v4/price/price.service";
3
3
  import { log } from "@/utils/logger";
4
4
  import { NETWORK_LABELS } from "@sdk";
@@ -1,7 +1,7 @@
1
1
  import { AuthorizationHeadersDto, EngineGuard } from "@/guards/Engine.guard";
2
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
3
  import { throwOnInvalidRequiredAddress } from "@/utils/throw";
3
4
  import Elysia from "elysia";
4
- import { CampaignService } from "../campaign";
5
5
  import { GetCampaignComputedValue, GetUserComputedValues, UpsertCampaignComputedValue, UpsertUserComputedValues, } from "./computedValue.model";
6
6
  import { ComputedValueService } from "./computedValue.service";
7
7
  export const ComputedValueController = new Elysia({
@@ -2,6 +2,10 @@ import { dynamicDataBuilderFactory } from "@/engine/deprecated/dynamicData/facto
2
2
  import { campaignTVLBuilderFactory } from "@/engine/tvl/factory";
3
3
  import { HttpError } from "@/errors";
4
4
  import { InvalidParameter } from "@/errors/InvalidParameter.error";
5
+ import { ComputedValueService } from "@/modules/v4//computedValue/computedValue.service";
6
+ import { TokenService } from "@/modules/v4//token/token.service";
7
+ import { AprService } from "@/modules/v4/apr/apr.service";
8
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
5
9
  import { OpportunityRepository } from "@/modules/v4/opportunity/opportunity.repository";
6
10
  import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
7
11
  import { RewardService } from "@/modules/v4/reward/reward.service";
@@ -12,10 +16,6 @@ import { parseDistributionType } from "@/utils/parseDistributionType";
12
16
  import { AprType, DistributionType } from "@db/api";
13
17
  import { Campaign as CampaignType, DAY, NETWORK_LABELS, bigIntToNumber, } from "@sdk";
14
18
  import moment from "moment";
15
- import { AprService } from "../apr";
16
- import { CampaignService } from "../campaign";
17
- import { ComputedValueService } from "../computedValue/computedValue.service";
18
- import { TokenService } from "../token/token.service";
19
19
  export class DynamicDataService {
20
20
  /**
21
21
  * @notice Updates all records for opportunities associated to the given campaigns
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
3
  import type { PositionFetcher } from "../liquidity.model";
4
4
  export declare class AjnaPositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<import("../liquidity.model").PositionT[]>;
@@ -1,6 +1,6 @@
1
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
1
2
  import { AjnaSubCampaignType, BN2Number, Campaign, ChainInteractionService, NETWORK_LABELS, POOL_INFO_UTILS, PoolInfoUtilsInterface, } from "@sdk";
2
3
  import axios from "axios";
3
- import { CampaignService } from "../../campaign";
4
4
  const campaignType = Campaign.AJNA;
5
5
  export class AjnaPositionFetcher {
6
6
  fetchPositions = async (chainId, user, opportunities) => {
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
3
  import type { PositionFetcher, PositionT } from "../liquidity.model";
4
4
  export declare class BadgerPositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<PositionT[]>;
@@ -1,6 +1,6 @@
1
1
  import { CDPMANAGER_ADDRESS, SORTEDCDPS_ADDRESS } from "@/constants";
2
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
3
  import { BN2Number, Campaign, CdpManagerInterface, ChainInteractionService, ERC20Interface, SortedCdpsInterface, } from "@sdk";
3
- import { CampaignService } from "../../campaign";
4
4
  const campaignType = Campaign.BADGER;
5
5
  export class BadgerPositionFetcher {
6
6
  fetchPositions = async (chainId, user, opportunities) => {
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
3
  import type { PositionFetcher, PositionT } from "../liquidity.model";
4
4
  export declare class ClammPositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<PositionT[]>;
@@ -1,6 +1,6 @@
1
1
  import { getClammUserPositions } from "@/libs/positions/clamm";
2
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
3
  import { Campaign } from "@sdk";
3
- import { CampaignService } from "../../campaign";
4
4
  const campaignType = Campaign.CLAMM;
5
5
  export class ClammPositionFetcher {
6
6
  fetchPositions = async (chainId, user, opportunities) => {
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
3
  import type { PositionFetcher } from "../liquidity.model";
4
4
  export declare class DolomitePositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<import("../liquidity.model").PositionT[]>;
@@ -1,6 +1,6 @@
1
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
1
2
  import { Campaign } from "@sdk";
2
3
  import { utils } from "ethers";
3
- import { CampaignService } from "../../campaign";
4
4
  import { LiquidityRepository } from "../liquidity.repository";
5
5
  const campaignType = Campaign.DOLOMITE;
6
6
  export class DolomitePositionFetcher {
@@ -1,6 +1,6 @@
1
+ import type { PositionFetcher, PositionT } from "@/modules/v4/liquidity/liquidity.model";
2
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
3
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
- import type { PositionFetcher, PositionT } from "../liquidity.model";
4
4
  export declare class ERC20PositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<PositionT[]>;
6
6
  }
@@ -1,5 +1,5 @@
1
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
1
2
  import { BN2Number, Campaign, ChainInteractionService, ERC20Interface } from "@sdk";
2
- import { CampaignService } from "../../campaign";
3
3
  const campaignType = Campaign.ERC20;
4
4
  export class ERC20PositionFetcher {
5
5
  fetchPositions = async (chainId, user, opportunities) => {
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import { type MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../../opportunity";
3
3
  import type { PositionFetcher, PositionT } from "../liquidity.model";
4
4
  export declare class EulerPositionFetcher implements PositionFetcher {
5
5
  fetchPositions: (chainId: MerklChainId, user: string, opportunities: Opportunity["model"][]) => Promise<PositionT[]>;
@@ -1,5 +1,5 @@
1
+ import type { Opportunity } from "@/modules/v4/opportunity/opportunity.model";
1
2
  import type { MerklChainId } from "@sdk";
2
- import type { Opportunity } from "../opportunity";
3
3
  export type PositionT = {
4
4
  flags: {
5
5
  range?: string;
@@ -1,6 +1,6 @@
1
1
  import { MERKL_USER_POSITION_FETCHING_GLOBAL_TIMEOUT } from "@/constants";
2
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
2
3
  import { Campaign, withTimeout } from "@sdk";
3
- import { OpportunityService } from "../opportunity";
4
4
  import { AjnaPositionFetcher } from "./implementations/AjnaPositionFetcher";
5
5
  import { BadgerPositionFetcher } from "./implementations/BadgerPositionFetcher";
6
6
  import { ClammPositionFetcher } from "./implementations/ClammPositionFetcher";
@@ -1,6 +1,6 @@
1
+ import { CacheService } from "@/modules/v4/cache/cache.service";
1
2
  import { log } from "@/utils/logger";
2
3
  import { NETWORK_LABELS } from "@sdk";
3
- import { CacheService } from "../cache";
4
4
  import { TTLPresets } from "../cache/cache.model";
5
5
  import { ChainService } from "../chain/chain.service";
6
6
  import { MerklRootRepository } from "./merklRoot.repository";
@@ -1,10 +1,10 @@
1
1
  import { HttpErrorDto, NotFoundError, NotFoundErrorDto } from "@/errors";
2
2
  import { BackOfficeGuard } from "@/guards/BackOffice.guard";
3
3
  import { AuthorizationHeadersDto, TokenAuthGuard } from "@/guards/TokenAuth.guard";
4
+ import { GetCampaignQueryDto } from "@/modules/v4/campaign/campaign.model";
4
5
  import { log } from "@/utils/logger";
5
6
  import { ChainId } from "@sdk";
6
7
  import Elysia, { t } from "elysia";
7
- import { GetCampaignQueryDto } from "../campaign";
8
8
  import { CreateOpportunityDto, GetOpportunitiesQueryDto, GetOpportunityQueryDto, OpportunityAggregateFieldDto, OpportunityDeleteOverrideDto, OpportunityOverrideDto, OpportunityResourceDto, OpportunityUniqueDto, OpportunityUniqueUpdateDto, OpportunityWithCampaignsResourceDto, } from "./opportunity.model";
9
9
  import { OpportunityService } from "./opportunity.service";
10
10
  import { transformId } from "./transform-id.pipe";
@@ -1,6 +1,6 @@
1
+ import type { CampaignWithParams } from "@/modules/v4/campaign/campaign.model";
2
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
1
3
  import { type CampaignParameters, Campaign as CampaignType, type Opportunity as OpportunityV3 } from "@sdk";
2
- import type { CampaignWithParams } from "../campaign";
3
- import { OpportunityService } from "./opportunity.service";
4
4
  export declare abstract class OpportunityConvertorService {
5
5
  #private;
6
6
  static convertV4CampaignToV3<C extends CampaignType>(campaignType: C, campaign: Exclude<Awaited<ReturnType<(typeof OpportunityService)["findMany"]>>[number]["campaigns"], undefined>[number] | Omit<CampaignWithParams<C>, "manualOverrides">, opportunityIdentifier: string): CampaignParameters<C>;
@@ -1,10 +1,10 @@
1
+ import { TTLPresets } from "@/modules/v4/cache/cache.model";
2
+ import { CacheService } from "@/modules/v4/cache/cache.service";
3
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
1
4
  import { kebabToPascalCase } from "@/utils/caseChanges";
2
5
  import { log } from "@/utils/logger";
3
6
  import { Campaign as CampaignType, EAprBreakdownType, opportunityActions, } from "@sdk";
4
7
  import moment from "moment";
5
- import { CacheService } from "../cache";
6
- import { TTLPresets } from "../cache/cache.model";
7
- import { OpportunityService } from "./opportunity.service";
8
8
  export class OpportunityConvertorService {
9
9
  static convertV4CampaignToV3(campaignType, campaign, opportunityIdentifier) {
10
10
  return {
@@ -1,6 +1,6 @@
1
1
  import type { AprRecord } from "@/modules/v4/apr/apr.model";
2
2
  import type { Campaign } from "@/modules/v4/campaign/campaign.model";
3
- import { type DailyRewardsRecord } from "@/modules/v4/reward";
3
+ import type { DailyRewardsRecord } from "@/modules/v4/reward/reward.model";
4
4
  import type { TvlRecord } from "@/modules/v4/tvl/tvl.model";
5
5
  import { type Prisma, Status } from "@db/api";
6
6
  import type { MerklChainId } from "@sdk";
@@ -1,6 +1,6 @@
1
1
  import { AprService } from "@/modules/v4/apr/apr.service";
2
2
  import { ProtocolService } from "@/modules/v4/protocol/protocol.service";
3
- import { RewardService } from "@/modules/v4/reward";
3
+ import { RewardService } from "@/modules/v4/reward/reward.service";
4
4
  import { TvlService } from "@/modules/v4/tvl/tvl.service";
5
5
  import { log } from "@/utils/logger";
6
6
  import { apiDbClient } from "@db";
@@ -1,4 +1,4 @@
1
- import { type CampaignWithParams, type GetCampaignQueryModel } from "@/modules/v4/campaign";
1
+ import type { CampaignWithParams, GetCampaignQueryModel } from "@/modules/v4/campaign/campaign.model";
2
2
  import { type OpportunityManualOverride, type Prisma } from "@db/api";
3
3
  import { type MerklChainId } from "@sdk";
4
4
  import type { CreateOpportunityModel, GetOpportunitiesQueryModel, LightOpportunityFromDB, Opportunity, OpportunityOverrideModel, OpportunityResourceModel, OpportunityUnique } from "./opportunity.model";
@@ -1,8 +1,8 @@
1
1
  import { NotFoundError } from "@/errors";
2
2
  import { TTLPresets } from "@/modules/v4/cache/cache.model";
3
3
  import { CacheService } from "@/modules/v4/cache/cache.service";
4
- import { CampaignService } from "@/modules/v4/campaign";
5
4
  import { CampaignRepository } from "@/modules/v4/campaign/campaign.repository";
5
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
6
6
  import { TokenService } from "@/modules/v4/token/token.service";
7
7
  import { UserService } from "@/modules/v4/user/user.service";
8
8
  import { log } from "@/utils/logger";
@@ -1,4 +1,4 @@
1
- import { CampaignService } from "../campaign";
1
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
2
  export function transformId({ params }) {
3
3
  const [chainId, type, campaignId] = params.id.split("-");
4
4
  if (!Number.isNaN(+type))
@@ -1,8 +1,8 @@
1
+ import { CacheService } from "@/modules/v4/cache/cache.service";
1
2
  import { ChainService } from "@/modules/v4/chain/chain.service";
2
3
  import { TokenService } from "@/modules/v4/token/token.service";
3
4
  import { log } from "@/utils/logger";
4
5
  import { BucketService } from "../bucket/bucket.service";
5
- import { CacheService } from "../cache";
6
6
  import { TTLPresets } from "../cache/cache.model";
7
7
  import { IconService } from "../icon/icon.service";
8
8
  import { ProtocolRepository } from "./protocol.repository";
@@ -1,11 +1,11 @@
1
1
  import { BackOfficeGuard } from "@/guards/BackOffice.guard";
2
2
  import { AuthorizationHeadersDto, EngineGuard } from "@/guards/Engine.guard";
3
3
  import { ChainDto } from "@/modules/v4/accounting/accounting.model";
4
+ import { CacheService } from "@/modules/v4/cache/cache.service";
4
5
  import { CampaignService } from "@/modules/v4/campaign/campaign.service";
5
6
  import { TokenService } from "@/modules/v4/token/token.service";
6
7
  import { throwOnInvalidRequiredAddress, throwOnUnsupportedChainId } from "@/utils/throw";
7
8
  import Elysia, { t } from "elysia";
8
- import { CacheService } from "../cache";
9
9
  import { TTLPresets } from "../cache/cache.model";
10
10
  import { CampaignIdDto, CampaignIdWithoutPageDto, CampaignRewardsDto, CreateManyBreakdownDto, CreateManyRewardDto, RegisterClaimsDto, TokenIdDto, } from "./reward.model";
11
11
  import { RewardService } from "./reward.service";
@@ -1,10 +1,10 @@
1
1
  import { Campaign, Reward, RewardBreakdown } from "@db/api:drizzle";
2
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
3
  import { TokenService } from "@/modules/v4/token/token.service";
3
4
  import { UserService } from "@/modules/v4/user/user.service";
4
5
  import { apiDbClient } from "@db";
5
6
  import { DAY } from "@sdk";
6
7
  import { and, eq, exists, inArray, sql } from "drizzle-orm";
7
- import { CampaignService } from "../campaign";
8
8
  import { RewardService } from "./reward.service";
9
9
  export class RewardRepository {
10
10
  static async createManyReward(rewards) {
@@ -1,7 +1,7 @@
1
1
  import type { CacheKeys } from "@/cache/keys";
2
+ import type { LightOpportunityFromDB, Opportunity } from "@/modules/v4/opportunity/opportunity.model";
2
3
  import type { Chain } from "@db/api";
3
4
  import { type CampaignDynamicData, Campaign as CampaignType, type ChainId, type MerklChainId } from "@sdk";
4
- import { type LightOpportunityFromDB, type Opportunity } from "../opportunity";
5
5
  import type { CampaignIdModel, CampaignIdWithoutPageModel, CreateManyBreakdownModel, CreateManyRewardModel, DailyRewardsRecord, RegisterClaimsModel, RewardBreakdown, TokenIdModel } from "./reward.model";
6
6
  import { RewardRepository } from "./reward.repository";
7
7
  export declare abstract class RewardService {
@@ -1,14 +1,14 @@
1
+ import { BlacklistService } from "@/modules/v4/blacklist/blacklist.service";
2
+ import { TTLPresets } from "@/modules/v4/cache/cache.model";
3
+ import { CacheService } from "@/modules/v4/cache/cache.service";
4
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
5
+ import { ChainService } from "@/modules/v4/chain/chain.service";
6
+ import { MerklRootService } from "@/modules/v4/merklRoot/merklRoot.service";
7
+ import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
8
+ import { TokenService } from "@/modules/v4/token/token.service";
1
9
  import { log } from "@/utils/logger";
2
10
  import { Campaign as CampaignType, DAY, DistributorService, NETWORK_LABELS, } from "@sdk";
3
11
  import moment from "moment";
4
- import { BlacklistService } from "../blacklist";
5
- import { CacheService } from "../cache";
6
- import { TTLPresets } from "../cache/cache.model";
7
- import { CampaignService } from "../campaign";
8
- import { ChainService } from "../chain/chain.service";
9
- import { MerklRootService } from "../merklRoot";
10
- import { OpportunityService } from "../opportunity";
11
- import { TokenService } from "../token/token.service";
12
12
  import { RewardRepository } from "./reward.repository";
13
13
  export class RewardService {
14
14
  static hashId(root, recipient, rewardTokenId) {
@@ -2824,7 +2824,7 @@ export declare const v4: Elysia<"/v4", false, {
2824
2824
  };
2825
2825
  headers: unknown;
2826
2826
  response: {
2827
- 200: import("./reward").BreakdownForCampaignsRaw[];
2827
+ 200: import("./reward/reward.model").BreakdownForCampaignsRaw[];
2828
2828
  };
2829
2829
  };
2830
2830
  };
@@ -3721,7 +3721,7 @@ export declare const v4: Elysia<"/v4", false, {
3721
3721
  response: {
3722
3722
  200: (Omit<{
3723
3723
  chain: import("@db/api").Chain;
3724
- rewards: Awaited<ReturnType<typeof import("./reward").RewardService["format"]>>;
3724
+ rewards: Awaited<ReturnType<typeof import("./reward/reward.service").RewardService["format"]>>;
3725
3725
  }, "rewards"> & {
3726
3726
  rewards: (Omit<{
3727
3727
  token: {
@@ -3811,7 +3811,7 @@ export declare const v4: Elysia<"/v4", false, {
3811
3811
  proofs: string[];
3812
3812
  }, "breakdowns"> & {
3813
3813
  breakdowns: {
3814
- opportunity: import("@/modules/v4/opportunity").Opportunity["model"];
3814
+ opportunity: import("./opportunity/opportunity.model").Opportunity["model"];
3815
3815
  claimed: bigint;
3816
3816
  amount: bigint;
3817
3817
  pending: bigint;
@@ -3844,7 +3844,7 @@ export declare const v4: Elysia<"/v4", false, {
3844
3844
  response: {
3845
3845
  200: (Omit<{
3846
3846
  chain: import("@db/api").Chain;
3847
- rewards: Awaited<ReturnType<typeof import("./reward").RewardService["format"]>>;
3847
+ rewards: Awaited<ReturnType<typeof import("./reward/reward.service").RewardService["format"]>>;
3848
3848
  }, "rewards"> & {
3849
3849
  rewards: (Omit<{
3850
3850
  token: {
@@ -5259,7 +5259,7 @@ export declare const v4: Elysia<"/v4", false, {
5259
5259
  pending: string;
5260
5260
  reason: string;
5261
5261
  rewardToken: import("./token/token.model").Token["model"];
5262
- opportunity: import("@/modules/v4/opportunity").Opportunity["model"];
5262
+ opportunity: import("./opportunity/opportunity.model").Opportunity["model"];
5263
5263
  }[]>>;
5264
5264
  };
5265
5265
  };
@@ -5288,7 +5288,7 @@ export declare const v4: Elysia<"/v4", false, {
5288
5288
  pending: string;
5289
5289
  reason: string;
5290
5290
  rewardToken: import("./token/token.model").Token["model"];
5291
- opportunity: import("@/modules/v4/opportunity").Opportunity["model"];
5291
+ opportunity: import("./opportunity/opportunity.model").Opportunity["model"];
5292
5292
  }[]>>;
5293
5293
  };
5294
5294
  };
@@ -11,7 +11,7 @@ import { ExplorerController } from "@/modules/v4/explorer/explorer.controller";
11
11
  import { InteractionController } from "@/modules/v4/interaction/interaction.controller";
12
12
  import { LiquidityController } from "@/modules/v4/liquidity/liquidity.controller";
13
13
  import { MerklRootController } from "@/modules/v4/merklRoot/merklRoot.controller";
14
- import { OpportunityController } from "@/modules/v4/opportunity";
14
+ import { OpportunityController } from "@/modules/v4/opportunity/opportunity.controller";
15
15
  import { PriceController } from "@/modules/v4/price/price.controller";
16
16
  import { ProgramPayloadController } from "@/modules/v4/programPayload/programPayload.controller";
17
17
  import { ProtocolController } from "@/modules/v4/protocol/protocol.controller";
@@ -1,5 +1,5 @@
1
- import type { Campaign } from "../campaign";
2
- import type { Resource } from "../prisma";
1
+ import type { Campaign } from "@/modules/v4/campaign/campaign.model";
2
+ import type { Resource } from "@/modules/v4/prisma";
3
3
  export type Status = Resource<"CampaignStatus", "campaignId", {
4
4
  computedUntil: number;
5
5
  processingStarted: number;
@@ -1,5 +1,5 @@
1
+ import type { CampaignUnique } from "@/modules/v4/campaign/campaign.model";
1
2
  import type { Prisma, RunStatus } from "@db/api";
2
- import { type CampaignUnique } from "../campaign";
3
3
  import type { DelayModel, QueryCampaignStatus } from "./status.model";
4
4
  export declare abstract class StatusRepository {
5
5
  #private;
@@ -1,6 +1,6 @@
1
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
1
2
  import { apiDbClient } from "@db";
2
3
  import moment from "moment";
3
- import { CampaignService } from "../campaign";
4
4
  export class StatusRepository {
5
5
  static #formatQuery(query) {
6
6
  return {
@@ -1,4 +1,5 @@
1
- import { CampaignService, type CampaignUnique } from "../campaign";
1
+ import type { CampaignUnique } from "@/modules/v4/campaign/campaign.model";
2
+ import { CampaignService } from "@/modules/v4/campaign/campaign.service";
2
3
  import type { DelayModel, QueryCampaignStatus, UpdateStatusModel } from "./status.model";
3
4
  export declare abstract class StatusService {
4
5
  static format(status: Awaited<ReturnType<(typeof CampaignService)["findUniqueOrThrow"]>>["CampaignStatus"][number]): {