@merkl/api 0.21.47 → 1.0.0
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/cache/index.d.ts +1 -1
- package/dist/src/constants.d.ts +8 -8
- package/dist/src/eden/index.d.ts +16937 -8167
- package/dist/src/eden/index.js +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Ajna.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Badger.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Clamm.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Compound.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/CompoundV3.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Dolomite.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/ERC721.d.ts +2 -2
- package/dist/src/engine/deprecated/dynamicData/implementations/ERCMultiToken.d.ts +2 -2
- package/dist/src/engine/deprecated/dynamicData/implementations/EigenLayer.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Encompassing.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Erc20.d.ts +105 -3
- package/dist/src/engine/deprecated/dynamicData/implementations/Erc20Snapshot.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/EventBased.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Hyperdrive.d.ts +2 -2
- package/dist/src/engine/deprecated/dynamicData/implementations/Morpho.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Radiant.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Silo.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/UniswapV4.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/Vest.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/implementations/default.d.ts +2 -2
- package/dist/src/engine/deprecated/dynamicData/utils/fetchA51Strategies.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/fetchClamInfo.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/fetchLogs.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/getCompV2ForksVaults.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/getDolomiteMarkets.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/getEulerV2Vaults.d.ts +1 -1
- package/dist/src/engine/deprecated/dynamicData/utils/getFixedApr.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/GenericProcessor.d.ts +6 -6
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/factoryFinder.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/hardcoded.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/ownerFinder.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/treasuryFinder.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AaveProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AnglesLiquid.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AssetProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AuraProcessor.d.ts +4 -4
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BEXRewardGaugeProcessor.d.ts +4 -4
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerGaugeProcessor.d.ts +4 -4
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerPoolProcessor.d.ts +4 -4
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerV3PoolProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BeefyProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BunniV2Processor.d.ts +4 -4
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/CompoundProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/ERC4626Processor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EnzymeProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EqualizerGaugeProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EulerBorrowProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EulerLendProcessor.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/FluidProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/FraxProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GammaALMProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GammaProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GearboxProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HanjiVaultProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HoldStationProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HourglassProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/MaverickBPProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/MetamorphoProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/NoLinkVaultProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/PendleProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/PendleYTProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RadiantProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RfxProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/Satlayer.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpectraProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpectraYTProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpliceProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/StabilityProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SturdySiloProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TempestVaultProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TemplateProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TorosProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/UniswapProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/VicunaProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/WoofiProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/ZkSwapThreePoolProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveNPoolProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/processorMapping.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/stakedCurveProcessor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/xU308Processor.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesPrices.d.ts +3 -3
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound1.d.ts +1 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound2.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound3.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound4.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/tokenTypeStruct.d.ts +2 -2
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/tokenTypeToProtocolAndAction.d.ts +3 -3
- package/dist/src/engine/implementations/Ajna/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Ajna/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Ambient/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Ambient/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Badger/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Clamm/metadata.d.ts +22 -22
- package/dist/src/engine/implementations/Compound/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/CompoundV3/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Default/metadata.d.ts +3 -3
- package/dist/src/engine/implementations/Dolomite/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/EigenLayer/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/EigenLayer/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Encompassing/metadata.d.ts +3 -3
- package/dist/src/engine/implementations/Erc20/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/detect.d.ts +2 -2
- package/dist/src/engine/implementations/Erc20/subTypes/factories.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/aave/metadata.d.ts +6 -6
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/aave/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/euler/metadata.d.ts +6 -6
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/euler/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/gearbox/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/gearbox/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/hypurrfiIsolatedMarket/metadata.d.ts +6 -6
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/hypurrfiIsolatedMarket/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/lendleVaults/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/lendleVaults/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/metamorpho/metadata.d.ts +17 -0
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/metamorpho/tvl.d.ts +6 -0
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/pino/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/pino/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmax/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmax/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmaxVault/metadata.d.ts +18 -0
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmaxVault/tvl.d.ts +6 -0
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/uniswapV2/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/uniswapV2/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20/subTypes/index.d.ts +3 -2
- package/dist/src/engine/implementations/Erc20/tvl.d.ts +4 -4
- package/dist/src/engine/implementations/Erc20Snapshot/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Erc721/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/ErcMultiToken/metadata.d.ts +6 -6
- package/dist/src/engine/implementations/EventBased/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/FraxLend/metadataBorrow.d.ts +24 -0
- package/dist/src/engine/implementations/FraxLend/metadataCollateral.d.ts +18 -0
- package/dist/src/engine/implementations/FraxLend/tvlBorrow.d.ts +7 -0
- package/dist/src/engine/implementations/FraxLend/tvlCollateral.d.ts +7 -0
- package/dist/src/engine/implementations/Hyperdrive/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Invalid/metadata.d.ts +2 -2
- package/dist/src/engine/implementations/Ion/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/JsonAirdrop/metadata.d.ts +7 -7
- package/dist/src/engine/implementations/Locker/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/Locker/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Morpho/metadata.d.ts +7 -7
- package/dist/src/engine/implementations/MultiLog/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/MultiLog/tvl.d.ts +3 -3
- package/dist/src/engine/implementations/Radiant/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/Silo/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/UniswapV4/metadata.d.ts +5 -5
- package/dist/src/engine/implementations/UniswapV4/tvl.d.ts +2 -2
- package/dist/src/engine/implementations/Vest/metadata.d.ts +4 -4
- package/dist/src/engine/implementations/morphoBorrow/metadata.d.ts +20 -0
- package/dist/src/engine/implementations/morphoBorrow/tvl.d.ts +7 -0
- package/dist/src/engine/implementations/morphoCollateral/metadata.d.ts +20 -0
- package/dist/src/engine/implementations/morphoCollateral/tvl.d.ts +7 -0
- package/dist/src/engine/implementations/morphoSupply/metadata.d.ts +20 -0
- package/dist/src/engine/implementations/morphoSupply/tvl.d.ts +7 -0
- package/dist/src/engine/metadata/factory.d.ts +1 -1
- package/dist/src/engine/tvl/factory.d.ts +2 -2
- package/dist/src/engine/tvl/logStates.d.ts +1 -1
- package/dist/src/hooks/checkQueryAddressValidity.d.ts +6 -2
- package/dist/src/hooks/checkQueryChainIdValidity.d.ts +6 -2
- package/dist/src/index.d.ts +5548 -2626
- package/dist/src/jobs/{dynamic-data.d.ts → update-v3-caches.d.ts} +4 -1
- package/dist/src/libs/computeFee.d.ts +1 -1
- package/dist/src/libs/deprecated-merklv3/index.d.ts +3 -3
- package/dist/src/libs/merklChainData.d.ts +1 -1
- package/dist/src/libs/parse/marketsWithCache.d.ts +1 -1
- package/dist/src/libs/positions/EigenLayer/index.d.ts +2 -2
- package/dist/src/libs/positions/ajna/index.d.ts +2 -2
- package/dist/src/libs/positions/badger/index.d.ts +2 -2
- package/dist/src/libs/positions/clamm/index.d.ts +1 -1
- package/dist/src/libs/positions/clamm/thegraph/fetchAlmPositions.d.ts +1 -1
- package/dist/src/libs/positions/clamm/thegraph/fetchAmmPositions.d.ts +1 -1
- package/dist/src/libs/positions/clamm/thegraph/fetchFarmedPositions.d.ts +1 -1
- package/dist/src/libs/positions/compound/index.d.ts +2 -2
- package/dist/src/libs/positions/dolomite/index.d.ts +2 -2
- package/dist/src/libs/positions/erc20/index.d.ts +2 -2
- package/dist/src/libs/positions/euler/index.d.ts +2 -2
- package/dist/src/libs/positions/index.d.ts +1 -1
- package/dist/src/libs/positions/morpho/index.d.ts +2 -2
- package/dist/src/libs/positions/prepareFetch.d.ts +1 -1
- package/dist/src/libs/positions/silo/index.d.ts +2 -2
- package/dist/src/libs/positions/types.d.ts +1 -1
- package/dist/src/libs/staticCampaigns.d.ts +1 -1
- package/dist/src/libs/tokens/balances.d.ts +1 -1
- package/dist/src/libs/tokens/tokenInfo.d.ts +1 -1
- package/dist/src/modules/v4/accounting/accounting.controller.d.ts +98 -33
- package/dist/src/modules/v4/accounting/accounting.repository.d.ts +41 -41
- package/dist/src/modules/v4/accounting/accounting.service.d.ts +7 -7
- package/dist/src/modules/v4/apr/apr.model.d.ts +8 -8
- package/dist/src/modules/v4/apr/apr.service.d.ts +1 -1
- package/dist/src/modules/v4/authentication/authentication.controller.d.ts +24 -2
- package/dist/src/modules/v4/blacklist/blacklist.controller.d.ts +64 -37
- package/dist/src/modules/v4/blacklist/blacklist.repository.d.ts +4 -4
- package/dist/src/modules/v4/blacklist/blacklist.service.d.ts +5 -5
- package/dist/src/modules/v4/boost/boost.controller.d.ts +25 -3
- package/dist/src/modules/v4/cache/cache.repository.d.ts +1 -1
- package/dist/src/modules/v4/cache/cache.service.d.ts +1 -1
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +665 -504
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +30 -9
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +191 -191
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +415 -319
- package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +352 -282
- package/dist/src/modules/v4/chain/chain.controller.d.ts +91 -47
- package/dist/src/modules/v4/chain/chain.model.d.ts +11 -3
- package/dist/src/modules/v4/chain/chain.repository.d.ts +10 -10
- package/dist/src/modules/v4/chain/chain.service.d.ts +10 -10
- package/dist/src/modules/v4/chainInteraction/chainInteraction.service.d.ts +1 -1
- package/dist/src/modules/v4/claims/claims.controller.d.ts +15 -2
- package/dist/src/modules/v4/claims/claims.repository.d.ts +1 -1
- package/dist/src/modules/v4/claims/claims.service.d.ts +3 -3
- package/dist/src/modules/v4/computedValue/computedValue.controller.d.ts +47 -7
- package/dist/src/modules/v4/computedValue/computedValue.repository.d.ts +2 -2
- package/dist/src/modules/v4/computedValue/computedValue.service.d.ts +2 -2
- package/dist/src/modules/v4/creator/creator.controller.d.ts +160 -88
- package/dist/src/modules/v4/creator/creator.model.d.ts +1 -1
- package/dist/src/modules/v4/creator/creator.repository.d.ts +20 -20
- package/dist/src/modules/v4/creator/creator.service.d.ts +47 -47
- package/dist/src/modules/v4/dynamicData/dynamicData.model.d.ts +1 -1
- package/dist/src/modules/v4/dynamicData/dynamicData.service.d.ts +1 -1
- package/dist/src/modules/v4/enso/enso.service.d.ts +17 -17
- package/dist/src/modules/v4/explorer/explorer.controller.d.ts +19 -6
- package/dist/src/modules/v4/explorer/explorer.model.d.ts +2 -2
- package/dist/src/modules/v4/explorer/explorer.repository.d.ts +5 -5
- package/dist/src/modules/v4/explorer/explorer.service.d.ts +7 -7
- package/dist/src/modules/v4/interaction/interaction.controller.d.ts +39 -8
- package/dist/src/modules/v4/interaction/interaction.model.d.ts +1 -1
- package/dist/src/modules/v4/interaction/interaction.service.d.ts +2 -2
- package/dist/src/modules/v4/kyberzap/kyberzap.service.d.ts +1 -1
- package/dist/src/modules/v4/liquidity/implementations/AjnaPositionFetcher.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/implementations/BadgerPositionFetcher.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/implementations/ClammPositionFetcher.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/implementations/DolomitePositionFetcher.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/implementations/ERC20PositionFetcher.d.ts +3 -3
- package/dist/src/modules/v4/liquidity/implementations/EulerPositionFetcher.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/liquidity.controller.d.ts +24 -13
- package/dist/src/modules/v4/liquidity/liquidity.model.d.ts +2 -2
- package/dist/src/modules/v4/liquidity/liquidity.repository.d.ts +1 -1
- package/dist/src/modules/v4/merklRoot/merklRoot.controller.d.ts +42 -22
- package/dist/src/modules/v4/merklRoot/merklRoot.repository.d.ts +7 -7
- package/dist/src/modules/v4/merklRoot/merklRoot.service.d.ts +18 -8
- package/dist/src/modules/v4/nodes/node.controller.d.ts +65 -0
- package/dist/src/modules/v4/nodes/node.model.d.ts +21 -0
- package/dist/src/modules/v4/nodes/node.repository.d.ts +21 -0
- package/dist/src/modules/v4/nodes/node.service.d.ts +21 -0
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +743 -644
- package/dist/src/modules/v4/opportunity/opportunity.converter.d.ts +111 -5
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +116 -81
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +408 -408
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +489 -459
- package/dist/src/modules/v4/parse/parse.controller.d.ts +64 -0
- package/dist/src/modules/v4/parse/parse.model.d.ts +10 -0
- package/dist/src/modules/v4/payload/payload.controller.d.ts +125 -0
- package/dist/src/modules/v4/payload/payload.model.d.ts +307 -0
- package/dist/src/modules/v4/payload/payload.service.d.ts +27 -0
- package/dist/src/modules/v4/price/price.controller.d.ts +93 -50
- package/dist/src/modules/v4/price/price.model.d.ts +16 -16
- package/dist/src/modules/v4/price/price.repository.d.ts +11 -11
- package/dist/src/modules/v4/price/price.service.d.ts +9 -9
- package/dist/src/modules/v4/prisma/index.d.ts +1 -1
- package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +939 -146
- package/dist/src/modules/v4/programPayload/programPayload.model.d.ts +12 -14
- package/dist/src/modules/v4/programPayload/programPayload.repository.d.ts +450 -362
- package/dist/src/modules/v4/programPayload/programPayload.service.d.ts +40 -19
- package/dist/src/modules/v4/protocol/protocol.controller.d.ts +117 -67
- package/dist/src/modules/v4/protocol/protocol.model.d.ts +2 -2
- package/dist/src/modules/v4/protocol/protocol.repository.d.ts +29 -29
- package/dist/src/modules/v4/protocol/protocol.service.d.ts +9 -6
- package/dist/src/modules/v4/referral/referral.controller.d.ts +29 -7
- package/dist/src/modules/v4/referral/referral.service.d.ts +8 -8
- package/dist/src/modules/v4/reward/reward.controller.d.ts +261 -93
- package/dist/src/modules/v4/reward/reward.converter.d.ts +1 -1
- package/dist/src/modules/v4/reward/reward.model.d.ts +3 -3
- package/dist/src/modules/v4/reward/reward.repository.d.ts +55 -54
- package/dist/src/modules/v4/reward/reward.service.d.ts +260 -260
- package/dist/src/modules/v4/router.d.ts +4706 -2394
- package/dist/src/modules/v4/status/status.controller.d.ts +127 -64
- package/dist/src/modules/v4/status/status.model.d.ts +10 -10
- package/dist/src/modules/v4/status/status.repository.d.ts +35 -35
- package/dist/src/modules/v4/status/status.service.d.ts +23 -23
- package/dist/src/modules/v4/token/token.controller.d.ts +224 -130
- package/dist/src/modules/v4/token/token.model.d.ts +1 -1
- package/dist/src/modules/v4/token/token.repository.d.ts +41 -37
- package/dist/src/modules/v4/token/token.service.d.ts +106 -101
- package/dist/src/modules/v4/turtle/turtle.controller.d.ts +15 -2
- package/dist/src/modules/v4/tvl/tvl.model.d.ts +5 -5
- package/dist/src/modules/v4/tvl/tvl.service.d.ts +1 -1
- package/dist/src/modules/v4/uniswap/uniswap.controller.d.ts +248 -11
- package/dist/src/modules/v4/uniswap/uniswap.model.d.ts +3 -3
- package/dist/src/modules/v4/uniswap/uniswap.repository.d.ts +4 -4
- package/dist/src/modules/v4/uniswap/uniswap.service.d.ts +3 -3
- package/dist/src/modules/v4/user/user.controller.d.ts +175 -164
- package/dist/src/modules/v4/user/user.model.d.ts +10 -1
- package/dist/src/modules/v4/user/user.repository.d.ts +7 -7
- package/dist/src/modules/v4/user/user.service.d.ts +7 -7
- package/dist/src/plugins/error-handling.plugin.d.ts +7 -3
- package/dist/src/routes/v1/allowances.d.ts +18 -5
- package/dist/src/routes/v1/balances.d.ts +16 -3
- package/dist/src/routes/v1/prices.d.ts +15 -2
- package/dist/src/routes/v1/router.d.ts +44 -4
- package/dist/src/routes/v1/tokens.d.ts +15 -2
- package/dist/src/routes/v2/merkl.d.ts +41 -4
- package/dist/src/routes/v2/router.d.ts +41 -4
- package/dist/src/routes/v3/app.d.ts +15 -2
- package/dist/src/routes/v3/blacklist.d.ts +15 -2
- package/dist/src/routes/v3/campaign/delay.d.ts +27 -16
- package/dist/src/routes/v3/campaignClaims.d.ts +15 -2
- package/dist/src/routes/v3/campaignUnclaimed.d.ts +15 -2
- package/dist/src/routes/v3/campaigns.d.ts +17 -4
- package/dist/src/routes/v3/campaignsForMainParameter.d.ts +15 -2
- package/dist/src/routes/v3/campaignsRewardsReport.d.ts +15 -2
- package/dist/src/routes/v3/claims.d.ts +15 -2
- package/dist/src/routes/v3/compoundV2.d.ts +15 -2
- package/dist/src/routes/v3/createCampaign.d.ts +16 -3
- package/dist/src/routes/v3/dolomite.d.ts +15 -2
- package/dist/src/routes/v3/euler.d.ts +43 -14
- package/dist/src/routes/v3/fetch.d.ts +15 -2
- package/dist/src/routes/v3/health.d.ts +15 -2
- package/dist/src/routes/v3/lostyield.d.ts +15 -2
- package/dist/src/routes/v3/merkl.d.ts +34 -6
- package/dist/src/routes/v3/morphoMarkets.d.ts +15 -2
- package/dist/src/routes/v3/morphoVaults.d.ts +15 -2
- package/dist/src/routes/v3/multiChainPositions.d.ts +15 -2
- package/dist/src/routes/v3/opportunity.d.ts +72 -6
- package/dist/src/routes/v3/overview.d.ts +15 -2
- package/dist/src/routes/v3/parse.d.ts +15 -2
- package/dist/src/routes/v3/payload.d.ts +19 -6
- package/dist/src/routes/v3/poolInfo.d.ts +18 -5
- package/dist/src/routes/v3/positions.d.ts +15 -2
- package/dist/src/routes/v3/radiant.d.ts +15 -2
- package/dist/src/routes/v3/recipients.d.ts +15 -2
- package/dist/src/routes/v3/rewards.d.ts +18 -5
- package/dist/src/routes/v3/rewardsReport.d.ts +16 -3
- package/dist/src/routes/v3/router.d.ts +608 -55
- package/dist/src/routes/v3/silo.d.ts +15 -2
- package/dist/src/routes/v3/token.d.ts +16 -3
- package/dist/src/routes/v3/twt/participants.d.ts +24 -13
- package/dist/src/routes/v3/uniswapv4.d.ts +192 -19
- package/dist/src/routes/v3/updates.d.ts +15 -2
- package/dist/src/routes/v3/userRewards.d.ts +18 -5
- package/dist/src/utils/decodeCalls.d.ts +1 -1
- package/dist/src/utils/encodeCalls.d.ts +2 -2
- package/dist/src/utils/error.d.ts +8 -4
- package/dist/src/utils/generateCardName.d.ts +2 -2
- package/dist/src/utils/generic.d.ts +2 -2
- package/dist/src/utils/lastBlockBefore.d.ts +1 -1
- package/dist/src/utils/logger.d.ts +0 -8
- package/dist/src/utils/pricer.d.ts +1 -1
- package/dist/src/utils/prices/chainlinkRead.d.ts +1 -1
- package/dist/src/utils/prices/curveVirtualPrice.d.ts +1 -1
- package/dist/src/utils/prices/getDQUICK.d.ts +1 -1
- package/dist/src/utils/prices/priceFetcherFactory.d.ts +1 -1
- package/dist/src/utils/prices/services/OnChainCallService.d.ts +1 -1
- package/dist/src/utils/prices/services/coinGeckoService.d.ts +1 -1
- package/dist/src/utils/prices/services/defillamaService.d.ts +1 -1
- package/dist/src/utils/prices/services/dexScreenerService.d.ts +1 -1
- package/dist/src/utils/prices/services/erc4626Service.d.ts +1 -1
- package/dist/src/utils/prices/services/getERC4626.d.ts +1 -1
- package/dist/src/utils/prices/services/indexCoopService.d.ts +1 -1
- package/dist/src/utils/prices/services/priceFetcher.d.ts +1 -1
- package/dist/src/utils/prices/uniV2Price.d.ts +1 -1
- package/dist/src/utils/providers.d.ts +113 -2
- package/dist/src/utils/queries/allCampaigns.d.ts +1 -2
- package/dist/src/utils/sanitizeChain.d.ts +2 -2
- package/dist/src/utils/stryke.d.ts +1 -1
- package/dist/src/utils/throw.d.ts +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +28 -48
- package/dist/database/api/.generated/default.d.ts +0 -1
- package/dist/database/api/.generated/default.js +0 -1
- package/dist/database/api/.generated/drizzle/schema.d.ts +0 -3342
- package/dist/database/api/.generated/drizzle/schema.js +0 -928
- package/dist/database/api/.generated/drizzle/schema.ts +0 -989
- package/dist/database/api/.generated/edge.d.ts +0 -1
- package/dist/database/api/.generated/edge.js +0 -725
- package/dist/database/api/.generated/index-browser.js +0 -696
- package/dist/database/api/.generated/index.d.ts +0 -48645
- package/dist/database/api/.generated/index.js +0 -758
- package/dist/database/api/.generated/libquery_engine-debian-openssl-3.0.x.so.node +0 -0
- package/dist/database/api/.generated/libquery_engine-linux-arm64-openssl-1.1.x.so.node +0 -0
- package/dist/database/api/.generated/libquery_engine-linux-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/api/.generated/libquery_engine-linux-musl-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/api/.generated/package.json +0 -97
- package/dist/database/api/.generated/runtime/edge-esm.js +0 -31
- package/dist/database/api/.generated/runtime/edge.js +0 -31
- package/dist/database/api/.generated/runtime/index-browser.d.ts +0 -365
- package/dist/database/api/.generated/runtime/index-browser.js +0 -13
- package/dist/database/api/.generated/runtime/library.d.ts +0 -3447
- package/dist/database/api/.generated/runtime/library.js +0 -143
- package/dist/database/api/.generated/runtime/react-native.js +0 -80
- package/dist/database/api/.generated/runtime/wasm.js +0 -32
- package/dist/database/api/.generated/schema.prisma +0 -482
- package/dist/database/api/.generated/wasm.d.ts +0 -1
- package/dist/database/api/.generated/wasm.js +0 -696
- package/dist/database/engine/.generated/default.d.ts +0 -1
- package/dist/database/engine/.generated/default.js +0 -1
- package/dist/database/engine/.generated/edge.d.ts +0 -1
- package/dist/database/engine/.generated/edge.js +0 -485
- package/dist/database/engine/.generated/index-browser.js +0 -456
- package/dist/database/engine/.generated/index.d.ts +0 -22107
- package/dist/database/engine/.generated/index.js +0 -518
- package/dist/database/engine/.generated/libquery_engine-debian-openssl-3.0.x.so.node +0 -0
- package/dist/database/engine/.generated/libquery_engine-linux-arm64-openssl-1.1.x.so.node +0 -0
- package/dist/database/engine/.generated/libquery_engine-linux-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/engine/.generated/libquery_engine-linux-musl-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/engine/.generated/package.json +0 -97
- package/dist/database/engine/.generated/runtime/edge-esm.js +0 -31
- package/dist/database/engine/.generated/runtime/edge.js +0 -31
- package/dist/database/engine/.generated/runtime/index-browser.d.ts +0 -365
- package/dist/database/engine/.generated/runtime/index-browser.js +0 -13
- package/dist/database/engine/.generated/runtime/library.d.ts +0 -3447
- package/dist/database/engine/.generated/runtime/library.js +0 -143
- package/dist/database/engine/.generated/runtime/react-native.js +0 -80
- package/dist/database/engine/.generated/runtime/wasm.js +0 -32
- package/dist/database/engine/.generated/schema.prisma +0 -248
- package/dist/database/engine/.generated/wasm.d.ts +0 -1
- package/dist/database/engine/.generated/wasm.js +0 -456
- package/dist/database/index.d.ts +0 -29
- package/dist/database/index.js +0 -17
- package/dist/src/cache/declaration.js +0 -121
- package/dist/src/cache/index.js +0 -161
- package/dist/src/cache/redis.js +0 -57
- package/dist/src/constants.js +0 -93
- package/dist/src/engine/deprecated/dynamicData/implementations/Ajna.js +0 -107
- package/dist/src/engine/deprecated/dynamicData/implementations/Badger.js +0 -90
- package/dist/src/engine/deprecated/dynamicData/implementations/Clamm.js +0 -975
- package/dist/src/engine/deprecated/dynamicData/implementations/Compound.js +0 -139
- package/dist/src/engine/deprecated/dynamicData/implementations/CompoundV3.js +0 -101
- package/dist/src/engine/deprecated/dynamicData/implementations/Dolomite.js +0 -59
- package/dist/src/engine/deprecated/dynamicData/implementations/ERC721.js +0 -87
- package/dist/src/engine/deprecated/dynamicData/implementations/ERCMultiToken.js +0 -161
- package/dist/src/engine/deprecated/dynamicData/implementations/EigenLayer.js +0 -67
- package/dist/src/engine/deprecated/dynamicData/implementations/Encompassing.js +0 -26
- package/dist/src/engine/deprecated/dynamicData/implementations/Erc20.js +0 -162
- package/dist/src/engine/deprecated/dynamicData/implementations/Erc20Snapshot.js +0 -32
- package/dist/src/engine/deprecated/dynamicData/implementations/EventBased.js +0 -129
- package/dist/src/engine/deprecated/dynamicData/implementations/Hyperdrive.js +0 -112
- package/dist/src/engine/deprecated/dynamicData/implementations/Morpho.js +0 -132
- package/dist/src/engine/deprecated/dynamicData/implementations/Radiant.js +0 -123
- package/dist/src/engine/deprecated/dynamicData/implementations/Silo.js +0 -112
- package/dist/src/engine/deprecated/dynamicData/implementations/UniswapV4.js +0 -255
- package/dist/src/engine/deprecated/dynamicData/implementations/Vest.js +0 -61
- package/dist/src/engine/deprecated/dynamicData/implementations/default.js +0 -5
- package/dist/src/engine/deprecated/dynamicData/utils/fetchA51Strategies.js +0 -44
- package/dist/src/engine/deprecated/dynamicData/utils/fetchClamInfo.js +0 -27
- package/dist/src/engine/deprecated/dynamicData/utils/fetchLogs.js +0 -149
- package/dist/src/engine/deprecated/dynamicData/utils/getCompV2ForksVaults.js +0 -141
- package/dist/src/engine/deprecated/dynamicData/utils/getContractCreationBlock.js +0 -44
- package/dist/src/engine/deprecated/dynamicData/utils/getDolomiteMarkets.js +0 -53
- package/dist/src/engine/deprecated/dynamicData/utils/getEulerV2Vaults.js +0 -266
- package/dist/src/engine/deprecated/dynamicData/utils/getFixedApr.js +0 -27
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/GenericProcessor.js +0 -335
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/eulerVaultNames.js +0 -13
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/factoryFinder.js +0 -47
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/getBlacklistedSupply.js +0 -22
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/getCrossCurveTokenPrice.js +0 -13
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/hardcoded.js +0 -30
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/metamorphoTvl.d.ts +0 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/metamorphoTvl.js +0 -35
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/ownerFinder.js +0 -16
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/spliceTVL.js +0 -23
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/helpers/treasuryFinder.js +0 -10
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AaveProcessor.js +0 -26
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AnglesLiquid.js +0 -51
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AssetProcessor.js +0 -48
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/AuraProcessor.js +0 -113
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BEXRewardGaugeProcessor.js +0 -111
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerGaugeProcessor.js +0 -86
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerPoolProcessor.js +0 -101
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BalancerV3PoolProcessor.js +0 -81
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BeefyProcessor.js +0 -54
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/BunniV2Processor.js +0 -91
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/CompoundProcessor.js +0 -37
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/ERC4626Processor.js +0 -37
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EnzymeProcessor.js +0 -52
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EqualizerGaugeProcessor.js +0 -54
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EulerBorrowProcessor.js +0 -51
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/EulerLendProcessor.js +0 -58
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/FluidProcessor.js +0 -37
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/FraxProcessor.js +0 -42
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GammaALMProcessor.js +0 -52
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GammaProcessor.js +0 -67
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/GearboxProcessor.js +0 -58
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HanjiVaultProcessor.js +0 -63
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HoldStationProcessor.js +0 -35
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/HourglassProcessor.js +0 -35
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/MaverickBPProcessor.js +0 -78
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/MetamorphoProcessor.js +0 -48
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/NoLinkVaultProcessor.js +0 -82
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/PendleProcessor.js +0 -30
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/PendleYTProcessor.js +0 -30
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RadiantProcessor.js +0 -59
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/RfxProcessor.js +0 -71
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/Satlayer.js +0 -28
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpectraProcessor.js +0 -42
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpectraYTProcessor.js +0 -40
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SpliceProcessor.js +0 -37
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/StabilityProcessor.js +0 -30
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/SturdySiloProcessor.js +0 -38
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TempestVaultProcessor.js +0 -83
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TemplateProcessor.js +0 -40
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/TorosProcessor.js +0 -34
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/UniswapProcessor.js +0 -72
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/VicunaProcessor.js +0 -36
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/WoofiProcessor.js +0 -41
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/ZkSwapThreePoolProcessor.js +0 -60
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveNPoolProcessor.js +0 -102
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/curveProcessor.js +0 -85
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/processorMapping.js +0 -159
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/stakedCurveProcessor.js +0 -88
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/implementations/xU308Processor.js +0 -42
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesPrices.js +0 -28
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound1.js +0 -353
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound2.js +0 -22
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound3.js +0 -22
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/subtypesRound4.js +0 -22
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/tokenTypeStruct.js +0 -1
- package/dist/src/engine/deprecated/erc20SubTypeProcessors/tokenTypeToProtocolAndAction.js +0 -155
- package/dist/src/engine/implementations/Ajna/metadata.js +0 -59
- package/dist/src/engine/implementations/Ajna/tvl.js +0 -91
- package/dist/src/engine/implementations/Ambient/metadata.js +0 -36
- package/dist/src/engine/implementations/Ambient/tvl.js +0 -178
- package/dist/src/engine/implementations/Badger/metadata.js +0 -31
- package/dist/src/engine/implementations/Clamm/metadata.js +0 -176
- package/dist/src/engine/implementations/Compound/metadata.js +0 -23
- package/dist/src/engine/implementations/CompoundV3/metadata.js +0 -23
- package/dist/src/engine/implementations/Default/metadata.js +0 -12
- package/dist/src/engine/implementations/Dolomite/metadata.js +0 -20
- package/dist/src/engine/implementations/EigenLayer/metadata.js +0 -12
- package/dist/src/engine/implementations/EigenLayer/tvl.js +0 -60
- package/dist/src/engine/implementations/Encompassing/metadata.js +0 -43
- package/dist/src/engine/implementations/Erc20/metadata.js +0 -64
- package/dist/src/engine/implementations/Erc20/subTypes/detect.js +0 -170
- package/dist/src/engine/implementations/Erc20/subTypes/factories.js +0 -69
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/aave/metadata.js +0 -46
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/aave/tvl.js +0 -51
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/euler/metadata.js +0 -35
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/euler/tvl.js +0 -59
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/gearbox/metadata.js +0 -21
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/gearbox/tvl.js +0 -46
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/hypurrfiIsolatedMarket/metadata.js +0 -40
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/hypurrfiIsolatedMarket/tvl.js +0 -57
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/lendleVaults/metadata.js +0 -20
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/lendleVaults/tvl.js +0 -52
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/pino/metadata.js +0 -38
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/pino/tvl.js +0 -83
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmax/metadata.js +0 -24
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/termmax/tvl.js +0 -69
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/uniswapV2/metadata.js +0 -65
- package/dist/src/engine/implementations/Erc20/subTypes/implementations/uniswapV2/tvl.js +0 -94
- package/dist/src/engine/implementations/Erc20/subTypes/index.js +0 -119
- package/dist/src/engine/implementations/Erc20/tvl.js +0 -99
- package/dist/src/engine/implementations/Erc20Snapshot/metadata.js +0 -11
- package/dist/src/engine/implementations/Erc721/metadata.js +0 -13
- package/dist/src/engine/implementations/ErcMultiToken/metadata.js +0 -63
- package/dist/src/engine/implementations/EventBased/metadata.js +0 -181
- package/dist/src/engine/implementations/Hyperdrive/metadata.js +0 -29
- package/dist/src/engine/implementations/Invalid/metadata.js +0 -10
- package/dist/src/engine/implementations/Ion/metadata.js +0 -16
- package/dist/src/engine/implementations/JsonAirdrop/metadata.js +0 -43
- package/dist/src/engine/implementations/Locker/metadata.js +0 -36
- package/dist/src/engine/implementations/Locker/tvl.js +0 -26
- package/dist/src/engine/implementations/Morpho/metadata.js +0 -63
- package/dist/src/engine/implementations/MultiLog/metadata.js +0 -36
- package/dist/src/engine/implementations/MultiLog/tvl.js +0 -59
- package/dist/src/engine/implementations/Radiant/metadata.js +0 -33
- package/dist/src/engine/implementations/Silo/metadata.js +0 -20
- package/dist/src/engine/implementations/UniswapV4/metadata.js +0 -36
- package/dist/src/engine/implementations/UniswapV4/tvl.js +0 -158
- package/dist/src/engine/implementations/Vest/metadata.js +0 -13
- package/dist/src/engine/metadata/factory.js +0 -76
- package/dist/src/engine/tvl/factory.js +0 -87
- package/dist/src/engine/tvl/logStates.js +0 -106
- package/dist/src/errors/BadRequest.error.js +0 -7
- package/dist/src/errors/Conflict.error.js +0 -7
- package/dist/src/errors/HttpError.js +0 -17
- package/dist/src/errors/InvalidParameter.error.js +0 -7
- package/dist/src/errors/NotFound.error.js +0 -12
- package/dist/src/errors/Opportunity.error.js +0 -11
- package/dist/src/errors/UnableToFindPrice.error.js +0 -7
- package/dist/src/errors/Unauthorized.error.js +0 -7
- package/dist/src/errors/VoidString.error.js +0 -7
- package/dist/src/errors/index.js +0 -6
- package/dist/src/guards/BackOffice.guard.js +0 -10
- package/dist/src/guards/Engine.guard.js +0 -9
- package/dist/src/guards/TokenAuth.guard.js +0 -10
- package/dist/src/guards/VerifyJwt.guard.js +0 -13
- package/dist/src/hooks/checkQueryAddressValidity.js +0 -7
- package/dist/src/hooks/checkQueryChainIdValidity.js +0 -7
- package/dist/src/index.js +0 -113
- package/dist/src/jobs/dynamic-data.js +0 -159
- package/dist/src/jobs/pendings.js +0 -238
- package/dist/src/jobs/prices.js +0 -10
- package/dist/src/jobs/reward-breakdowns.js +0 -163
- package/dist/src/jobs/rewards.js +0 -112
- package/dist/src/jobs/set-dungeon-keeper.js +0 -90
- package/dist/src/jobs/update-analytics.js +0 -548
- package/dist/src/jobs/update-dynamic-data.js +0 -57
- package/dist/src/jobs/update-euler-vaults.js +0 -18
- package/dist/src/jobs/update-rpc-calls-cache.js +0 -30
- package/dist/src/jobs/update-uniswap-v4-pools.js +0 -15
- package/dist/src/libs/computeFee.js +0 -34
- package/dist/src/libs/deprecated-merklv3/index.js +0 -183
- package/dist/src/libs/getTokensList.js +0 -19
- package/dist/src/libs/merklChainData.js +0 -116
- package/dist/src/libs/parse/marketsWithCache.js +0 -8
- package/dist/src/libs/positions/EigenLayer/index.js +0 -54
- package/dist/src/libs/positions/ajna/index.js +0 -107
- package/dist/src/libs/positions/badger/index.js +0 -80
- package/dist/src/libs/positions/clamm/index.js +0 -412
- package/dist/src/libs/positions/clamm/thegraph/fetchAlmPositions.js +0 -36
- package/dist/src/libs/positions/clamm/thegraph/fetchAmmPositions.js +0 -36
- package/dist/src/libs/positions/clamm/thegraph/fetchFarmedPositions.js +0 -42
- package/dist/src/libs/positions/clamm/thegraph/index.js +0 -163
- package/dist/src/libs/positions/compound/index.js +0 -91
- package/dist/src/libs/positions/dolomite/index.js +0 -51
- package/dist/src/libs/positions/erc20/index.js +0 -55
- package/dist/src/libs/positions/euler/index.js +0 -56
- package/dist/src/libs/positions/index.js +0 -56
- package/dist/src/libs/positions/morpho/index.js +0 -177
- package/dist/src/libs/positions/prepareFetch.js +0 -392
- package/dist/src/libs/positions/silo/index.js +0 -68
- package/dist/src/libs/positions/types.js +0 -1
- package/dist/src/libs/staticCampaigns.js +0 -15
- package/dist/src/libs/tokens/allowances.js +0 -18
- package/dist/src/libs/tokens/balances.js +0 -128
- package/dist/src/libs/tokens/tokenInfo.js +0 -22
- package/dist/src/modules/v4/accounting/accounting.controller.js +0 -61
- package/dist/src/modules/v4/accounting/accounting.model.js +0 -32
- package/dist/src/modules/v4/accounting/accounting.repository.js +0 -154
- package/dist/src/modules/v4/accounting/accounting.service.js +0 -107
- package/dist/src/modules/v4/airflow/airflow.service.js +0 -20
- package/dist/src/modules/v4/apr/apr.model.js +0 -13
- package/dist/src/modules/v4/apr/apr.service.js +0 -52
- package/dist/src/modules/v4/authentication/authentication.controller.js +0 -23
- package/dist/src/modules/v4/authentication/authentication.model.js +0 -6
- package/dist/src/modules/v4/authentication/authentication.service.js +0 -31
- package/dist/src/modules/v4/blacklist/blacklist.controller.js +0 -42
- package/dist/src/modules/v4/blacklist/blacklist.model.js +0 -13
- package/dist/src/modules/v4/blacklist/blacklist.repository.js +0 -50
- package/dist/src/modules/v4/blacklist/blacklist.service.js +0 -31
- package/dist/src/modules/v4/boost/boost.controller.js +0 -15
- package/dist/src/modules/v4/boost/boost.model.js +0 -14
- package/dist/src/modules/v4/boost/boost.service.js +0 -20
- package/dist/src/modules/v4/bucket/bucket.model.js +0 -85
- package/dist/src/modules/v4/bucket/bucket.service.js +0 -178
- package/dist/src/modules/v4/cache/cache.model.js +0 -14
- package/dist/src/modules/v4/cache/cache.repository.js +0 -22
- package/dist/src/modules/v4/cache/cache.service.js +0 -59
- package/dist/src/modules/v4/campaign/campaign.controller.js +0 -174
- package/dist/src/modules/v4/campaign/campaign.model.js +0 -140
- package/dist/src/modules/v4/campaign/campaign.repository.js +0 -535
- package/dist/src/modules/v4/campaign/campaign.service.js +0 -455
- package/dist/src/modules/v4/campaign/campaign.test.controller.js +0 -127
- package/dist/src/modules/v4/chain/chain.controller.js +0 -44
- package/dist/src/modules/v4/chain/chain.model.js +0 -36
- package/dist/src/modules/v4/chain/chain.repository.js +0 -79
- package/dist/src/modules/v4/chain/chain.service.js +0 -55
- package/dist/src/modules/v4/chainInteraction/chainInteraction.service.js +0 -4
- package/dist/src/modules/v4/claims/claims.controller.js +0 -19
- package/dist/src/modules/v4/claims/claims.model.js +0 -1
- package/dist/src/modules/v4/claims/claims.repository.js +0 -39
- package/dist/src/modules/v4/claims/claims.service.js +0 -40
- package/dist/src/modules/v4/coingecko/coingecko.model.js +0 -1
- package/dist/src/modules/v4/coingecko/coingecko.repository.js +0 -9
- package/dist/src/modules/v4/coingecko/coingecko.service.js +0 -65
- package/dist/src/modules/v4/computedValue/computedValue.controller.js +0 -46
- package/dist/src/modules/v4/computedValue/computedValue.model.js +0 -30
- package/dist/src/modules/v4/computedValue/computedValue.repository.js +0 -48
- package/dist/src/modules/v4/computedValue/computedValue.service.js +0 -23
- package/dist/src/modules/v4/creator/creator.controller.js +0 -43
- package/dist/src/modules/v4/creator/creator.model.js +0 -42
- package/dist/src/modules/v4/creator/creator.repository.js +0 -69
- package/dist/src/modules/v4/creator/creator.service.js +0 -92
- package/dist/src/modules/v4/dynamicData/dynamicData.model.js +0 -56
- package/dist/src/modules/v4/dynamicData/dynamicData.service.js +0 -263
- package/dist/src/modules/v4/enso/enso.model.js +0 -147
- package/dist/src/modules/v4/enso/enso.service.js +0 -116
- package/dist/src/modules/v4/explorer/explorer.controller.js +0 -13
- package/dist/src/modules/v4/explorer/explorer.model.js +0 -8
- package/dist/src/modules/v4/explorer/explorer.repository.js +0 -23
- package/dist/src/modules/v4/explorer/explorer.service.js +0 -24
- package/dist/src/modules/v4/icon/icon.model.js +0 -1
- package/dist/src/modules/v4/icon/icon.service.js +0 -16
- package/dist/src/modules/v4/interaction/interaction.controller.js +0 -45
- package/dist/src/modules/v4/interaction/interaction.model.js +0 -25
- package/dist/src/modules/v4/interaction/interaction.service.js +0 -95
- package/dist/src/modules/v4/kyberzap/kyberzap.model.js +0 -83
- package/dist/src/modules/v4/kyberzap/kyberzap.service.js +0 -176
- package/dist/src/modules/v4/liquidity/implementations/AjnaPositionFetcher.js +0 -90
- package/dist/src/modules/v4/liquidity/implementations/BadgerPositionFetcher.js +0 -69
- package/dist/src/modules/v4/liquidity/implementations/ClammPositionFetcher.js +0 -61
- package/dist/src/modules/v4/liquidity/implementations/DolomitePositionFetcher.js +0 -45
- package/dist/src/modules/v4/liquidity/implementations/ERC20PositionFetcher.js +0 -47
- package/dist/src/modules/v4/liquidity/implementations/EulerPositionFetcher.js +0 -40
- package/dist/src/modules/v4/liquidity/liquidity.controller.js +0 -16
- package/dist/src/modules/v4/liquidity/liquidity.model.js +0 -5
- package/dist/src/modules/v4/liquidity/liquidity.repository.js +0 -6
- package/dist/src/modules/v4/liquidity/liquidity.service.js +0 -34
- package/dist/src/modules/v4/merklRoot/merklRoot.controller.js +0 -31
- package/dist/src/modules/v4/merklRoot/merklRoot.model.js +0 -12
- package/dist/src/modules/v4/merklRoot/merklRoot.repository.js +0 -56
- package/dist/src/modules/v4/merklRoot/merklRoot.service.js +0 -48
- package/dist/src/modules/v4/opportunity/opportunity.controller.js +0 -189
- package/dist/src/modules/v4/opportunity/opportunity.converter.js +0 -174
- package/dist/src/modules/v4/opportunity/opportunity.model.js +0 -132
- package/dist/src/modules/v4/opportunity/opportunity.repository.js +0 -515
- package/dist/src/modules/v4/opportunity/opportunity.service.js +0 -380
- package/dist/src/modules/v4/opportunity/transform-id.pipe.js +0 -6
- package/dist/src/modules/v4/opportunity/validate-id.pipe.js +0 -12
- package/dist/src/modules/v4/price/price.controller.js +0 -56
- package/dist/src/modules/v4/price/price.model.js +0 -12
- package/dist/src/modules/v4/price/price.repository.js +0 -22
- package/dist/src/modules/v4/price/price.service.js +0 -63
- package/dist/src/modules/v4/prisma/index.js +0 -1
- package/dist/src/modules/v4/programPayload/programPayload.controller.js +0 -85
- package/dist/src/modules/v4/programPayload/programPayload.model.js +0 -179
- package/dist/src/modules/v4/programPayload/programPayload.repository.js +0 -7567
- package/dist/src/modules/v4/programPayload/programPayload.service.js +0 -240
- package/dist/src/modules/v4/protocol/protocol.controller.js +0 -42
- package/dist/src/modules/v4/protocol/protocol.model.js +0 -186
- package/dist/src/modules/v4/protocol/protocol.repository.js +0 -175
- package/dist/src/modules/v4/protocol/protocol.service.js +0 -73
- package/dist/src/modules/v4/referral/referral.controller.js +0 -25
- package/dist/src/modules/v4/referral/referral.model.js +0 -12
- package/dist/src/modules/v4/referral/referral.service.js +0 -171
- package/dist/src/modules/v4/reward/reward.controller.js +0 -140
- package/dist/src/modules/v4/reward/reward.converter.js +0 -124
- package/dist/src/modules/v4/reward/reward.model.js +0 -153
- package/dist/src/modules/v4/reward/reward.repository.js +0 -350
- package/dist/src/modules/v4/reward/reward.service.js +0 -406
- package/dist/src/modules/v4/router.js +0 -93
- package/dist/src/modules/v4/status/status.controller.js +0 -68
- package/dist/src/modules/v4/status/status.model.js +0 -34
- package/dist/src/modules/v4/status/status.repository.js +0 -146
- package/dist/src/modules/v4/status/status.service.js +0 -150
- package/dist/src/modules/v4/token/token.controller.js +0 -118
- package/dist/src/modules/v4/token/token.model.js +0 -87
- package/dist/src/modules/v4/token/token.repository.js +0 -192
- package/dist/src/modules/v4/token/token.service.js +0 -410
- package/dist/src/modules/v4/tracer/tracer.service.js +0 -30
- package/dist/src/modules/v4/turtle/turtle.controller.js +0 -20
- package/dist/src/modules/v4/turtle/turtle.repository.js +0 -40
- package/dist/src/modules/v4/turtle/turtle.service.js +0 -28
- package/dist/src/modules/v4/tvl/tvl.model.js +0 -13
- package/dist/src/modules/v4/tvl/tvl.service.js +0 -63
- package/dist/src/modules/v4/uniswap/uniswap.controller.js +0 -100
- package/dist/src/modules/v4/uniswap/uniswap.model.js +0 -46
- package/dist/src/modules/v4/uniswap/uniswap.repository.js +0 -12
- package/dist/src/modules/v4/uniswap/uniswap.service.js +0 -245
- package/dist/src/modules/v4/user/user.controller.js +0 -77
- package/dist/src/modules/v4/user/user.model.js +0 -66
- package/dist/src/modules/v4/user/user.repository.js +0 -41
- package/dist/src/modules/v4/user/user.service.js +0 -102
- package/dist/src/plugins/error-handling.plugin.js +0 -34
- package/dist/src/routes/v1/allowances.js +0 -115
- package/dist/src/routes/v1/balances.js +0 -25
- package/dist/src/routes/v1/prices.js +0 -9
- package/dist/src/routes/v1/router.js +0 -6
- package/dist/src/routes/v1/tokens.js +0 -17
- package/dist/src/routes/v2/merkl.js +0 -13
- package/dist/src/routes/v2/router.js +0 -3
- package/dist/src/routes/v3/app.js +0 -43
- package/dist/src/routes/v3/blacklist.js +0 -19
- package/dist/src/routes/v3/campaign/delay.js +0 -81
- package/dist/src/routes/v3/campaignClaims.js +0 -29
- package/dist/src/routes/v3/campaignUnclaimed.js +0 -28
- package/dist/src/routes/v3/campaigns.js +0 -136
- package/dist/src/routes/v3/campaignsForMainParameter.js +0 -33
- package/dist/src/routes/v3/campaignsRewardsReport.js +0 -48
- package/dist/src/routes/v3/claims.js +0 -16
- package/dist/src/routes/v3/compoundV2.js +0 -9
- package/dist/src/routes/v3/createCampaign.js +0 -66
- package/dist/src/routes/v3/dolomite.js +0 -12
- package/dist/src/routes/v3/euler.js +0 -52
- package/dist/src/routes/v3/fetch.js +0 -27
- package/dist/src/routes/v3/health.js +0 -13
- package/dist/src/routes/v3/lostyield.js +0 -101
- package/dist/src/routes/v3/merkl.js +0 -119
- package/dist/src/routes/v3/morphoMarkets.js +0 -27
- package/dist/src/routes/v3/morphoVaults.js +0 -22
- package/dist/src/routes/v3/multiChainPositions.js +0 -70
- package/dist/src/routes/v3/opportunity.js +0 -28
- package/dist/src/routes/v3/overview.js +0 -72
- package/dist/src/routes/v3/parse.js +0 -23
- package/dist/src/routes/v3/payload.js +0 -40
- package/dist/src/routes/v3/poolInfo.js +0 -88
- package/dist/src/routes/v3/positions.js +0 -62
- package/dist/src/routes/v3/radiant.js +0 -26
- package/dist/src/routes/v3/recipients.js +0 -29
- package/dist/src/routes/v3/rewards.js +0 -36
- package/dist/src/routes/v3/rewardsReport.js +0 -40
- package/dist/src/routes/v3/router.js +0 -70
- package/dist/src/routes/v3/silo.js +0 -20
- package/dist/src/routes/v3/token.js +0 -24
- package/dist/src/routes/v3/twt/participants.js +0 -63
- package/dist/src/routes/v3/uniswapv4.js +0 -29
- package/dist/src/routes/v3/updates.js +0 -47
- package/dist/src/routes/v3/userRewards.js +0 -63
- package/dist/src/scripts/fill-coingecko-data.js +0 -3
- package/dist/src/scripts/fill-descriptions.js +0 -101
- package/dist/src/scripts/fill-unknown-tokens.js +0 -58
- package/dist/src/scripts/reparse-opportunities.js +0 -75
- package/dist/src/types/external/spectraAPI.js +0 -1
- package/dist/src/types/index.js +0 -1
- package/dist/src/utils/TailSampler.js +0 -23
- package/dist/src/utils/bigintToString.js +0 -20
- package/dist/src/utils/caseChanges.js +0 -15
- package/dist/src/utils/decodeCalls.js +0 -340
- package/dist/src/utils/encodeCalls.js +0 -506
- package/dist/src/utils/error.js +0 -114
- package/dist/src/utils/execute.js +0 -117
- package/dist/src/utils/generateCardName.js +0 -209
- package/dist/src/utils/generic.js +0 -43
- package/dist/src/utils/hashArray.js +0 -7
- package/dist/src/utils/lastBlockBefore.js +0 -78
- package/dist/src/utils/logger.js +0 -52
- package/dist/src/utils/parseDistributionType.js +0 -16
- package/dist/src/utils/pricer.js +0 -189
- package/dist/src/utils/prices/chainlinkRead.js +0 -8
- package/dist/src/utils/prices/curveVirtualPrice.js +0 -7
- package/dist/src/utils/prices/getDQUICK.js +0 -8
- package/dist/src/utils/prices/priceFetcherFactory.js +0 -32
- package/dist/src/utils/prices/priceService.js +0 -274
- package/dist/src/utils/prices/services/OnChainCallService.js +0 -38
- package/dist/src/utils/prices/services/coinGeckoService.js +0 -63
- package/dist/src/utils/prices/services/defillamaService.js +0 -53
- package/dist/src/utils/prices/services/dexScreenerService.js +0 -62
- package/dist/src/utils/prices/services/erc4626Service.js +0 -38
- package/dist/src/utils/prices/services/getERC4626.js +0 -11
- package/dist/src/utils/prices/services/indexCoopService.js +0 -55
- package/dist/src/utils/prices/services/priceFetcher.js +0 -1
- package/dist/src/utils/prices/uniV2Price.js +0 -40
- package/dist/src/utils/providers.js +0 -37
- package/dist/src/utils/queries/allCampaigns.js +0 -12
- package/dist/src/utils/sanitizeChain.js +0 -6
- package/dist/src/utils/stryke.js +0 -4
- package/dist/src/utils/throw.js +0 -55
- package/dist/tsconfig.package.tsbuildinfo +0 -1
@@ -1,61 +0,0 @@
|
|
1
|
-
import { AuthorizationHeadersDto, BackOfficeGuard } from "@/guards/BackOffice.guard";
|
2
|
-
import { throwOnInvalidRequiredAddress, throwOnUnsupportedChainId } from "@/utils/throw";
|
3
|
-
import Elysia from "elysia";
|
4
|
-
import { ChainDto, DateDto, GetTransactionsQueryModel, RevenuesDto, TokensDateDto, TokensDto, } from "./accounting.model";
|
5
|
-
import { AccountingService } from "./accounting.service";
|
6
|
-
export const AccountingController = new Elysia({ prefix: "/accounting", detail: { tags: ["Accounting"], hide: true } })
|
7
|
-
.get("/", async ({ query }) => await AccountingService.findMany(query), {
|
8
|
-
query: GetTransactionsQueryModel,
|
9
|
-
headers: AuthorizationHeadersDto,
|
10
|
-
beforeHandle: BackOfficeGuard,
|
11
|
-
})
|
12
|
-
.group("/revenues", app => {
|
13
|
-
return app
|
14
|
-
.get("", async () => await AccountingService.getAllRevenueBreakdownByChain(), {
|
15
|
-
headers: AuthorizationHeadersDto,
|
16
|
-
beforeHandle: BackOfficeGuard,
|
17
|
-
})
|
18
|
-
.get("/per-month/:year/:month", async ({ params }) => await AccountingService.getMonthlyRevenue(params.year, params.month), {
|
19
|
-
params: DateDto,
|
20
|
-
headers: AuthorizationHeadersDto,
|
21
|
-
beforeHandle: BackOfficeGuard,
|
22
|
-
})
|
23
|
-
.get("/chains/:chainId", async ({ params }) => await AccountingService.getRevenueByChain(params.chainId), {
|
24
|
-
params: ChainDto,
|
25
|
-
headers: AuthorizationHeadersDto,
|
26
|
-
beforeHandle: async ({ params, headers }) => {
|
27
|
-
BackOfficeGuard({ headers });
|
28
|
-
throwOnUnsupportedChainId(params.chainId);
|
29
|
-
},
|
30
|
-
})
|
31
|
-
.get("/chains/:chainId/per-month/:year/:month", async ({ params }) => await AccountingService.getMonthlyRevenueByChain(params.chainId, params.year, params.month), {
|
32
|
-
params: RevenuesDto,
|
33
|
-
headers: AuthorizationHeadersDto,
|
34
|
-
beforeHandle: async ({ params, headers }) => {
|
35
|
-
BackOfficeGuard({ headers });
|
36
|
-
throwOnUnsupportedChainId(params.chainId);
|
37
|
-
},
|
38
|
-
});
|
39
|
-
})
|
40
|
-
// ─── Tokens Group ────────────────────────────────────────────────────
|
41
|
-
.group("/tokens", app => {
|
42
|
-
return app
|
43
|
-
.get("/:chainId/:tokenAddress", async ({ params }) => await AccountingService.getTokenTransaction(params.tokenAddress, params.chainId), {
|
44
|
-
params: TokensDto,
|
45
|
-
headers: AuthorizationHeadersDto,
|
46
|
-
beforeHandle: async ({ params, headers }) => {
|
47
|
-
BackOfficeGuard({ headers });
|
48
|
-
params.tokenAddress = throwOnInvalidRequiredAddress(params.tokenAddress);
|
49
|
-
throwOnUnsupportedChainId(params.chainId);
|
50
|
-
},
|
51
|
-
})
|
52
|
-
.get("/:chainId/:tokenAddress/per-month/:year/:month", async ({ params }) => await AccountingService.getTokenMonthlyTransaction(params.tokenAddress, params.chainId, params.year, params.month), {
|
53
|
-
params: TokensDateDto,
|
54
|
-
headers: AuthorizationHeadersDto,
|
55
|
-
beforeHandle: async ({ params, headers }) => {
|
56
|
-
BackOfficeGuard({ headers });
|
57
|
-
params.tokenAddress = throwOnInvalidRequiredAddress(params.tokenAddress);
|
58
|
-
throwOnUnsupportedChainId(params.chainId);
|
59
|
-
},
|
60
|
-
});
|
61
|
-
});
|
@@ -1,32 +0,0 @@
|
|
1
|
-
import { t } from "elysia";
|
2
|
-
export const TokensDto = t.Object({
|
3
|
-
chainId: t.Numeric(),
|
4
|
-
tokenAddress: t.String(),
|
5
|
-
});
|
6
|
-
export const GetTransactionsQueryModel = t.Object({
|
7
|
-
page: t.Optional(t.Numeric()),
|
8
|
-
items: t.Optional(t.Numeric()),
|
9
|
-
});
|
10
|
-
export const TokensDateDto = t.Object({
|
11
|
-
chainId: t.Numeric(),
|
12
|
-
tokenAddress: t.String(),
|
13
|
-
month: t.Numeric(),
|
14
|
-
year: t.Numeric(),
|
15
|
-
});
|
16
|
-
export const DateDto = t.Object({
|
17
|
-
month: t.Numeric(),
|
18
|
-
year: t.Numeric(),
|
19
|
-
});
|
20
|
-
export const ChainDto = t.Object({
|
21
|
-
chainId: t.Numeric(),
|
22
|
-
});
|
23
|
-
export const RevenuesDto = t.Object({
|
24
|
-
chainId: t.Numeric(),
|
25
|
-
month: t.Numeric(),
|
26
|
-
year: t.Numeric(),
|
27
|
-
});
|
28
|
-
export const GetRevenuesDto = t.Object({
|
29
|
-
chainId: t.Numeric(),
|
30
|
-
month: t.Numeric(),
|
31
|
-
year: t.Numeric(),
|
32
|
-
});
|
@@ -1,154 +0,0 @@
|
|
1
|
-
import { apiDbClient } from "@db";
|
2
|
-
export class AccountingRepository {
|
3
|
-
static async findMany(query) {
|
4
|
-
const { page: _page, items: _items } = query;
|
5
|
-
const page = _page ? _page : 0;
|
6
|
-
const items = _items ? _items : 20;
|
7
|
-
return await apiDbClient.dump.findMany({
|
8
|
-
take: items,
|
9
|
-
skip: page * items,
|
10
|
-
});
|
11
|
-
}
|
12
|
-
static async getByTokenForDumper(fromTokenId) {
|
13
|
-
return await apiDbClient.dump.findMany({
|
14
|
-
where: {
|
15
|
-
fromTokenId,
|
16
|
-
NOT: {
|
17
|
-
OR: [
|
18
|
-
{
|
19
|
-
recipient: {
|
20
|
-
equals: apiDbClient.dump.fields.multisig,
|
21
|
-
},
|
22
|
-
},
|
23
|
-
{
|
24
|
-
recipient: {
|
25
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
26
|
-
},
|
27
|
-
},
|
28
|
-
],
|
29
|
-
},
|
30
|
-
},
|
31
|
-
});
|
32
|
-
}
|
33
|
-
static async getForMonthForRecipient(recipient, toTokenId, month, year) {
|
34
|
-
const startDate = new Date(year, month, 0);
|
35
|
-
const endDate = new Date(year, month + 1, 0);
|
36
|
-
return await apiDbClient.dump.findMany({
|
37
|
-
where: {
|
38
|
-
toTokenId,
|
39
|
-
recipient,
|
40
|
-
datetime: {
|
41
|
-
gte: startDate,
|
42
|
-
lt: endDate,
|
43
|
-
},
|
44
|
-
},
|
45
|
-
});
|
46
|
-
}
|
47
|
-
static async getForMultisigBetweenDates(startDate, endDate) {
|
48
|
-
return await apiDbClient.dump.findMany({
|
49
|
-
where: {
|
50
|
-
OR: [
|
51
|
-
{
|
52
|
-
recipient: {
|
53
|
-
equals: apiDbClient.dump.fields.multisig,
|
54
|
-
},
|
55
|
-
},
|
56
|
-
{
|
57
|
-
recipient: {
|
58
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
59
|
-
},
|
60
|
-
},
|
61
|
-
],
|
62
|
-
datetime: {
|
63
|
-
gte: startDate,
|
64
|
-
lt: endDate,
|
65
|
-
},
|
66
|
-
},
|
67
|
-
});
|
68
|
-
}
|
69
|
-
static async getForMultisig() {
|
70
|
-
return await apiDbClient.dump.findMany({
|
71
|
-
where: {
|
72
|
-
OR: [
|
73
|
-
{
|
74
|
-
recipient: {
|
75
|
-
equals: apiDbClient.dump.fields.multisig,
|
76
|
-
},
|
77
|
-
},
|
78
|
-
{
|
79
|
-
recipient: {
|
80
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
81
|
-
},
|
82
|
-
},
|
83
|
-
],
|
84
|
-
},
|
85
|
-
});
|
86
|
-
}
|
87
|
-
static async getForMultisigByChain(chainId) {
|
88
|
-
return await apiDbClient.dump.findMany({
|
89
|
-
where: {
|
90
|
-
chainId,
|
91
|
-
OR: [
|
92
|
-
{
|
93
|
-
recipient: {
|
94
|
-
equals: apiDbClient.dump.fields.multisig,
|
95
|
-
},
|
96
|
-
},
|
97
|
-
{
|
98
|
-
recipient: {
|
99
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
100
|
-
},
|
101
|
-
},
|
102
|
-
],
|
103
|
-
},
|
104
|
-
});
|
105
|
-
}
|
106
|
-
static async getForMultisigByChainBetweenDates(chainId, startDate, endDate) {
|
107
|
-
return await apiDbClient.dump.findMany({
|
108
|
-
where: {
|
109
|
-
chainId,
|
110
|
-
datetime: {
|
111
|
-
gte: startDate,
|
112
|
-
lte: endDate,
|
113
|
-
},
|
114
|
-
OR: [
|
115
|
-
{
|
116
|
-
recipient: {
|
117
|
-
equals: apiDbClient.dump.fields.multisig,
|
118
|
-
},
|
119
|
-
},
|
120
|
-
{
|
121
|
-
recipient: {
|
122
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
123
|
-
},
|
124
|
-
},
|
125
|
-
],
|
126
|
-
},
|
127
|
-
});
|
128
|
-
}
|
129
|
-
static async getForDumperBetweenDates(fromTokenId, startDate, endDate) {
|
130
|
-
return await apiDbClient.dump.findMany({
|
131
|
-
where: {
|
132
|
-
fromTokenId,
|
133
|
-
datetime: {
|
134
|
-
gte: startDate,
|
135
|
-
lte: endDate,
|
136
|
-
},
|
137
|
-
NOT: {
|
138
|
-
OR: [
|
139
|
-
{
|
140
|
-
recipient: {
|
141
|
-
equals: apiDbClient.dump.fields.multisig,
|
142
|
-
},
|
143
|
-
},
|
144
|
-
{
|
145
|
-
recipient: {
|
146
|
-
equals: "0xb08AB4332AD871F89da24df4751968A61e58013c",
|
147
|
-
},
|
148
|
-
},
|
149
|
-
],
|
150
|
-
},
|
151
|
-
},
|
152
|
-
});
|
153
|
-
}
|
154
|
-
}
|
@@ -1,107 +0,0 @@
|
|
1
|
-
import { AccountingRepository } from "@/modules/v4/accounting/accounting.repository";
|
2
|
-
import { TokenService } from "@/modules/v4/token/token.service";
|
3
|
-
import { ChainId } from "@sdk";
|
4
|
-
export class AccountingService {
|
5
|
-
static hashId(chainId, fromTokenId, toTokenId, timestamp) {
|
6
|
-
return Bun.hash(`${chainId}${fromTokenId}${toTokenId}${timestamp}`).toString();
|
7
|
-
}
|
8
|
-
static getTokenId(chainId, address) {
|
9
|
-
return TokenService.hashId({ chainId, address });
|
10
|
-
}
|
11
|
-
static async findMany(query) {
|
12
|
-
return await AccountingRepository.findMany(query);
|
13
|
-
}
|
14
|
-
static async getRevenue() {
|
15
|
-
const data = await AccountingRepository.getForMultisig();
|
16
|
-
let totalAmount = 0;
|
17
|
-
for (const tx of data) {
|
18
|
-
totalAmount += Number(tx.amountIn);
|
19
|
-
}
|
20
|
-
return { totalAmount };
|
21
|
-
}
|
22
|
-
static async getRevenueByChain(chainId) {
|
23
|
-
const data = await AccountingRepository.getForMultisigByChain(chainId);
|
24
|
-
let totalAmount = 0;
|
25
|
-
for (const tx of data) {
|
26
|
-
totalAmount += Number(tx.amountIn);
|
27
|
-
}
|
28
|
-
return { totalAmount };
|
29
|
-
}
|
30
|
-
static async getAllRevenueBreakdownByChain() {
|
31
|
-
const breakdown = {};
|
32
|
-
let consolidatedAmount = 0;
|
33
|
-
for (const chainId of Object.values(ChainId).filter(id => typeof id === "number")) {
|
34
|
-
const data = await AccountingRepository.getForMultisigByChain(chainId);
|
35
|
-
let totalAmount = 0;
|
36
|
-
for (const tx of data) {
|
37
|
-
totalAmount += Number(tx.amountIn);
|
38
|
-
}
|
39
|
-
breakdown[chainId] = { chainAmount: totalAmount, percentage: 0 };
|
40
|
-
consolidatedAmount += totalAmount;
|
41
|
-
}
|
42
|
-
for (const chainId of Object.values(ChainId).filter(id => typeof id === "number")) {
|
43
|
-
const totalAmount = breakdown[chainId].chainAmount;
|
44
|
-
breakdown[chainId] = { chainAmount: totalAmount, percentage: (totalAmount * 100) / consolidatedAmount };
|
45
|
-
}
|
46
|
-
return { total: consolidatedAmount, breakdown };
|
47
|
-
}
|
48
|
-
static async getMonthlyRevenue(year, month) {
|
49
|
-
const startDate = new Date(year, month - 1, 1);
|
50
|
-
const endDate = new Date(year, month, 0, 23, 59, 59);
|
51
|
-
const breakdown = {};
|
52
|
-
let consolidatedAmount = 0;
|
53
|
-
for (const chainId of Object.values(ChainId).filter(id => typeof id === "number")) {
|
54
|
-
const monthlyData = await AccountingRepository.getForMultisigByChainBetweenDates(chainId, startDate, endDate);
|
55
|
-
let totalAmount = 0;
|
56
|
-
for (const tx of monthlyData) {
|
57
|
-
totalAmount += Number(tx.amountIn);
|
58
|
-
}
|
59
|
-
breakdown[chainId] = { chainAmount: totalAmount, percentage: 0 };
|
60
|
-
consolidatedAmount += totalAmount;
|
61
|
-
}
|
62
|
-
for (const chainId of Object.values(ChainId).filter(id => typeof id === "number")) {
|
63
|
-
const totalAmount = breakdown[chainId].chainAmount;
|
64
|
-
breakdown[chainId] = { chainAmount: totalAmount, percentage: (totalAmount * 100) / consolidatedAmount };
|
65
|
-
}
|
66
|
-
return { total: consolidatedAmount, breakdown, from: startDate.toDateString(), to: endDate.toDateString() };
|
67
|
-
}
|
68
|
-
static async getMonthlyRevenueByChain(chainId, year, month) {
|
69
|
-
const startDate = new Date(year, month - 1, 1);
|
70
|
-
const endDate = new Date(year, month, 0, 23, 59, 59);
|
71
|
-
const monthlyData = await AccountingRepository.getForMultisigByChainBetweenDates(chainId, startDate, endDate);
|
72
|
-
let totalAmount = 0;
|
73
|
-
for (const tx of monthlyData) {
|
74
|
-
totalAmount += Number(tx.amountIn);
|
75
|
-
}
|
76
|
-
return { totalAmount, from: startDate.toDateString(), to: endDate.toDateString() };
|
77
|
-
}
|
78
|
-
static async getTokenTransaction(tokenAddress, chainId) {
|
79
|
-
const tokenId = AccountingService.getTokenId(chainId, tokenAddress);
|
80
|
-
const data = await AccountingRepository.getByTokenForDumper(tokenId);
|
81
|
-
let totalAmount = 0;
|
82
|
-
let totalAmountUSD = 0;
|
83
|
-
for (const tx of data) {
|
84
|
-
totalAmount += Number(tx.amountIn);
|
85
|
-
totalAmountUSD += Number(tx.amountOut);
|
86
|
-
}
|
87
|
-
return { totalAmount: totalAmount, totalAmountUSD: totalAmountUSD };
|
88
|
-
}
|
89
|
-
static async getTokenMonthlyTransaction(tokenAddress, chainId, year, month) {
|
90
|
-
const startDate = new Date(year, month - 1, 1);
|
91
|
-
const endDate = new Date(year, month, 0, 23, 59, 59);
|
92
|
-
const tokenId = AccountingService.getTokenId(chainId, tokenAddress);
|
93
|
-
const monthlyData = await AccountingRepository.getForDumperBetweenDates(tokenId, startDate, endDate);
|
94
|
-
let totalAmount = 0;
|
95
|
-
let totalAmountUSD = 0;
|
96
|
-
for (const tx of monthlyData) {
|
97
|
-
totalAmount += Number(tx.amountIn);
|
98
|
-
totalAmountUSD += Number(tx.amountOut);
|
99
|
-
}
|
100
|
-
return {
|
101
|
-
totalAmount: totalAmount,
|
102
|
-
totalAmountUSD: totalAmountUSD,
|
103
|
-
from: startDate.toDateString(),
|
104
|
-
to: endDate.toDateString(),
|
105
|
-
};
|
106
|
-
}
|
107
|
-
}
|
@@ -1,20 +0,0 @@
|
|
1
|
-
import { log } from "@/utils/logger";
|
2
|
-
import { withRetry } from "@sdk";
|
3
|
-
import { GoogleAuth } from "google-auth-library";
|
4
|
-
export class AirflowService {
|
5
|
-
static async triggerDAGRun(dagId, conf) {
|
6
|
-
const auth = new GoogleAuth({
|
7
|
-
scopes: "https://www.googleapis.com/auth/cloud-platform",
|
8
|
-
});
|
9
|
-
const client = await auth.getClient();
|
10
|
-
const reqParams = {
|
11
|
-
method: "POST",
|
12
|
-
url: `${process.env.AIRFLOW_URL}/api/v1/dags/${dagId}/dagRuns`,
|
13
|
-
data: {
|
14
|
-
conf,
|
15
|
-
},
|
16
|
-
};
|
17
|
-
await withRetry(async () => await client.request(reqParams), [], 2, 10_000);
|
18
|
-
log.info(`✅ triggered DAG ${dagId}`);
|
19
|
-
}
|
20
|
-
}
|
@@ -1,13 +0,0 @@
|
|
1
|
-
import { AprType } from "@db/api";
|
2
|
-
import { t } from "elysia";
|
3
|
-
// ─── Dtos ────────────────────────────────────────────────────────────────────
|
4
|
-
export const AprBreakdownResourceDto = t.Object({
|
5
|
-
identifier: t.String(),
|
6
|
-
type: t.Enum(AprType),
|
7
|
-
value: t.Number(),
|
8
|
-
});
|
9
|
-
export const AprRecordResourceDto = t.Object({
|
10
|
-
cumulated: t.Number(),
|
11
|
-
timestamp: t.Union([t.BigInt(), t.String()]),
|
12
|
-
breakdowns: t.Array(AprBreakdownResourceDto),
|
13
|
-
});
|
@@ -1,52 +0,0 @@
|
|
1
|
-
import { AprType } from "@db/api";
|
2
|
-
import { Campaign as CampaignTypeV3 } from "@sdk";
|
3
|
-
import moment from "moment";
|
4
|
-
export class AprService {
|
5
|
-
static hashId(opportunityId, timestamp) {
|
6
|
-
return Bun.hash(`${opportunityId}${timestamp}`).toString();
|
7
|
-
}
|
8
|
-
/**
|
9
|
-
* @deprecated
|
10
|
-
*/
|
11
|
-
static extractFromDynamicData(type, campaigns, timestamp = BigInt(moment().unix())) {
|
12
|
-
const typesWithoutApr = [CampaignTypeV3.INVALID, CampaignTypeV3.JSON_AIRDROP, CampaignTypeV3.ERC20_SNAPSHOT];
|
13
|
-
if (typesWithoutApr.includes(type))
|
14
|
-
return { timestamp, cumulated: 0, breakdowns: [] };
|
15
|
-
let cumulated = campaigns.reduce((sum, campaign) => {
|
16
|
-
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
17
|
-
if (!isLive)
|
18
|
-
return sum;
|
19
|
-
return sum + (Number.isNaN(Number(campaign.apr)) ? 0 : Number(campaign.apr));
|
20
|
-
}, 0) ?? 0;
|
21
|
-
cumulated = Number.isNaN(Number(cumulated)) || !Number.isFinite(cumulated) ? 0 : cumulated;
|
22
|
-
const breakdowns = campaigns.map(campaign => {
|
23
|
-
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
24
|
-
return {
|
25
|
-
identifier: campaign.campaignId,
|
26
|
-
type: AprType.CAMPAIGN,
|
27
|
-
value: !isLive || Number.isNaN(campaign.apr) || !Number.isFinite(campaign.apr) ? 0 : Number(campaign.apr),
|
28
|
-
};
|
29
|
-
});
|
30
|
-
if (type === CampaignTypeV3.CLAMM) {
|
31
|
-
for (const campaign of campaigns) {
|
32
|
-
const isLive = BigInt(campaign.endTimestamp) > timestamp && BigInt(campaign.startTimestamp) < timestamp;
|
33
|
-
if (campaign.forwarders) {
|
34
|
-
for (const forwarder of campaign.forwarders) {
|
35
|
-
breakdowns.push({
|
36
|
-
identifier: forwarder.label,
|
37
|
-
type: AprType.PROTOCOL,
|
38
|
-
value: !isLive || Number.isNaN(forwarder.almAPR) || !Number.isFinite(forwarder.almAPR)
|
39
|
-
? 0
|
40
|
-
: Number(forwarder.almAPR),
|
41
|
-
});
|
42
|
-
}
|
43
|
-
}
|
44
|
-
}
|
45
|
-
}
|
46
|
-
return {
|
47
|
-
timestamp,
|
48
|
-
cumulated,
|
49
|
-
breakdowns,
|
50
|
-
};
|
51
|
-
}
|
52
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import { JwtCookieDto, VerifyJwtGuard } from "@/guards/VerifyJwt.guard";
|
2
|
-
import Elysia from "elysia";
|
3
|
-
import { LoginDto } from "./authentication.model";
|
4
|
-
import { AuthService } from "./authentication.service";
|
5
|
-
const authService = new AuthService();
|
6
|
-
export const AuthController = new Elysia({
|
7
|
-
prefix: "/auth",
|
8
|
-
detail: { tags: ["Authentication"] },
|
9
|
-
})
|
10
|
-
.post("login", async ({ body, cookie: { jwt } }) => {
|
11
|
-
jwt.value = await authService.login(body);
|
12
|
-
jwt.sameSite = true;
|
13
|
-
jwt.path = "/";
|
14
|
-
jwt.httpOnly = true;
|
15
|
-
jwt.secure = true;
|
16
|
-
jwt.maxAge = 2 * 60 * 60; // 2h
|
17
|
-
return;
|
18
|
-
}, { body: LoginDto })
|
19
|
-
.delete("/revoke", async ({ cookie: { jwt } }) => {
|
20
|
-
await authService.revokeToken(jwt.value);
|
21
|
-
jwt.remove();
|
22
|
-
return;
|
23
|
-
}, { beforeHandle: VerifyJwtGuard, cookie: JwtCookieDto });
|
@@ -1,31 +0,0 @@
|
|
1
|
-
import { UnauthorizedError } from "@/errors";
|
2
|
-
import { SignJWT, decodeJwt } from "jose";
|
3
|
-
import { http, createPublicClient } from "viem";
|
4
|
-
import { mainnet } from "viem/chains";
|
5
|
-
import { CacheService } from "../cache/cache.service";
|
6
|
-
import { UserService } from "../user/user.service";
|
7
|
-
export class AuthService {
|
8
|
-
#publicClient = createPublicClient({ chain: mainnet, transport: http() });
|
9
|
-
#encodedJwtSecret = new TextEncoder().encode(process.env.JWT_SECRET);
|
10
|
-
async login(message) {
|
11
|
-
if (!this.#publicClient.verifyMessage(message))
|
12
|
-
throw new UnauthorizedError("Failed to verify the message signature.");
|
13
|
-
let user = await UserService.findUnique(message.address);
|
14
|
-
if (!user)
|
15
|
-
user = await UserService.create({ address: message.address, tags: [] });
|
16
|
-
return await this.generateJwt(user);
|
17
|
-
}
|
18
|
-
async generateJwt(user) {
|
19
|
-
return await new SignJWT({ creator: user.creatorId })
|
20
|
-
.setProtectedHeader({ alg: "HS256" })
|
21
|
-
.setExpirationTime("2h")
|
22
|
-
.setAudience(user.address)
|
23
|
-
.setIssuer("merkl")
|
24
|
-
.setSubject("studio")
|
25
|
-
.setJti(Bun.randomUUIDv7())
|
26
|
-
.sign(this.#encodedJwtSecret);
|
27
|
-
}
|
28
|
-
async revokeToken(jwt) {
|
29
|
-
return await CacheService.sAdd("token:revoked", decodeJwt(jwt).jti);
|
30
|
-
}
|
31
|
-
}
|
@@ -1,42 +0,0 @@
|
|
1
|
-
import { AuthorizationHeadersDto, BackOfficeGuard } from "@/guards/BackOffice.guard";
|
2
|
-
import { throwOnInvalidRequiredAddress, throwOnUnsupportedChainId } from "@/utils/throw";
|
3
|
-
import { NULL_ADDRESS } from "@sdk";
|
4
|
-
import Elysia from "elysia";
|
5
|
-
import { AddBlacklistDto, CheckBlacklistDto, RemoveBlacklistDto } from "./blacklist.model";
|
6
|
-
import { BlacklistService } from "./blacklist.service";
|
7
|
-
export const BlacklistController = new Elysia({ prefix: "/blacklists", detail: { tags: ["Blacklists"], hide: true } })
|
8
|
-
// ─── Get Entire Blacklist ────────────────────────────────────────────
|
9
|
-
.get("/", async () => await BlacklistService.findMany())
|
10
|
-
.get("/mapping", async () => await BlacklistService.findMapping())
|
11
|
-
// ─── Check If An Address Is Blacklisted ──────────────────────────────
|
12
|
-
.get("/check/:address", async ({ params }) => await BlacklistService.isBlacklisted(params.address), {
|
13
|
-
params: CheckBlacklistDto,
|
14
|
-
beforeHandle: ({ params }) => {
|
15
|
-
params.address = throwOnInvalidRequiredAddress(params.address);
|
16
|
-
},
|
17
|
-
})
|
18
|
-
// ─── Add User To Blacklist ───────────────────────────────────────────
|
19
|
-
.post("/", async ({ body }) => await BlacklistService.add({
|
20
|
-
...body,
|
21
|
-
id: BlacklistService.hashId(body.chainId, body.userAddress, body.poolAddress),
|
22
|
-
}), {
|
23
|
-
body: AddBlacklistDto,
|
24
|
-
headers: AuthorizationHeadersDto,
|
25
|
-
beforeHandle: async ({ body, headers }) => {
|
26
|
-
BackOfficeGuard({ headers });
|
27
|
-
body.userAddress = throwOnInvalidRequiredAddress(body.userAddress);
|
28
|
-
body.poolAddress = throwOnInvalidRequiredAddress(body.poolAddress ?? NULL_ADDRESS);
|
29
|
-
throwOnUnsupportedChainId(body.chainId);
|
30
|
-
},
|
31
|
-
detail: { hide: true },
|
32
|
-
})
|
33
|
-
// ─── Remove A User From Blacklist ────────────────────────────────────
|
34
|
-
.delete("/user/:address", async ({ params }) => await BlacklistService.remove(params.address), {
|
35
|
-
params: RemoveBlacklistDto,
|
36
|
-
headers: AuthorizationHeadersDto,
|
37
|
-
beforeHandle: async ({ headers, params }) => {
|
38
|
-
BackOfficeGuard({ headers });
|
39
|
-
params.address = throwOnInvalidRequiredAddress(params.address);
|
40
|
-
},
|
41
|
-
detail: { hide: true },
|
42
|
-
});
|
@@ -1,13 +0,0 @@
|
|
1
|
-
import { t } from "elysia";
|
2
|
-
export const AddBlacklistDto = t.Object({
|
3
|
-
chainId: t.Numeric(),
|
4
|
-
userAddress: t.String(),
|
5
|
-
poolAddress: t.String(),
|
6
|
-
reason: t.Optional(t.String()),
|
7
|
-
});
|
8
|
-
export const CheckBlacklistDto = t.Object({
|
9
|
-
address: t.String(),
|
10
|
-
});
|
11
|
-
export const RemoveBlacklistDto = t.Object({
|
12
|
-
address: t.String(),
|
13
|
-
});
|
@@ -1,50 +0,0 @@
|
|
1
|
-
import { apiDbClient } from "@db";
|
2
|
-
import { NULL_ADDRESS } from "@sdk";
|
3
|
-
export class BlacklistRepository {
|
4
|
-
static async findMany() {
|
5
|
-
return await apiDbClient.blacklist.findMany();
|
6
|
-
}
|
7
|
-
static async check(address) {
|
8
|
-
return ((await apiDbClient.blacklist.findMany({
|
9
|
-
where: {
|
10
|
-
userAddress: address,
|
11
|
-
},
|
12
|
-
})).findIndex(x => !!x.arrestTimestamp) !== -1);
|
13
|
-
}
|
14
|
-
static async remove(address) {
|
15
|
-
const points = await apiDbClient.blacklist.findMany({ where: { userAddress: address } });
|
16
|
-
if (points?.filter(x => !!x.arrestTimestamp).length === 0) {
|
17
|
-
throw new Error(`Address ${address} is not blacklisted`);
|
18
|
-
}
|
19
|
-
for (const point of points) {
|
20
|
-
await apiDbClient.blacklist.update({
|
21
|
-
data: {
|
22
|
-
arrestTimestamp: 0,
|
23
|
-
},
|
24
|
-
where: {
|
25
|
-
chainId_userAddress_poolAddress: {
|
26
|
-
chainId: point.chainId,
|
27
|
-
userAddress: point.userAddress,
|
28
|
-
poolAddress: point.poolAddress,
|
29
|
-
},
|
30
|
-
},
|
31
|
-
});
|
32
|
-
}
|
33
|
-
return true;
|
34
|
-
}
|
35
|
-
static async add(x) {
|
36
|
-
if (!!(await apiDbClient.blacklist.findUnique({ where: { id: x.id } }))) {
|
37
|
-
await apiDbClient.blacklist.delete({ where: { id: x.id } });
|
38
|
-
}
|
39
|
-
return await apiDbClient.blacklist.create({
|
40
|
-
data: {
|
41
|
-
id: x.id,
|
42
|
-
User: { connectOrCreate: { where: { address: x.userAddress }, create: { address: x.userAddress } } },
|
43
|
-
Chain: { connect: { id: x.chainId } },
|
44
|
-
poolAddress: x.poolAddress ?? NULL_ADDRESS,
|
45
|
-
arrestTimestamp: Date.now(),
|
46
|
-
arrestDetails: !x.reason ? {} : { reason: x.reason },
|
47
|
-
},
|
48
|
-
});
|
49
|
-
}
|
50
|
-
}
|
@@ -1,31 +0,0 @@
|
|
1
|
-
import { TTLPresets } from "@/modules/v4/cache/cache.model";
|
2
|
-
import { CacheService } from "@/modules/v4/cache/cache.service";
|
3
|
-
import { utils } from "ethers";
|
4
|
-
import { BlacklistRepository } from "./blacklist.repository";
|
5
|
-
export class BlacklistService {
|
6
|
-
static hashId(chainId, userAddress, poolAddress) {
|
7
|
-
return Bun.hash(`${chainId}${userAddress}${poolAddress}`).toString();
|
8
|
-
}
|
9
|
-
static async findMany() {
|
10
|
-
return await CacheService.wrap(TTLPresets.MIN_5, BlacklistRepository.findMany);
|
11
|
-
}
|
12
|
-
static async findMapping() {
|
13
|
-
return await CacheService.wrap(TTLPresets.MIN_5, () => BlacklistRepository.findMany().then(r => {
|
14
|
-
return r.reduce((prev, { userAddress, arrestTimestamp }) => {
|
15
|
-
if (!!arrestTimestamp) {
|
16
|
-
prev[utils.getAddress(userAddress)] = true;
|
17
|
-
}
|
18
|
-
return prev;
|
19
|
-
}, {});
|
20
|
-
}));
|
21
|
-
}
|
22
|
-
static async isBlacklisted(address) {
|
23
|
-
return BlacklistRepository.check(utils.getAddress(address));
|
24
|
-
}
|
25
|
-
static async remove(address) {
|
26
|
-
return await BlacklistRepository.remove(address);
|
27
|
-
}
|
28
|
-
static async add(x) {
|
29
|
-
return await BlacklistRepository.add(x);
|
30
|
-
}
|
31
|
-
}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
import Elysia from "elysia";
|
2
|
-
import { getEulerBoostBody, getZksyncBoost } from "./boost.model";
|
3
|
-
import { BoostService } from "./boost.service";
|
4
|
-
export const BoostController = new Elysia({ prefix: "/boosts", detail: { tags: ["Boosts"], hide: true } })
|
5
|
-
// ─── Get Euler Boost ─────────────────────────────────────────────────
|
6
|
-
.post("/euler", async () => BoostService.getEulerBoost(), {
|
7
|
-
body: getEulerBoostBody,
|
8
|
-
detail: { hide: true },
|
9
|
-
})
|
10
|
-
.get("/euler", async () => BoostService.getEulerBoost())
|
11
|
-
.post("/openblock/zksync", async ({ query, body }) => BoostService.getOpenBlockBoost(query, body), {
|
12
|
-
query: getZksyncBoost,
|
13
|
-
body: getEulerBoostBody,
|
14
|
-
detail: { hide: true },
|
15
|
-
});
|