@merkl/api 0.19.6 → 0.19.8
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.
- package/dist/src/backgroundJobs/jobs/campaignsCacheUpdater.js +4 -3
- package/dist/src/eden/index.d.ts +85 -48
- package/dist/src/engine/dynamicData/factory.d.ts +3 -0
- package/dist/src/engine/dynamicData/factory.js +54 -0
- package/dist/src/engine/dynamicData/implementations/Ajna.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Ajna.js +101 -0
- package/dist/src/engine/dynamicData/implementations/Ambiant.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Ambiant.js +227 -0
- package/dist/src/engine/dynamicData/implementations/Badger.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Badger.js +84 -0
- package/dist/src/engine/dynamicData/implementations/Clamm.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Clamm.js +970 -0
- package/dist/src/engine/dynamicData/implementations/Compound.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Compound.js +136 -0
- package/dist/src/engine/dynamicData/implementations/Dolomite.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Dolomite.js +53 -0
- package/dist/src/engine/dynamicData/implementations/EigenLayer.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/EigenLayer.js +64 -0
- package/dist/src/engine/dynamicData/implementations/Encompassing.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Encompassing.js +26 -0
- package/dist/src/engine/dynamicData/implementations/Erc20.d.ts +6 -0
- package/dist/src/engine/dynamicData/implementations/Erc20.js +159 -0
- package/dist/src/engine/dynamicData/implementations/Erc20Snapshot.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Erc20Snapshot.js +32 -0
- package/dist/src/engine/dynamicData/implementations/EventBased.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/EventBased.js +104 -0
- package/dist/src/engine/dynamicData/implementations/Hyperdrive.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Hyperdrive.js +96 -0
- package/dist/src/engine/dynamicData/implementations/Morpho.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Morpho.js +109 -0
- package/dist/src/engine/dynamicData/implementations/Radiant.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/Radiant.js +117 -0
- package/dist/src/engine/dynamicData/implementations/Silo.d.ts +9 -0
- package/dist/src/engine/dynamicData/implementations/Silo.js +109 -0
- package/dist/src/engine/dynamicData/implementations/UniswapV4.d.ts +7 -0
- package/dist/src/engine/dynamicData/implementations/UniswapV4.js +249 -0
- package/dist/src/engine/dynamicData/implementations/Vest.d.ts +9 -0
- package/dist/src/engine/dynamicData/implementations/Vest.js +58 -0
- package/dist/src/engine/dynamicData/implementations/default.d.ts +5 -0
- package/dist/src/engine/dynamicData/implementations/default.js +5 -0
- package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getEulerV2Vaults.js +1 -1
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/GenericProcessor.d.ts +1 -1
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/tokenType.d.ts +2 -1
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/tokenType.js +2 -0
- package/dist/src/engine/erc20SubTypeProcessors/implementations/BunniV2Processor.d.ts +45 -0
- package/dist/src/engine/erc20SubTypeProcessors/implementations/BunniV2Processor.js +87 -0
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/processorMapping.js +2 -0
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound1.js +2 -0
- package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound2.d.ts +1 -1
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/Erc20.js +3 -3
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/Euler.d.ts +1 -1
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/Euler.js +7 -7
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/EventBased.d.ts +1 -1
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/EventBased.js +2 -2
- package/dist/src/{factories → engine}/opportunityMetadata/implementations/Vest.js +1 -1
- package/dist/src/index.d.ts +19 -16
- package/dist/src/jobs/update-euler-vaults.js +2 -2
- package/dist/src/modules/v4/apr/apr.service.d.ts +1 -1
- package/dist/src/modules/v4/apr/apr.service.js +4 -4
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +5 -0
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +1 -0
- package/dist/src/modules/v4/campaign/campaign.model.js +1 -0
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +4 -0
- package/dist/src/modules/v4/campaign/campaign.repository.js +2 -1
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +0 -8
- package/dist/src/modules/v4/campaign/campaign.service.js +0 -13
- package/dist/src/modules/v4/dynamicData/dynamicData.service.js +3 -4
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +8 -0
- package/dist/src/modules/v4/opportunity/opportunity.converter.js +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +2 -0
- package/dist/src/modules/v4/opportunity/opportunity.model.js +2 -0
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +1 -1
- package/dist/src/modules/v4/opportunity/opportunity.repository.js +14 -10
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.service.js +5 -5
- package/dist/src/modules/v4/router.d.ts +14 -0
- package/dist/src/modules/v4/token/token.controller.d.ts +1 -0
- package/dist/src/modules/v4/token/token.model.d.ts +1 -0
- package/dist/src/modules/v4/token/token.model.js +1 -0
- package/dist/src/modules/v4/token/token.service.d.ts +3 -1
- package/dist/src/modules/v4/token/token.service.js +18 -0
- package/dist/src/modules/v4/uniswapV4/uniswapV4.controller.d.ts +2 -2
- package/dist/src/modules/v4/uniswapV4/uniswapV4.service.d.ts +2 -2
- package/dist/src/modules/v4/uniswapV4/uniswapV4.service.js +1 -1
- package/dist/src/routes/v3/campaigns.d.ts +1 -1
- package/dist/src/routes/v3/compoundV2.d.ts +2 -10
- package/dist/src/routes/v3/compoundV2.js +1 -1
- package/dist/src/routes/v3/dolomite.js +1 -1
- package/dist/src/routes/v3/euler.js +1 -1
- package/dist/src/routes/v3/router.d.ts +5 -16
- package/dist/src/routes/v3/uniswapv4.d.ts +2 -5
- package/dist/src/routes/v3/uniswapv4.js +1 -1
- package/dist/src/utils/decodeCalls.d.ts +1 -1
- package/dist/src/utils/decodeCalls.js +8 -2
- package/dist/src/utils/encodeCalls.d.ts +1 -1
- package/dist/src/utils/encodeCalls.js +20 -2
- package/dist/src/utils/generateCardName.d.ts +1 -1
- package/dist/src/utils/generateCardName.js +3 -1
- package/dist/src/utils/generateIcons.d.ts +1 -1
- package/dist/src/utils/generateIcons.js +1 -1
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/src/factories/dynamicData/factory.d.ts +0 -0
- package/dist/src/factories/dynamicData/factory.js +0 -10
- package/dist/src/libs/campaigns/campaignTypes/AjnaDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/AjnaDynamicData.js +0 -111
- package/dist/src/libs/campaigns/campaignTypes/AmbientDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/AmbientDynamicData.js +0 -243
- package/dist/src/libs/campaigns/campaignTypes/BadgerDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/BadgerDynamicData.js +0 -93
- package/dist/src/libs/campaigns/campaignTypes/CLAMMDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/CLAMMDynamicData.js +0 -986
- package/dist/src/libs/campaigns/campaignTypes/CompoundDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/CompoundDynamicData.js +0 -139
- package/dist/src/libs/campaigns/campaignTypes/DolomiteDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/DolomiteDynamicData.js +0 -60
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicData.d.ts +0 -4
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicData.js +0 -164
- package/dist/src/libs/campaigns/campaignTypes/ERC20_SNAPSHOTDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/ERC20_SNAPSHOTDynamicData.js +0 -38
- package/dist/src/libs/campaigns/campaignTypes/EigenLayerDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/EigenLayerDynamicData.js +0 -67
- package/dist/src/libs/campaigns/campaignTypes/EncompassingDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/EncompassingDynamicData.js +0 -34
- package/dist/src/libs/campaigns/campaignTypes/EventBasedDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/EventBasedDynamicData.js +0 -114
- package/dist/src/libs/campaigns/campaignTypes/HyperdriveDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/HyperdriveDynamicData.js +0 -99
- package/dist/src/libs/campaigns/campaignTypes/JSON_AIRDROPDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/JSON_AIRDROPDynamicData.js +0 -19
- package/dist/src/libs/campaigns/campaignTypes/MORPHODynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/MORPHODynamicData.js +0 -112
- package/dist/src/libs/campaigns/campaignTypes/RadiantDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/RadiantDynamicData.js +0 -122
- package/dist/src/libs/campaigns/campaignTypes/SILODynamicData.d.ts +0 -7
- package/dist/src/libs/campaigns/campaignTypes/SILODynamicData.js +0 -115
- package/dist/src/libs/campaigns/campaignTypes/UniswapV4DynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignTypes/UniswapV4DynamicData.js +0 -265
- package/dist/src/libs/campaigns/campaignTypes/VestDynamicData.d.ts +0 -5
- package/dist/src/libs/campaigns/campaignTypes/VestDynamicData.js +0 -61
- package/dist/src/libs/campaigns/campaignsDynamicData.d.ts +0 -3
- package/dist/src/libs/campaigns/campaignsDynamicData.js +0 -131
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchA51Strategies.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchA51Strategies.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchAmbientInfo.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchAmbientInfo.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchClamInfo.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchClamInfo.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchLogs.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/fetchLogs.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getCompV2ForksVaults.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getCompV2ForksVaults.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getContractCreationBlock.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getContractCreationBlock.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getDolomiteMarkets.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getDolomiteMarkets.js +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getEulerV2Vaults.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getUniswapV4Pools.d.ts +0 -0
- /package/dist/src/{libs/campaigns → engine/dynamicData}/utils/getUniswapV4Pools.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/GenericProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/eulerVaultNames.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/eulerVaultNames.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/factoryFinder.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/factoryFinder.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/getBlacklistedSupply.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/getBlacklistedSupply.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/hardcoded.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/hardcoded.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/metamorphoTvl.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/metamorphoTvl.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/ownerFinder.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/ownerFinder.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/spliceTVL.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/helpers/spliceTVL.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AaveProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AaveProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AnglesLiquid.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AnglesLiquid.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AssetProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AssetProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AuraProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/AuraProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerGaugeProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerGaugeProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerPoolProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerPoolProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerV3PoolProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BalancerV3PoolProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BeefyProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/BeefyProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/CompoundProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/CompoundProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/ERC4626Processor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/ERC4626Processor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EnzymeProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EnzymeProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EqualizerGaugeProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EqualizerGaugeProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EulerBorrowProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EulerBorrowProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EulerLendProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/EulerLendProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/FluidProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/FluidProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/FraxProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/FraxProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/GammaProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/GammaProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/GearboxProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/GearboxProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HanjiVaultProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HanjiVaultProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HoldStationProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HoldStationProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HourglassProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/HourglassProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/MaverickBPProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/MaverickBPProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/MetamorphoProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/MetamorphoProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/NoLinkVaultProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/NoLinkVaultProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/PendleProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/PendleProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/PendleYTProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/PendleYTProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/RadiantProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/RadiantProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/RfxProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/RfxProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/Satlayer.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/Satlayer.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpectraProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpectraProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpectraYTProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpectraYTProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpliceProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SpliceProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SturdySiloProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/SturdySiloProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TempestVaultProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TempestVaultProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TemplateProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TemplateProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TorosProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/TorosProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/UniswapProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/UniswapProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/VicunaProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/VicunaProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/WoofiProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/WoofiProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/ZkSwapThreePoolProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/ZkSwapThreePoolProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/curveNPoolProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/curveNPoolProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/curveProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/curveProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/processorMapping.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/stakedCurveProcessor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/stakedCurveProcessor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/xU308Processor.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/implementations/xU308Processor.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesPrices.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesPrices.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound1.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound2.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound3.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound3.js +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound4.d.ts +0 -0
- /package/dist/src/{libs/campaigns/campaignTypes/ERC20SubTypes → engine/erc20SubTypeProcessors}/subtypesRound4.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/factory.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/factory.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ajna.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ajna.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ambiant.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ambiant.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Badger.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Badger.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Clamm.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Clamm.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Compound.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Compound.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Default.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Default.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Dolomite.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Dolomite.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/EigenLayer.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/EigenLayer.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Encompassing.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Encompassing.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Erc20.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Erc20Snapshot.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Erc20Snapshot.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Hyperdrive.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Hyperdrive.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Invalid.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Invalid.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ion.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Ion.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/JsonAirdrop.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/JsonAirdrop.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Morpho.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Morpho.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Radiant.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Radiant.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Silo.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Silo.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/UniswapV4.d.ts +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/UniswapV4.js +0 -0
- /package/dist/src/{factories → engine}/opportunityMetadata/implementations/Vest.d.ts +0 -0
package/dist/src/index.d.ts
CHANGED
@@ -267,6 +267,7 @@ declare const app: Elysia<"", false, {
|
|
267
267
|
chainId?: string | undefined;
|
268
268
|
mainProtocolId?: string | undefined;
|
269
269
|
campaigns?: boolean | undefined;
|
270
|
+
point?: boolean | undefined;
|
270
271
|
test?: boolean | undefined;
|
271
272
|
rewardTokenSymbol?: string | undefined;
|
272
273
|
order?: string | undefined;
|
@@ -461,6 +462,7 @@ declare const app: Elysia<"", false, {
|
|
461
462
|
chainId?: string | undefined;
|
462
463
|
mainProtocolId?: string | undefined;
|
463
464
|
campaigns?: boolean | undefined;
|
465
|
+
point?: boolean | undefined;
|
464
466
|
test?: boolean | undefined;
|
465
467
|
rewardTokenSymbol?: string | undefined;
|
466
468
|
order?: string | undefined;
|
@@ -482,6 +484,7 @@ declare const app: Elysia<"", false, {
|
|
482
484
|
id: string;
|
483
485
|
};
|
484
486
|
query: {
|
487
|
+
point?: boolean | undefined;
|
485
488
|
test?: boolean | undefined;
|
486
489
|
};
|
487
490
|
headers: unknown;
|
@@ -605,6 +608,7 @@ declare const app: Elysia<"", false, {
|
|
605
608
|
chainId?: number | undefined;
|
606
609
|
creatorId?: string | undefined;
|
607
610
|
mainParameter?: string | undefined;
|
611
|
+
point?: boolean | undefined;
|
608
612
|
tokenAddress?: string | undefined;
|
609
613
|
test?: boolean | undefined;
|
610
614
|
createdAfter?: number | undefined;
|
@@ -773,6 +777,7 @@ declare const app: Elysia<"", false, {
|
|
773
777
|
id: string;
|
774
778
|
};
|
775
779
|
query: {
|
780
|
+
point?: boolean | undefined;
|
776
781
|
test?: boolean | undefined;
|
777
782
|
};
|
778
783
|
headers: unknown;
|
@@ -950,6 +955,7 @@ declare const app: Elysia<"", false, {
|
|
950
955
|
chainId?: string | undefined;
|
951
956
|
mainProtocolId?: string | undefined;
|
952
957
|
campaigns?: boolean | undefined;
|
958
|
+
point?: boolean | undefined;
|
953
959
|
test?: boolean | undefined;
|
954
960
|
rewardTokenSymbol?: string | undefined;
|
955
961
|
order?: string | undefined;
|
@@ -990,6 +996,7 @@ declare const app: Elysia<"", false, {
|
|
990
996
|
chainId?: string | undefined;
|
991
997
|
mainProtocolId?: string | undefined;
|
992
998
|
campaigns?: boolean | undefined;
|
999
|
+
point?: boolean | undefined;
|
993
1000
|
test?: boolean | undefined;
|
994
1001
|
rewardTokenSymbol?: string | undefined;
|
995
1002
|
order?: string | undefined;
|
@@ -1031,6 +1038,7 @@ declare const app: Elysia<"", false, {
|
|
1031
1038
|
chainId?: string | undefined;
|
1032
1039
|
mainProtocolId?: string | undefined;
|
1033
1040
|
campaigns?: boolean | undefined;
|
1041
|
+
point?: boolean | undefined;
|
1034
1042
|
test?: boolean | undefined;
|
1035
1043
|
rewardTokenSymbol?: string | undefined;
|
1036
1044
|
order?: string | undefined;
|
@@ -1257,6 +1265,7 @@ declare const app: Elysia<"", false, {
|
|
1257
1265
|
chainId?: number | undefined;
|
1258
1266
|
creatorId?: string | undefined;
|
1259
1267
|
mainParameter?: string | undefined;
|
1268
|
+
point?: boolean | undefined;
|
1260
1269
|
tokenAddress?: string | undefined;
|
1261
1270
|
test?: boolean | undefined;
|
1262
1271
|
createdAfter?: number | undefined;
|
@@ -1443,6 +1452,7 @@ declare const app: Elysia<"", false, {
|
|
1443
1452
|
chainId?: number | undefined;
|
1444
1453
|
creatorId?: string | undefined;
|
1445
1454
|
mainParameter?: string | undefined;
|
1455
|
+
point?: boolean | undefined;
|
1446
1456
|
tokenAddress?: string | undefined;
|
1447
1457
|
test?: boolean | undefined;
|
1448
1458
|
createdAfter?: number | undefined;
|
@@ -1478,6 +1488,7 @@ declare const app: Elysia<"", false, {
|
|
1478
1488
|
chainId?: number | undefined;
|
1479
1489
|
creatorId?: string | undefined;
|
1480
1490
|
mainParameter?: string | undefined;
|
1491
|
+
point?: boolean | undefined;
|
1481
1492
|
tokenAddress?: string | undefined;
|
1482
1493
|
test?: boolean | undefined;
|
1483
1494
|
createdAfter?: number | undefined;
|
@@ -1516,6 +1527,7 @@ declare const app: Elysia<"", false, {
|
|
1516
1527
|
chainId?: number | undefined;
|
1517
1528
|
creatorId?: string | undefined;
|
1518
1529
|
mainParameter?: string | undefined;
|
1530
|
+
point?: boolean | undefined;
|
1519
1531
|
tokenAddress?: string | undefined;
|
1520
1532
|
test?: boolean | undefined;
|
1521
1533
|
createdAfter?: number | undefined;
|
@@ -1632,6 +1644,7 @@ declare const app: Elysia<"", false, {
|
|
1632
1644
|
chainId?: number | undefined;
|
1633
1645
|
creatorId?: string | undefined;
|
1634
1646
|
mainParameter?: string | undefined;
|
1647
|
+
point?: boolean | undefined;
|
1635
1648
|
tokenAddress?: string | undefined;
|
1636
1649
|
test?: boolean | undefined;
|
1637
1650
|
createdAfter?: number | undefined;
|
@@ -2043,6 +2056,7 @@ declare const app: Elysia<"", false, {
|
|
2043
2056
|
displaySymbol?: string | undefined;
|
2044
2057
|
verified?: boolean | undefined;
|
2045
2058
|
isTest?: boolean | undefined;
|
2059
|
+
isPoint?: boolean | undefined;
|
2046
2060
|
};
|
2047
2061
|
params: {
|
2048
2062
|
id: string;
|
@@ -4537,8 +4551,8 @@ declare const app: Elysia<"", false, {
|
|
4537
4551
|
query: {
|
4538
4552
|
types?: string | number | string[] | number[] | undefined;
|
4539
4553
|
chainIds?: string | string[] | undefined;
|
4540
|
-
live?: boolean | undefined;
|
4541
4554
|
creatorTag?: string | undefined;
|
4555
|
+
live?: boolean | undefined;
|
4542
4556
|
hideTestTokens?: string | undefined;
|
4543
4557
|
};
|
4544
4558
|
headers: unknown;
|
@@ -4641,16 +4655,8 @@ declare const app: Elysia<"", false, {
|
|
4641
4655
|
query: {};
|
4642
4656
|
headers: unknown;
|
4643
4657
|
response: {
|
4644
|
-
|
4645
|
-
|
4646
|
-
address: string;
|
4647
|
-
symbolCToken: string;
|
4648
|
-
decimalsCToken: number;
|
4649
|
-
underlying: string;
|
4650
|
-
symbolUnderlying: string;
|
4651
|
-
decimalsUnderlying: number;
|
4652
|
-
}[];
|
4653
|
-
};
|
4658
|
+
[x: string]: any;
|
4659
|
+
200: any;
|
4654
4660
|
};
|
4655
4661
|
};
|
4656
4662
|
};
|
@@ -5204,11 +5210,8 @@ declare const app: Elysia<"", false, {
|
|
5204
5210
|
query: {};
|
5205
5211
|
headers: unknown;
|
5206
5212
|
response: {
|
5207
|
-
|
5208
|
-
|
5209
|
-
[poolId: string]: UniswapV4PoolType;
|
5210
|
-
} | undefined;
|
5211
|
-
};
|
5213
|
+
[x: string]: any;
|
5214
|
+
200: any;
|
5212
5215
|
};
|
5213
5216
|
};
|
5214
5217
|
};
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { Redis } from "@/cache";
|
2
|
-
import {
|
3
|
-
import {
|
2
|
+
import { LoggedEntityType, getEulerV2Vaults } from "@/engine/dynamicData/utils/getEulerV2Vaults";
|
3
|
+
import { fetchEulerVaultName } from "@/engine/erc20SubTypeProcessors/helpers/eulerVaultNames";
|
4
4
|
import { batchMulticallCallWithRetry } from "@/utils/generic";
|
5
5
|
import { log } from "@/utils/logger";
|
6
6
|
import { apiDbClient } from "@db";
|
@@ -2,5 +2,5 @@ import { type CampaignDynamicData, Campaign as CampaignTypeV3 } from "@sdk";
|
|
2
2
|
import type { AprRecord } from "./apr.model";
|
3
3
|
export declare abstract class AprService {
|
4
4
|
static hashId(opportunityId: string, timestamp: bigint): string;
|
5
|
-
static extractFromDynamicData<C extends CampaignTypeV3>(type: C,
|
5
|
+
static extractFromDynamicData<C extends CampaignTypeV3>(type: C, campaigns: CampaignDynamicData<C>[], timestamp?: bigint): AprRecord["model"];
|
6
6
|
}
|
@@ -5,18 +5,18 @@ export class AprService {
|
|
5
5
|
static hashId(opportunityId, timestamp) {
|
6
6
|
return Bun.hash(`${opportunityId}${timestamp}`).toString();
|
7
7
|
}
|
8
|
-
static extractFromDynamicData(type,
|
8
|
+
static extractFromDynamicData(type, campaigns, timestamp = BigInt(moment().unix())) {
|
9
9
|
const typesWithoutApr = [CampaignTypeV3.INVALID, CampaignTypeV3.JSON_AIRDROP, CampaignTypeV3.ERC20_SNAPSHOT];
|
10
10
|
if (typesWithoutApr.includes(type))
|
11
11
|
return { timestamp, cumulated: 0, breakdowns: [] };
|
12
|
-
let cumulated =
|
12
|
+
let cumulated = campaigns.reduce((sum, campaign) => {
|
13
13
|
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
14
14
|
if (!isLive)
|
15
15
|
return sum;
|
16
16
|
return sum + (Number.isNaN(Number(campaign.apr)) ? 0 : Number(campaign.apr));
|
17
17
|
}, 0) ?? 0;
|
18
18
|
cumulated = Number.isNaN(Number(cumulated)) || !Number.isFinite(cumulated) ? 0 : cumulated;
|
19
|
-
const breakdowns =
|
19
|
+
const breakdowns = campaigns.map(campaign => {
|
20
20
|
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
21
21
|
return {
|
22
22
|
identifier: campaign.campaignId,
|
@@ -25,7 +25,7 @@ export class AprService {
|
|
25
25
|
};
|
26
26
|
});
|
27
27
|
if (type === CampaignTypeV3.CLAMM) {
|
28
|
-
for (const campaign of
|
28
|
+
for (const campaign of campaigns) {
|
29
29
|
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
30
30
|
if (campaign.forwarders) {
|
31
31
|
for (const forwarder of campaign.forwarders) {
|
@@ -183,6 +183,7 @@ export declare const CampaignController: Elysia<"/campaigns", false, {
|
|
183
183
|
chainId?: number | undefined;
|
184
184
|
creatorId?: string | undefined;
|
185
185
|
mainParameter?: string | undefined;
|
186
|
+
point?: boolean | undefined;
|
186
187
|
tokenAddress?: string | undefined;
|
187
188
|
test?: boolean | undefined;
|
188
189
|
createdAfter?: number | undefined;
|
@@ -369,6 +370,7 @@ export declare const CampaignController: Elysia<"/campaigns", false, {
|
|
369
370
|
chainId?: number | undefined;
|
370
371
|
creatorId?: string | undefined;
|
371
372
|
mainParameter?: string | undefined;
|
373
|
+
point?: boolean | undefined;
|
372
374
|
tokenAddress?: string | undefined;
|
373
375
|
test?: boolean | undefined;
|
374
376
|
createdAfter?: number | undefined;
|
@@ -404,6 +406,7 @@ export declare const CampaignController: Elysia<"/campaigns", false, {
|
|
404
406
|
chainId?: number | undefined;
|
405
407
|
creatorId?: string | undefined;
|
406
408
|
mainParameter?: string | undefined;
|
409
|
+
point?: boolean | undefined;
|
407
410
|
tokenAddress?: string | undefined;
|
408
411
|
test?: boolean | undefined;
|
409
412
|
createdAfter?: number | undefined;
|
@@ -442,6 +445,7 @@ export declare const CampaignController: Elysia<"/campaigns", false, {
|
|
442
445
|
chainId?: number | undefined;
|
443
446
|
creatorId?: string | undefined;
|
444
447
|
mainParameter?: string | undefined;
|
448
|
+
point?: boolean | undefined;
|
445
449
|
tokenAddress?: string | undefined;
|
446
450
|
test?: boolean | undefined;
|
447
451
|
createdAfter?: number | undefined;
|
@@ -558,6 +562,7 @@ export declare const CampaignController: Elysia<"/campaigns", false, {
|
|
558
562
|
chainId?: number | undefined;
|
559
563
|
creatorId?: string | undefined;
|
560
564
|
mainParameter?: string | undefined;
|
565
|
+
point?: boolean | undefined;
|
561
566
|
tokenAddress?: string | undefined;
|
562
567
|
test?: boolean | undefined;
|
563
568
|
createdAfter?: number | undefined;
|
@@ -132,6 +132,7 @@ export declare const GetCampaignQueryDto: import("@sinclair/typebox").TObject<{
|
|
132
132
|
tokenSymbol: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
133
133
|
tokenAddress: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
134
134
|
test: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
135
|
+
point: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
135
136
|
opportunityId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
136
137
|
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TEnum<{
|
137
138
|
NONE: "NONE";
|
@@ -95,6 +95,7 @@ export const GetCampaignQueryDto = t.Object({
|
|
95
95
|
description: "Filter results by the reward token address. Use in combination with chainId for accuracy",
|
96
96
|
})),
|
97
97
|
test: t.Optional(t.Boolean({ description: "Return campaigns rewarding in test tokens", default: false })),
|
98
|
+
point: t.Optional(t.Boolean({ description: "Return campaigns rewarding in points", default: false })),
|
98
99
|
opportunityId: t.Optional(t.String({
|
99
100
|
description: "Filter by opportunity. You can find opportunity ids by calling [GET /v4/opportunities](#tag/opportunities/GET/v4/opportunities)",
|
100
101
|
})),
|
@@ -47,6 +47,7 @@ export declare abstract class CampaignRepository {
|
|
47
47
|
symbol?: undefined;
|
48
48
|
})[] | undefined;
|
49
49
|
isTest: false | undefined;
|
50
|
+
isPoint: boolean | undefined;
|
50
51
|
};
|
51
52
|
Creator: {
|
52
53
|
OR: ({
|
@@ -115,6 +116,7 @@ export declare abstract class CampaignRepository {
|
|
115
116
|
symbol?: undefined;
|
116
117
|
})[] | undefined;
|
117
118
|
isTest: false | undefined;
|
119
|
+
isPoint: boolean | undefined;
|
118
120
|
};
|
119
121
|
Creator: {
|
120
122
|
OR: ({
|
@@ -184,6 +186,7 @@ export declare abstract class CampaignRepository {
|
|
184
186
|
symbol?: undefined;
|
185
187
|
})[] | undefined;
|
186
188
|
isTest: false | undefined;
|
189
|
+
isPoint: boolean | undefined;
|
187
190
|
};
|
188
191
|
Creator: {
|
189
192
|
OR: ({
|
@@ -256,6 +259,7 @@ export declare abstract class CampaignRepository {
|
|
256
259
|
symbol?: undefined;
|
257
260
|
})[] | undefined;
|
258
261
|
isTest: false | undefined;
|
262
|
+
isPoint: boolean | undefined;
|
259
263
|
};
|
260
264
|
Creator: {
|
261
265
|
OR: ({
|
@@ -8,7 +8,7 @@ import moment from "moment";
|
|
8
8
|
import { OpportunityService } from "../opportunity";
|
9
9
|
export class CampaignRepository {
|
10
10
|
static transformQueryToPrismaFilters(query) {
|
11
|
-
const { creatorTag, creatorId, creatorAddress, chainId, distributionChainIds, endTimestamp, opportunityId, mainParameter, campaignId, startTimestamp, status, subType, type, types, tokenAddress, tokenSymbol, test, createdAfter, } = query;
|
11
|
+
const { creatorTag, creatorId, creatorAddress, chainId, distributionChainIds, endTimestamp, opportunityId, mainParameter, campaignId, startTimestamp, status, subType, type, types, tokenAddress, tokenSymbol, test, createdAfter, point, } = query;
|
12
12
|
const getTagFilter = () => {
|
13
13
|
if (creatorTag && creatorId)
|
14
14
|
return {
|
@@ -63,6 +63,7 @@ export class CampaignRepository {
|
|
63
63
|
]
|
64
64
|
: undefined,
|
65
65
|
isTest: !test ? false : undefined,
|
66
|
+
isPoint: point ? true : !test ? false : undefined,
|
66
67
|
},
|
67
68
|
Creator: getTagFilter(),
|
68
69
|
...timeFilter,
|
@@ -722,14 +722,6 @@ export declare abstract class CampaignService {
|
|
722
722
|
createdAt: Date;
|
723
723
|
};
|
724
724
|
static formatAsCampaignParameters<C extends CampaignEnum>(campaign: CampaignWithParams): CampaignParameters<C>;
|
725
|
-
/**
|
726
|
-
* Fetches the campaign dynamic data for a v3 campaign onchain
|
727
|
-
* @param chainId
|
728
|
-
* @param campaignType
|
729
|
-
* @param campaigns of v3 type
|
730
|
-
* @returns
|
731
|
-
*/
|
732
|
-
static fetchDynamicData(chainId: number, campaignType: string, campaigns: CampaignParameters<any>[]): Promise<any>;
|
733
725
|
/**
|
734
726
|
* Shortcut to get daily amount from total
|
735
727
|
* @param start timestamp
|
@@ -1,11 +1,9 @@
|
|
1
1
|
import { HttpError } from "@/errors";
|
2
|
-
import { campaignsDynamicData } from "@/libs/campaigns/campaignsDynamicData";
|
3
2
|
import { OpportunityService } from "@/modules/v4/opportunity";
|
4
3
|
import { StatusService } from "@/modules/v4/status/status.service";
|
5
4
|
import { TokenRepository } from "@/modules/v4/token/token.repository";
|
6
5
|
import { TokenService } from "@/modules/v4/token/token.service";
|
7
6
|
import { CannotParseOpportunity, InvalidParameter } from "@/utils/error";
|
8
|
-
import { executeSimple } from "@/utils/execute";
|
9
7
|
import { log } from "@/utils/logger";
|
10
8
|
import { Campaign as CampaignEnum, NETWORK_LABELS, } from "@sdk";
|
11
9
|
import { utils } from "ethers";
|
@@ -293,17 +291,6 @@ export class CampaignService {
|
|
293
291
|
amount: campaign.amount,
|
294
292
|
};
|
295
293
|
}
|
296
|
-
/**
|
297
|
-
* Fetches the campaign dynamic data for a v3 campaign onchain
|
298
|
-
* @param chainId
|
299
|
-
* @param campaignType
|
300
|
-
* @param campaigns of v3 type
|
301
|
-
* @returns
|
302
|
-
*/
|
303
|
-
static async fetchDynamicData(chainId, campaignType, campaigns) {
|
304
|
-
const calls = campaignsDynamicData(chainId, campaigns, CampaignEnum[campaignType]);
|
305
|
-
return await executeSimple(chainId, calls);
|
306
|
-
}
|
307
294
|
/**
|
308
295
|
* Shortcut to get daily amount from total
|
309
296
|
* @param start timestamp
|
@@ -1,8 +1,7 @@
|
|
1
|
+
import { dynamicDataBuilderFactory } from "@/engine/dynamicData/factory";
|
1
2
|
import { HttpError } from "@/errors";
|
2
|
-
import { campaignsDynamicData } from "@/libs/campaigns/campaignsDynamicData";
|
3
3
|
import { OpportunityService } from "@/modules/v4/opportunity/opportunity.service";
|
4
4
|
import bigintToString from "@/utils/bigintToString";
|
5
|
-
import { executeSimple } from "@/utils/execute";
|
6
5
|
import { log } from "@/utils/logger";
|
7
6
|
import { Campaign, NETWORK_LABELS } from "@sdk";
|
8
7
|
import { Campaign as CampaignEnum } from "@sdk";
|
@@ -43,7 +42,7 @@ export class DynamicDataService {
|
|
43
42
|
},
|
44
43
|
];
|
45
44
|
log.info(`querying mock campaign on chain: ${NETWORK_LABELS[chainId]}`);
|
46
|
-
const result = await
|
45
|
+
const result = await dynamicDataBuilderFactory(Campaign.ERC20).build(Number(chainId), campaigns);
|
47
46
|
return {
|
48
47
|
priceTargetToken: result[0]?.typeInfo.priceTargetToken,
|
49
48
|
totalSupply: result[0]?.typeInfo.totalSupply,
|
@@ -56,7 +55,7 @@ export class DynamicDataService {
|
|
56
55
|
static async updateForCampaignType(campaigns, type) {
|
57
56
|
const chainId = campaigns[0].computeChainId;
|
58
57
|
const dynamicDataArray = [];
|
59
|
-
const dynamicData = await
|
58
|
+
const dynamicData = await dynamicDataBuilderFactory(typeof type === "number" ? type : Campaign[type]).build(chainId, campaigns);
|
60
59
|
const oppMap = {};
|
61
60
|
for (const data of dynamicData) {
|
62
61
|
if (!!data) {
|
@@ -122,6 +122,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
122
122
|
chainId?: string | undefined;
|
123
123
|
mainProtocolId?: string | undefined;
|
124
124
|
campaigns?: boolean | undefined;
|
125
|
+
point?: boolean | undefined;
|
125
126
|
test?: boolean | undefined;
|
126
127
|
rewardTokenSymbol?: string | undefined;
|
127
128
|
order?: string | undefined;
|
@@ -316,6 +317,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
316
317
|
chainId?: string | undefined;
|
317
318
|
mainProtocolId?: string | undefined;
|
318
319
|
campaigns?: boolean | undefined;
|
320
|
+
point?: boolean | undefined;
|
319
321
|
test?: boolean | undefined;
|
320
322
|
rewardTokenSymbol?: string | undefined;
|
321
323
|
order?: string | undefined;
|
@@ -337,6 +339,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
337
339
|
id: string;
|
338
340
|
};
|
339
341
|
query: {
|
342
|
+
point?: boolean | undefined;
|
340
343
|
test?: boolean | undefined;
|
341
344
|
};
|
342
345
|
headers: unknown;
|
@@ -460,6 +463,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
460
463
|
chainId?: number | undefined;
|
461
464
|
creatorId?: string | undefined;
|
462
465
|
mainParameter?: string | undefined;
|
466
|
+
point?: boolean | undefined;
|
463
467
|
tokenAddress?: string | undefined;
|
464
468
|
test?: boolean | undefined;
|
465
469
|
createdAfter?: number | undefined;
|
@@ -628,6 +632,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
628
632
|
id: string;
|
629
633
|
};
|
630
634
|
query: {
|
635
|
+
point?: boolean | undefined;
|
631
636
|
test?: boolean | undefined;
|
632
637
|
};
|
633
638
|
headers: unknown;
|
@@ -805,6 +810,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
805
810
|
chainId?: string | undefined;
|
806
811
|
mainProtocolId?: string | undefined;
|
807
812
|
campaigns?: boolean | undefined;
|
813
|
+
point?: boolean | undefined;
|
808
814
|
test?: boolean | undefined;
|
809
815
|
rewardTokenSymbol?: string | undefined;
|
810
816
|
order?: string | undefined;
|
@@ -845,6 +851,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
845
851
|
chainId?: string | undefined;
|
846
852
|
mainProtocolId?: string | undefined;
|
847
853
|
campaigns?: boolean | undefined;
|
854
|
+
point?: boolean | undefined;
|
848
855
|
test?: boolean | undefined;
|
849
856
|
rewardTokenSymbol?: string | undefined;
|
850
857
|
order?: string | undefined;
|
@@ -886,6 +893,7 @@ export declare const OpportunityController: Elysia<"/opportunities", false, {
|
|
886
893
|
chainId?: string | undefined;
|
887
894
|
mainProtocolId?: string | undefined;
|
888
895
|
campaigns?: boolean | undefined;
|
896
|
+
point?: boolean | undefined;
|
889
897
|
test?: boolean | undefined;
|
890
898
|
rewardTokenSymbol?: string | undefined;
|
891
899
|
order?: string | undefined;
|
@@ -162,13 +162,13 @@ export class OpportunityConvertorService {
|
|
162
162
|
return res;
|
163
163
|
}
|
164
164
|
static async setV3Opportunities(showCampaigns, test, identifier, chainId) {
|
165
|
-
return await CacheService.set(TTLPresets.
|
165
|
+
return await CacheService.set(TTLPresets.HOUR_4, OpportunityConvertorService.#extractV3Opportunities, showCampaigns, test, identifier, chainId);
|
166
166
|
}
|
167
167
|
static async logKeyAndTTLV3Opportunities(showCampaigns, test, identifier, chainId) {
|
168
168
|
const [key, ttl] = await CacheService.keyAndTTL(OpportunityConvertorService.#extractV3Opportunities, showCampaigns, test, identifier, chainId);
|
169
169
|
log.info(`Args: ${showCampaigns}, ${test}, ${identifier}, ${chainId}, Key: ${key}, TTL: ${ttl}`);
|
170
170
|
}
|
171
171
|
static async wrapV3Opportunities(showCampaigns, test, identifier, chainId) {
|
172
|
-
return await CacheService.wrap(TTLPresets.
|
172
|
+
return await CacheService.wrap(TTLPresets.MIN_10, OpportunityConvertorService.#extractV3Opportunities, showCampaigns, test, identifier, chainId);
|
173
173
|
}
|
174
174
|
}
|
@@ -281,6 +281,7 @@ export declare const GetOpportunitiesQueryDto: import("@sinclair/typebox").TObje
|
|
281
281
|
creatorAddress: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
282
282
|
tags: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
283
283
|
test: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
284
|
+
point: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
284
285
|
minimumTvl: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
285
286
|
status: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRegExp>;
|
286
287
|
identifier: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
@@ -295,6 +296,7 @@ export declare const GetOpportunitiesQueryDto: import("@sinclair/typebox").TObje
|
|
295
296
|
}>;
|
296
297
|
export declare const GetOpportunityQueryDto: import("@sinclair/typebox").TObject<{
|
297
298
|
test: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
299
|
+
point: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
298
300
|
}>;
|
299
301
|
export declare const CreateOpportunityDto: import("@sinclair/typebox").TObject<{
|
300
302
|
chainId: import("@sinclair/typebox").TNumber;
|
@@ -62,6 +62,7 @@ export const GetOpportunitiesQueryDto = t.Object({
|
|
62
62
|
creatorAddress: t.Optional(t.String({ description: "Filter by creator address" })),
|
63
63
|
tags: t.Optional(t.String({ description: "Filter by tag" })),
|
64
64
|
test: t.Optional(t.Boolean({ description: "Include opportunities with test campaigns" })),
|
65
|
+
point: t.Optional(t.Boolean({ description: "Include opportunities with point campaigns", default: false })),
|
65
66
|
minimumTvl: t.Optional(t.Number({ description: "Minimum TVL threshhold in USD" })),
|
66
67
|
status: t.Optional(t.RegExp(/^(LIVE|PAST|SOON)(,(LIVE|PAST|SOON)){0,2}$/, {
|
67
68
|
description: "A comma separeted list of status. Legal values are: `LIVE`, `PAST`, `SOON`",
|
@@ -85,6 +86,7 @@ export const GetOpportunitiesQueryDto = t.Object({
|
|
85
86
|
});
|
86
87
|
export const GetOpportunityQueryDto = t.Object({
|
87
88
|
test: t.Optional(t.Boolean({ description: "Include test campaigns" })),
|
89
|
+
point: t.Optional(t.Boolean({ description: "Include point campaigns", default: false })),
|
88
90
|
});
|
89
91
|
export const CreateOpportunityDto = t.Object({
|
90
92
|
chainId: t.Number(),
|
@@ -177,7 +177,7 @@ export declare abstract class OpportunityRepository {
|
|
177
177
|
apr: number;
|
178
178
|
dailyRewards: number;
|
179
179
|
}) | null>;
|
180
|
-
static findUniqueOrThrow(id: string, withTest?: boolean, withCampaigns?: boolean): Promise<{
|
180
|
+
static findUniqueOrThrow(id: string, withTest?: boolean, withPoints?: boolean, withCampaigns?: boolean): Promise<{
|
181
181
|
Chain: {
|
182
182
|
id: number;
|
183
183
|
name: string;
|
@@ -20,6 +20,7 @@ export class OpportunityRepository {
|
|
20
20
|
const sort = (query.sort === "rewards" ? "dailyRewards" : query.sort) ?? "dailyRewards";
|
21
21
|
const order = query.order ?? "desc";
|
22
22
|
const test = query.test ?? false;
|
23
|
+
const point = query.point ?? false;
|
23
24
|
const creatorAddress = query.creatorAddress ?? null;
|
24
25
|
const identifier = query.identifier ?? null;
|
25
26
|
const orderBy = {
|
@@ -45,6 +46,7 @@ export class OpportunityRepository {
|
|
45
46
|
? undefined
|
46
47
|
: {
|
47
48
|
isTest: !test ? false : undefined,
|
49
|
+
isPoint: point,
|
48
50
|
symbol: rewardTokenSymbol ? { equals: rewardTokenSymbol, mode: "insensitive" } : undefined,
|
49
51
|
},
|
50
52
|
creatorAddress: creatorAddress ? creatorAddress : undefined,
|
@@ -54,7 +56,7 @@ export class OpportunityRepository {
|
|
54
56
|
},
|
55
57
|
};
|
56
58
|
}
|
57
|
-
static #getRecordInclusion(withTest = true) {
|
59
|
+
static #getRecordInclusion(withTest = true, withPoints = true) {
|
58
60
|
return {
|
59
61
|
AprRecords: {
|
60
62
|
take: 1,
|
@@ -73,7 +75,7 @@ export class OpportunityRepository {
|
|
73
75
|
DailyRewardsBreakdown: {
|
74
76
|
where: {
|
75
77
|
Campaign: {
|
76
|
-
RewardToken: withTest ? undefined : { isTest: false },
|
78
|
+
RewardToken: withTest ? undefined : { isTest: false, isPoint: withPoints },
|
77
79
|
},
|
78
80
|
},
|
79
81
|
include: {
|
@@ -92,7 +94,7 @@ export class OpportunityRepository {
|
|
92
94
|
},
|
93
95
|
};
|
94
96
|
}
|
95
|
-
static #getCampaignInclusion(withTest = true) {
|
97
|
+
static #getCampaignInclusion(withTest = true, withPoints = true) {
|
96
98
|
return {
|
97
99
|
orderBy: {
|
98
100
|
endTimestamp: "desc",
|
@@ -102,6 +104,7 @@ export class OpportunityRepository {
|
|
102
104
|
: {
|
103
105
|
RewardToken: {
|
104
106
|
isTest: false,
|
107
|
+
isPoint: withPoints,
|
105
108
|
},
|
106
109
|
},
|
107
110
|
include: {
|
@@ -198,16 +201,16 @@ export class OpportunityRepository {
|
|
198
201
|
where: { id },
|
199
202
|
});
|
200
203
|
}
|
201
|
-
static async findUniqueOrThrow(id, withTest = true, withCampaigns = false) {
|
204
|
+
static async findUniqueOrThrow(id, withTest = true, withPoints = true, withCampaigns = false) {
|
202
205
|
return await apiDbClient.opportunity.findUniqueOrThrow({
|
203
206
|
include: {
|
204
|
-
...OpportunityRepository.#getRecordInclusion(withTest),
|
205
|
-
Campaigns: withCampaigns ? OpportunityRepository.#getCampaignInclusion(withTest) : undefined,
|
207
|
+
...OpportunityRepository.#getRecordInclusion(withTest, withPoints),
|
208
|
+
Campaigns: withCampaigns ? OpportunityRepository.#getCampaignInclusion(withTest, withPoints) : undefined,
|
206
209
|
Chain: { include: { Explorer: true } },
|
207
210
|
MainProtocol: true,
|
208
211
|
Protocols: true,
|
209
212
|
Tokens: {
|
210
|
-
where: !withTest ? { isTest: false } : undefined,
|
213
|
+
where: !withTest ? { isTest: false, isPoint: withPoints } : undefined,
|
211
214
|
},
|
212
215
|
},
|
213
216
|
where: { id },
|
@@ -245,14 +248,15 @@ export class OpportunityRepository {
|
|
245
248
|
const page = _page ? _page : 0;
|
246
249
|
const items = _items ? _items : 20;
|
247
250
|
const withTest = query.test ?? false;
|
251
|
+
const withPoints = query.point ?? false;
|
248
252
|
const withCampaigns = query.campaigns ?? false;
|
249
253
|
const args = OpportunityRepository.#transformQueryToPrismaFilters(query);
|
250
254
|
return await apiDbClient.opportunity.findMany({
|
251
255
|
take: items,
|
252
256
|
skip: page * items,
|
253
257
|
include: {
|
254
|
-
...OpportunityRepository.#getRecordInclusion(withTest),
|
255
|
-
Campaigns: withCampaigns ? OpportunityRepository.#getCampaignInclusion(withTest) : undefined,
|
258
|
+
...OpportunityRepository.#getRecordInclusion(withTest, withPoints),
|
259
|
+
Campaigns: withCampaigns ? OpportunityRepository.#getCampaignInclusion(withTest, withPoints) : undefined,
|
256
260
|
MainProtocol: true,
|
257
261
|
Chain: {
|
258
262
|
include: {
|
@@ -261,7 +265,7 @@ export class OpportunityRepository {
|
|
261
265
|
},
|
262
266
|
Protocols: true,
|
263
267
|
Tokens: {
|
264
|
-
where: !withTest ? { isTest: false } : undefined,
|
268
|
+
where: !withTest ? { isTest: false, isPoint: withPoints } : undefined,
|
265
269
|
},
|
266
270
|
},
|
267
271
|
...args,
|
@@ -276,7 +276,7 @@ export declare abstract class OpportunityService {
|
|
276
276
|
};
|
277
277
|
}[];
|
278
278
|
}[]>;
|
279
|
-
static getUniqueWithCampaignsOrThrow(opportunityId: string | OpportunityUnique, withTest?: boolean): Promise<{
|
279
|
+
static getUniqueWithCampaignsOrThrow(opportunityId: string | OpportunityUnique, withTest?: boolean, withPoints?: boolean): Promise<{
|
280
280
|
protocol?: {
|
281
281
|
id: string;
|
282
282
|
name: string;
|
@@ -411,7 +411,7 @@ export declare abstract class OpportunityService {
|
|
411
411
|
};
|
412
412
|
}[];
|
413
413
|
}>;
|
414
|
-
static getUniqueOrThrow(opportunityId: string | OpportunityUnique, withTest?: boolean): Promise<OpportunityResourceModel>;
|
414
|
+
static getUniqueOrThrow(opportunityId: string | OpportunityUnique, withTest?: boolean, withPoints?: boolean): Promise<OpportunityResourceModel>;
|
415
415
|
/**
|
416
416
|
* Get the list of opportunities satisfying the query
|
417
417
|
* @param query
|