@merkl/api 0.20.101 → 0.20.103

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/dist/src/eden/index.d.ts +54 -36
  2. package/dist/src/engine/campaignTVL/factory.d.ts +1 -1
  3. package/dist/src/engine/campaignTVL/factory.js +9 -3
  4. package/dist/src/engine/{erc20SubTypeProcessors/helpers/tokenType.d.ts → campaignTVL/implementations/Erc20/Erc20SubType.d.ts} +7 -13
  5. package/dist/src/engine/campaignTVL/implementations/Erc20/Erc20SubType.js +106 -0
  6. package/dist/src/engine/campaignTVL/implementations/Erc20/computeSubTypes.d.ts +8 -0
  7. package/dist/src/engine/campaignTVL/implementations/Erc20/computeSubTypes.js +128 -0
  8. package/dist/src/engine/campaignTVL/implementations/Erc20/factory.d.ts +3 -0
  9. package/dist/src/engine/campaignTVL/implementations/Erc20/factory.js +13 -0
  10. package/dist/src/engine/campaignTVL/implementations/Erc20/index.d.ts +6 -0
  11. package/dist/src/engine/campaignTVL/implementations/Erc20/index.js +27 -0
  12. package/dist/src/engine/dynamicData/implementations/Erc20.d.ts +4 -4
  13. package/dist/src/engine/dynamicData/implementations/Erc20.js +5 -11
  14. package/dist/src/engine/dynamicData/implementations/Radiant.js +2 -2
  15. package/dist/src/engine/erc20SubTypeProcessors/GenericProcessor.d.ts +19 -19
  16. package/dist/src/engine/erc20SubTypeProcessors/GenericProcessor.js +1 -1
  17. package/dist/src/engine/erc20SubTypeProcessors/helpers/factoryFinder.d.ts +2 -2
  18. package/dist/src/engine/erc20SubTypeProcessors/helpers/factoryFinder.js +31 -31
  19. package/dist/src/engine/erc20SubTypeProcessors/helpers/hardcoded.d.ts +2 -2
  20. package/dist/src/engine/erc20SubTypeProcessors/helpers/hardcoded.js +17 -17
  21. package/dist/src/engine/erc20SubTypeProcessors/helpers/ownerFinder.d.ts +2 -2
  22. package/dist/src/engine/erc20SubTypeProcessors/helpers/ownerFinder.js +6 -6
  23. package/dist/src/engine/erc20SubTypeProcessors/implementations/AaveProcessor.d.ts +2 -2
  24. package/dist/src/engine/erc20SubTypeProcessors/implementations/AnglesLiquid.d.ts +7 -7
  25. package/dist/src/engine/erc20SubTypeProcessors/implementations/AssetProcessor.d.ts +2 -2
  26. package/dist/src/engine/erc20SubTypeProcessors/implementations/AssetProcessor.js +2 -2
  27. package/dist/src/engine/erc20SubTypeProcessors/implementations/AuraProcessor.d.ts +40 -3
  28. package/dist/src/engine/erc20SubTypeProcessors/implementations/BEXRewardGaugeProcessor.d.ts +32 -3
  29. package/dist/src/engine/erc20SubTypeProcessors/implementations/BEXRewardGaugeProcessor.js +2 -2
  30. package/dist/src/engine/erc20SubTypeProcessors/implementations/BalancerGaugeProcessor.d.ts +29 -3
  31. package/dist/src/engine/erc20SubTypeProcessors/implementations/BalancerPoolProcessor.d.ts +31 -3
  32. package/dist/src/engine/erc20SubTypeProcessors/implementations/BalancerV3PoolProcessor.d.ts +3 -3
  33. package/dist/src/engine/erc20SubTypeProcessors/implementations/BeefyProcessor.d.ts +2 -2
  34. package/dist/src/engine/erc20SubTypeProcessors/implementations/BunniV2Processor.d.ts +2 -2
  35. package/dist/src/engine/erc20SubTypeProcessors/implementations/CompoundProcessor.d.ts +2 -2
  36. package/dist/src/engine/erc20SubTypeProcessors/implementations/ERC4626Processor.d.ts +2 -2
  37. package/dist/src/engine/erc20SubTypeProcessors/implementations/EnzymeProcessor.d.ts +3 -3
  38. package/dist/src/engine/erc20SubTypeProcessors/implementations/EqualizerGaugeProcessor.d.ts +2 -2
  39. package/dist/src/engine/erc20SubTypeProcessors/implementations/EulerBorrowProcessor.d.ts +2 -2
  40. package/dist/src/engine/erc20SubTypeProcessors/implementations/EulerLendProcessor.d.ts +2 -2
  41. package/dist/src/engine/erc20SubTypeProcessors/implementations/FluidProcessor.d.ts +2 -2
  42. package/dist/src/engine/erc20SubTypeProcessors/implementations/FraxProcessor.d.ts +2 -2
  43. package/dist/src/engine/erc20SubTypeProcessors/implementations/FraxProcessor.js +2 -2
  44. package/dist/src/engine/erc20SubTypeProcessors/implementations/GammaALMProcessor.d.ts +2 -2
  45. package/dist/src/engine/erc20SubTypeProcessors/implementations/GammaProcessor.d.ts +7 -7
  46. package/dist/src/engine/erc20SubTypeProcessors/implementations/GearboxProcessor.d.ts +2 -2
  47. package/dist/src/engine/erc20SubTypeProcessors/implementations/HanjiVaultProcessor.d.ts +4 -4
  48. package/dist/src/engine/erc20SubTypeProcessors/implementations/HoldStationProcessor.d.ts +2 -2
  49. package/dist/src/engine/erc20SubTypeProcessors/implementations/HourglassProcessor.d.ts +2 -2
  50. package/dist/src/engine/erc20SubTypeProcessors/implementations/MaverickBPProcessor.d.ts +2 -2
  51. package/dist/src/engine/erc20SubTypeProcessors/implementations/MetamorphoProcessor.d.ts +3 -3
  52. package/dist/src/engine/erc20SubTypeProcessors/implementations/NoLinkVaultProcessor.d.ts +7 -7
  53. package/dist/src/engine/erc20SubTypeProcessors/implementations/NoLinkVaultProcessor.js +2 -2
  54. package/dist/src/engine/erc20SubTypeProcessors/implementations/PendleProcessor.d.ts +2 -2
  55. package/dist/src/engine/erc20SubTypeProcessors/implementations/PendleYTProcessor.d.ts +2 -2
  56. package/dist/src/engine/erc20SubTypeProcessors/implementations/RadiantProcessor.d.ts +3 -3
  57. package/dist/src/engine/erc20SubTypeProcessors/implementations/RfxProcessor.d.ts +2 -2
  58. package/dist/src/engine/erc20SubTypeProcessors/implementations/Satlayer.d.ts +2 -2
  59. package/dist/src/engine/erc20SubTypeProcessors/implementations/SpectraProcessor.d.ts +2 -2
  60. package/dist/src/engine/erc20SubTypeProcessors/implementations/SpectraYTProcessor.d.ts +2 -2
  61. package/dist/src/engine/erc20SubTypeProcessors/implementations/SpliceProcessor.d.ts +3 -3
  62. package/dist/src/engine/erc20SubTypeProcessors/implementations/SturdySiloProcessor.d.ts +2 -2
  63. package/dist/src/engine/erc20SubTypeProcessors/implementations/TempestVaultProcessor.d.ts +3 -3
  64. package/dist/src/engine/erc20SubTypeProcessors/implementations/TempestVaultProcessor.js +2 -2
  65. package/dist/src/engine/erc20SubTypeProcessors/implementations/TemplateProcessor.d.ts +7 -7
  66. package/dist/src/engine/erc20SubTypeProcessors/implementations/TorosProcessor.d.ts +2 -2
  67. package/dist/src/engine/erc20SubTypeProcessors/implementations/UniswapProcessor.d.ts +3 -3
  68. package/dist/src/engine/erc20SubTypeProcessors/implementations/VicunaProcessor.d.ts +2 -2
  69. package/dist/src/engine/erc20SubTypeProcessors/implementations/WoofiProcessor.d.ts +2 -2
  70. package/dist/src/engine/erc20SubTypeProcessors/implementations/ZkSwapThreePoolProcessor.d.ts +2 -2
  71. package/dist/src/engine/erc20SubTypeProcessors/implementations/curveNPoolProcessor.d.ts +4 -4
  72. package/dist/src/engine/erc20SubTypeProcessors/implementations/curveProcessor.d.ts +2 -2
  73. package/dist/src/engine/erc20SubTypeProcessors/implementations/curveProcessor.js +2 -2
  74. package/dist/src/engine/erc20SubTypeProcessors/implementations/processorMapping.d.ts +2 -2
  75. package/dist/src/engine/erc20SubTypeProcessors/implementations/processorMapping.js +100 -100
  76. package/dist/src/engine/erc20SubTypeProcessors/implementations/stakedCurveProcessor.d.ts +2 -2
  77. package/dist/src/engine/erc20SubTypeProcessors/implementations/stakedCurveProcessor.js +2 -2
  78. package/dist/src/engine/erc20SubTypeProcessors/implementations/xU308Processor.d.ts +2 -2
  79. package/dist/src/engine/erc20SubTypeProcessors/subtypesPrices.d.ts +3 -2
  80. package/dist/src/engine/erc20SubTypeProcessors/subtypesPrices.js +2 -2
  81. package/dist/src/engine/erc20SubTypeProcessors/subtypesRound1.d.ts +2 -1
  82. package/dist/src/engine/erc20SubTypeProcessors/subtypesRound1.js +87 -87
  83. package/dist/src/engine/erc20SubTypeProcessors/subtypesRound2.d.ts +2 -3
  84. package/dist/src/engine/erc20SubTypeProcessors/subtypesRound3.d.ts +2 -2
  85. package/dist/src/engine/erc20SubTypeProcessors/subtypesRound4.d.ts +2 -2
  86. package/dist/src/engine/erc20SubTypeProcessors/tokenTypeStruct.d.ts +7 -0
  87. package/dist/src/engine/erc20SubTypeProcessors/tokenTypeStruct.js +1 -0
  88. package/dist/src/engine/erc20SubTypeProcessors/tokenTypeToProtocolAndAction.d.ts +7 -0
  89. package/dist/src/engine/erc20SubTypeProcessors/tokenTypeToProtocolAndAction.js +130 -0
  90. package/dist/src/engine/opportunityMetadata/factory.js +4 -2
  91. package/dist/src/engine/opportunityMetadata/implementations/ERCMultiToken.d.ts +14 -2
  92. package/dist/src/engine/opportunityMetadata/implementations/ERCMultiToken.js +52 -2
  93. package/dist/src/engine/opportunityMetadata/implementations/{Erc20.d.ts → Erc20/index.d.ts} +1 -1
  94. package/dist/src/engine/opportunityMetadata/implementations/{Erc20.js → Erc20/index.js} +1 -1
  95. package/dist/src/engine/opportunityMetadata/implementations/JsonAirdrop.d.ts +2 -2
  96. package/dist/src/index.d.ts +18 -12
  97. package/dist/src/modules/v4/campaign/campaign.service.d.ts +6 -0
  98. package/dist/src/modules/v4/campaign/campaign.service.js +9 -0
  99. package/dist/src/modules/v4/campaign/campaign.test.controller.d.ts +2 -2
  100. package/dist/src/modules/v4/campaign/campaign.test.controller.js +1 -1
  101. package/dist/src/modules/v4/computedValue/computedValue.controller.js +2 -1
  102. package/dist/src/modules/v4/computedValue/computedValue.service.d.ts +1 -1
  103. package/dist/src/modules/v4/computedValue/computedValue.service.js +5 -10
  104. package/dist/src/modules/v4/dynamicData/dynamicData.service.js +2 -2
  105. package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +7 -7
  106. package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +3 -3
  107. package/dist/src/modules/v4/programPayload/programPayload.controller.d.ts +1 -1
  108. package/dist/src/modules/v4/protocol/protocol.controller.d.ts +2 -2
  109. package/dist/src/modules/v4/protocol/protocol.model.d.ts +1 -1
  110. package/dist/src/modules/v4/protocol/protocol.model.js +1 -0
  111. package/dist/src/modules/v4/router.d.ts +18 -12
  112. package/dist/src/modules/v4/token/token.controller.d.ts +6 -0
  113. package/dist/src/modules/v4/token/token.controller.js +1 -1
  114. package/dist/src/modules/v4/token/token.model.d.ts +3 -0
  115. package/dist/src/modules/v4/token/token.model.js +3 -0
  116. package/dist/src/modules/v4/token/token.repository.js +47 -25
  117. package/dist/src/modules/v4/token/token.service.d.ts +27 -6
  118. package/dist/src/modules/v4/token/token.service.js +29 -79
  119. package/dist/src/utils/decodeCalls.d.ts +3 -3
  120. package/dist/src/utils/decodeCalls.js +80 -80
  121. package/dist/src/utils/encodeCalls.d.ts +2 -2
  122. package/dist/src/utils/encodeCalls.js +77 -77
  123. package/dist/src/utils/generateCardName.d.ts +2 -2
  124. package/dist/src/utils/generateCardName.js +97 -97
  125. package/dist/tsconfig.package.tsbuildinfo +1 -1
  126. package/package.json +1 -1
  127. package/dist/src/engine/erc20SubTypeProcessors/helpers/tokenType.js +0 -232
  128. package/dist/src/modules/v4/computedValue/index.d.ts +0 -2
  129. package/dist/src/modules/v4/computedValue/index.js +0 -2
@@ -1,4 +1,4 @@
1
- import { tokenType } from "@/engine/erc20SubTypeProcessors/helpers/tokenType";
1
+ import { Erc20SubType } from "@/engine/campaignTVL/implementations/Erc20/Erc20SubType";
2
2
  import { AaveInterface, AccountantWithRateProvidersInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerV3StablePoolInterface, BalancerVaultInterface, BeefyInterface, BunniV2HubInterface, BunniV2TokenInterface, CPMMGammaPoolMainInterface, CompoundInterface, CurveInterface, CurveLPTokenInterface, CurveStableSwapNGInterface, DefutureVaultInterface, ERC20Interface, ERC4626Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, HourglassERC20TBTInterface, HourglassVedaLockDepositorV2Interface, IonicInterface, LPManagerHelperInterface, LPManagerInterface, LayerBankInterface, LendleInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxDatastoreInterface, RswEthStrategyInterface, SpectraYTInterface, SturdyInterface, SymetricAmbientStrategyInterface, SyncSwapClassicPoolInterface, TorosInterface, UniswapV2PoolInterface, UniswapV3PoolInterface, VePufferInterface, ZFStableLPINterface, } from "@sdk";
3
3
  export function createCall(target, key, type, metaData) {
4
4
  switch (key) {
@@ -22,14 +22,14 @@ export function createCall(target, key, type, metaData) {
22
22
  return { allowFailure: true, callData: FraxlendInterface.encodeFunctionData("pricePerShare"), target };
23
23
  case "lp_price":
24
24
  switch (type) {
25
- case tokenType.curve:
26
- case tokenType.curve_gauge:
25
+ case Erc20SubType.curve:
26
+ case Erc20SubType.curve_gauge:
27
27
  return { allowFailure: true, callData: CurveInterface.encodeFunctionData("lp_price"), target };
28
- case tokenType.curve_2:
29
- case tokenType.maha:
28
+ case Erc20SubType.curve_2:
29
+ case Erc20SubType.maha:
30
30
  return { allowFailure: true, callData: CurveInterface.encodeFunctionData("get_virtual_price"), target };
31
31
  default:
32
- throw new Error(`Need tokenType for this key ${key}`);
32
+ throw new Error(`Need Erc20SubType for this key ${key}`);
33
33
  }
34
34
  case "coin0":
35
35
  return { allowFailure: true, callData: CurveInterface.encodeFunctionData("coins", [0]), target };
@@ -53,8 +53,8 @@ export function createCall(target, key, type, metaData) {
53
53
  return { allowFailure: true, callData: AuraInterface.encodeFunctionData("pid"), target };
54
54
  case "lp_token":
55
55
  switch (type) {
56
- case tokenType.beraborrow_gauge:
57
- case tokenType.beratrax_vault:
56
+ case Erc20SubType.beraborrow_gauge:
57
+ case Erc20SubType.beratrax_vault:
58
58
  return { allowFailure: true, callData: ERC4626Interface.encodeFunctionData("asset"), target };
59
59
  default:
60
60
  return { allowFailure: true, callData: BalancerGaugeInterface.encodeFunctionData("lp_token"), target };
@@ -65,18 +65,18 @@ export function createCall(target, key, type, metaData) {
65
65
  return { allowFailure: true, callData: EulerInterface.encodeFunctionData("eVault"), target };
66
66
  case "exchangeRate":
67
67
  switch (type) {
68
- case tokenType.pendle:
68
+ case Erc20SubType.pendle:
69
69
  return { allowFailure: true, callData: PendleInterface.encodeFunctionData("exchangeRate"), target };
70
- case tokenType.ionic:
70
+ case Erc20SubType.ionic:
71
71
  return { allowFailure: true, callData: IonicInterface.encodeFunctionData("exchangeRateCurrent"), target };
72
- case tokenType.moonwell:
73
- case tokenType.venus:
74
- case tokenType.reactor_fusion:
72
+ case Erc20SubType.moonwell:
73
+ case Erc20SubType.venus:
74
+ case Erc20SubType.reactor_fusion:
75
75
  return { allowFailure: true, callData: MoonwellInterface.encodeFunctionData("exchangeRateStored"), target };
76
- case tokenType.layerbank:
76
+ case Erc20SubType.layerbank:
77
77
  return { allowFailure: true, callData: LayerBankInterface.encodeFunctionData("exchangeRate"), target };
78
78
  default:
79
- throw new Error(`Need tokenType for this key ${key}`);
79
+ throw new Error(`Need Erc20SubType for this key ${key}`);
80
80
  }
81
81
  case "shortToken": {
82
82
  return {
@@ -100,87 +100,87 @@ export function createCall(target, key, type, metaData) {
100
100
  };
101
101
  case "underlying":
102
102
  switch (type) {
103
- case tokenType.pendle:
104
- case tokenType.pendleYT:
103
+ case Erc20SubType.pendle:
104
+ case Erc20SubType.pendleYT:
105
105
  return { allowFailure: true, callData: PendleInterface.encodeFunctionData("yieldToken"), target };
106
- case tokenType.metamorpho:
106
+ case Erc20SubType.metamorpho:
107
107
  return { allowFailure: true, callData: MetamorphoInterface.encodeFunctionData("asset"), target };
108
- case tokenType.fluid:
108
+ case Erc20SubType.fluid:
109
109
  return { allowFailure: true, callData: FluidInterface.encodeFunctionData("asset"), target };
110
- case tokenType.euler_borrow:
111
- case tokenType.maha:
112
- case tokenType.euler_lend:
110
+ case Erc20SubType.euler_borrow:
111
+ case Erc20SubType.maha:
112
+ case Erc20SubType.euler_lend:
113
113
  return {
114
114
  allowFailure: true,
115
115
  callData: EulerInterface.encodeFunctionData("asset"),
116
116
  target,
117
117
  };
118
- case tokenType.curve_gauge:
118
+ case Erc20SubType.curve_gauge:
119
119
  return { allowFailure: true, callData: BalancerGaugeInterface.encodeFunctionData("lp_token"), target };
120
- case tokenType.fraxlend:
121
- case tokenType.sturdy_aggregator:
122
- case tokenType.sturdy_silo:
120
+ case Erc20SubType.fraxlend:
121
+ case Erc20SubType.sturdy_aggregator:
122
+ case Erc20SubType.sturdy_silo:
123
123
  return { allowFailure: true, callData: FraxlendInterface.encodeFunctionData("asset"), target };
124
- case tokenType.gearbox:
124
+ case Erc20SubType.gearbox:
125
125
  return {
126
126
  allowFailure: true,
127
127
  callData: GearboxVaultInterface.encodeFunctionData("underlyingToken"),
128
128
  target,
129
129
  };
130
- case tokenType.aura:
130
+ case Erc20SubType.aura:
131
131
  return { allowFailure: true, callData: AuraInterface.encodeFunctionData("asset"), target };
132
- case tokenType.ionic:
133
- case tokenType.venus:
134
- case tokenType.reactor_fusion:
132
+ case Erc20SubType.ionic:
133
+ case Erc20SubType.venus:
134
+ case Erc20SubType.reactor_fusion:
135
135
  return { allowFailure: true, callData: IonicInterface.encodeFunctionData("underlying"), target };
136
- case tokenType.layerbank:
136
+ case Erc20SubType.layerbank:
137
137
  return { allowFailure: true, callData: LayerBankInterface.encodeFunctionData("underlying"), target };
138
- case tokenType.moonwell:
138
+ case Erc20SubType.moonwell:
139
139
  return { allowFailure: true, callData: MoonwellInterface.encodeFunctionData("underlying"), target };
140
- case tokenType.radiant_lend:
141
- case tokenType.radiant_borrow:
142
- case tokenType.lendle_lending:
143
- case tokenType.lendle_borrowing:
140
+ case Erc20SubType.radiant_lend:
141
+ case Erc20SubType.radiant_borrow:
142
+ case Erc20SubType.lendle_lending:
143
+ case Erc20SubType.lendle_borrowing:
144
144
  return {
145
145
  allowFailure: true,
146
146
  callData: RadiantInterface.encodeFunctionData("UNDERLYING_ASSET_ADDRESS"),
147
147
  target,
148
148
  };
149
- case tokenType.holdstation:
149
+ case Erc20SubType.holdstation:
150
150
  return {
151
151
  allowFailure: true,
152
152
  callData: DefutureVaultInterface.encodeFunctionData("asset"),
153
153
  target,
154
154
  };
155
- case tokenType.aave_lending:
156
- case tokenType.sake_lending:
157
- case tokenType.sake_borrowing:
158
- case tokenType.aave_borrowing:
159
- case tokenType.ironclad_lending:
160
- case tokenType.ironclad_borrowing:
161
- case tokenType.zerolend_lending:
162
- case tokenType.zerolend_borrowing:
163
- case tokenType.avalon_lending:
164
- case tokenType.avalon_borrowing:
165
- case tokenType.superlend_lending:
166
- case tokenType.superlend_borrowing:
167
- case tokenType.takotako_lending:
168
- case tokenType.takotako_borrowing:
169
- case tokenType.yei_borrowing:
170
- case tokenType.yei_lending:
171
- case tokenType.vicuna_borrowing:
172
- case tokenType.vicuna_lending:
173
- case tokenType.xlend_lending:
174
- case tokenType.xlend_borrowing:
155
+ case Erc20SubType.aave_lending:
156
+ case Erc20SubType.sake_lending:
157
+ case Erc20SubType.sake_borrowing:
158
+ case Erc20SubType.aave_borrowing:
159
+ case Erc20SubType.ironclad_lending:
160
+ case Erc20SubType.ironclad_borrowing:
161
+ case Erc20SubType.zerolend_lending:
162
+ case Erc20SubType.zerolend_borrowing:
163
+ case Erc20SubType.avalon_lending:
164
+ case Erc20SubType.avalon_borrowing:
165
+ case Erc20SubType.superlend_lending:
166
+ case Erc20SubType.superlend_borrowing:
167
+ case Erc20SubType.takotako_lending:
168
+ case Erc20SubType.takotako_borrowing:
169
+ case Erc20SubType.yei_borrowing:
170
+ case Erc20SubType.yei_lending:
171
+ case Erc20SubType.vicuna_borrowing:
172
+ case Erc20SubType.vicuna_lending:
173
+ case Erc20SubType.xlend_lending:
174
+ case Erc20SubType.xlend_borrowing:
175
175
  return { allowFailure: true, callData: AaveInterface.encodeFunctionData("UNDERLYING_ASSET_ADDRESS"), target };
176
- case tokenType.hourglass:
176
+ case Erc20SubType.hourglass:
177
177
  return {
178
178
  allowFailure: true,
179
179
  callData: HourglassVedaLockDepositorV2Interface.encodeFunctionData("getUnderlying"),
180
180
  target,
181
181
  };
182
182
  default:
183
- throw new Error(`Need tokenType for this key ${key}, or unknown type ${type}`);
183
+ throw new Error(`Need Erc20SubType for this key ${key}, or unknown type ${type}`);
184
184
  }
185
185
  case "calcNetShareValue":
186
186
  return {
@@ -222,8 +222,8 @@ export function createCall(target, key, type, metaData) {
222
222
  };
223
223
  case "totalSupply":
224
224
  switch (type) {
225
- case tokenType.lendle_lending:
226
- case tokenType.lendle_borrowing:
225
+ case Erc20SubType.lendle_lending:
226
+ case Erc20SubType.lendle_borrowing:
227
227
  return {
228
228
  allowFailure: true,
229
229
  callData: LendleInterface.encodeFunctionData("scaledTotalSupply"),
@@ -282,49 +282,49 @@ export function createCall(target, key, type, metaData) {
282
282
  };
283
283
  case "totalAssets":
284
284
  switch (type) {
285
- case tokenType.anglesLiquid:
286
- case tokenType.cian:
287
- case tokenType.rfx_slv:
288
- case tokenType.metamorpho:
289
- case tokenType.beratrax_vault:
290
- case tokenType.beraborrow_gauge:
285
+ case Erc20SubType.anglesLiquid:
286
+ case Erc20SubType.cian:
287
+ case Erc20SubType.rfx_slv:
288
+ case Erc20SubType.metamorpho:
289
+ case Erc20SubType.beratrax_vault:
290
+ case Erc20SubType.beraborrow_gauge:
291
291
  return {
292
292
  allowFailure: true,
293
293
  callData: ERC4626Interface.encodeFunctionData("totalAssets"),
294
294
  target,
295
295
  };
296
- case tokenType.concrete:
296
+ case Erc20SubType.concrete:
297
297
  return {
298
298
  allowFailure: true,
299
299
  callData: ERC4626Interface.encodeFunctionData("totalAssets"),
300
300
  target,
301
301
  };
302
- case tokenType.euler_borrow:
302
+ case Erc20SubType.euler_borrow:
303
303
  return {
304
304
  allowFailure: true,
305
305
  callData: EulerInterface.encodeFunctionData("totalBorrows"),
306
306
  target,
307
307
  };
308
- case tokenType.euler_lend:
308
+ case Erc20SubType.euler_lend:
309
309
  return {
310
310
  allowFailure: true,
311
311
  callData: EulerInterface.encodeFunctionData("totalAssets"),
312
312
  target,
313
313
  };
314
- case tokenType.gearbox:
314
+ case Erc20SubType.gearbox:
315
315
  return {
316
316
  allowFailure: true,
317
317
  callData: GearboxVaultInterface.encodeFunctionData("totalAssets"),
318
318
  target,
319
319
  };
320
- case tokenType.compound:
320
+ case Erc20SubType.compound:
321
321
  return {
322
322
  allowFailure: true,
323
323
  callData: CompoundInterface.encodeFunctionData("totalBorrow"),
324
324
  target: target,
325
325
  };
326
326
  default:
327
- throw new Error(`Need tokenType for this key ${key}, or unknown type ${type}`);
327
+ throw new Error(`Need Erc20SubType for this key ${key}, or unknown type ${type}`);
328
328
  }
329
329
  case "readTokens0":
330
330
  return {
@@ -346,7 +346,7 @@ export function createCall(target, key, type, metaData) {
346
346
  };
347
347
  case "minter":
348
348
  switch (type) {
349
- case tokenType.spectra_lpt:
349
+ case Erc20SubType.spectra_lpt:
350
350
  return {
351
351
  allowFailure: true,
352
352
  callData: CurveLPTokenInterface.encodeFunctionData("minter"),
@@ -367,7 +367,7 @@ export function createCall(target, key, type, metaData) {
367
367
  };
368
368
  case "getTokenAddresses":
369
369
  switch (type) {
370
- case tokenType.tempestStaking: {
370
+ case Erc20SubType.tempestStaking: {
371
371
  return {
372
372
  allowFailure: true,
373
373
  callData: RswEthStrategyInterface.encodeFunctionData("getTokenAddresses"),
@@ -383,7 +383,7 @@ export function createCall(target, key, type, metaData) {
383
383
  }
384
384
  case "getPositions":
385
385
  switch (type) {
386
- case tokenType.tempestStaking: {
386
+ case Erc20SubType.tempestStaking: {
387
387
  return {
388
388
  allowFailure: true,
389
389
  callData: RswEthStrategyInterface.encodeFunctionData("getPositions"),
@@ -1,6 +1,6 @@
1
- import { tokenType } from "@/engine/erc20SubTypeProcessors/helpers/tokenType";
1
+ import { Erc20SubType } from "@/engine/campaignTVL/implementations/Erc20/Erc20SubType";
2
2
  import type { Campaign, CampaignParameters } from "@sdk";
3
3
  export declare const stakingContractToStakingSymbol: {
4
4
  [key: string]: string;
5
5
  };
6
- export declare function generateCardName(type: tokenType, typeInfo: any, campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.ERC20LOGPROCESSOR> | CampaignParameters<Campaign.ERC20REBASELOGPROCESSOR> | CampaignParameters<Campaign.EULER>, symbols?: string[], displayName?: string): string;
6
+ export declare function generateCardName(type: Erc20SubType, typeInfo: any, campaign: CampaignParameters<Campaign.ERC20> | CampaignParameters<Campaign.ERC20LOGPROCESSOR> | CampaignParameters<Campaign.ERC20REBASELOGPROCESSOR> | CampaignParameters<Campaign.EULER>, symbols?: string[], displayName?: string): string;
@@ -1,4 +1,4 @@
1
- import { tokenType } from "@/engine/erc20SubTypeProcessors/helpers/tokenType";
1
+ import { Erc20SubType } from "@/engine/campaignTVL/implementations/Erc20/Erc20SubType";
2
2
  import { capitalize } from "lodash";
3
3
  export const stakingContractToStakingSymbol = {
4
4
  "0x18eeD20f71BEf84B605253C89A7576E3634134C0": "CyberStaking",
@@ -24,167 +24,167 @@ export function generateCardName(type, typeInfo, campaign, symbols = [""], displ
24
24
  return `${typeInfo.lockNFT !== undefined ? "Lock" : "Stake"} ${campaign.campaignParameters.symbolTargetToken} on ${typeInfo.stakingSymbol}`;
25
25
  }
26
26
  switch (type) {
27
- case tokenType.uniswapv2:
28
- case tokenType.poolside:
29
- case tokenType.velodrome:
30
- case tokenType.aerodrome:
31
- case tokenType.dragonswap:
32
- case tokenType.akron:
33
- case tokenType.koi:
34
- case tokenType.baseswap:
35
- case tokenType.fenix:
36
- case tokenType.zkswap:
37
- case tokenType.ra:
38
- case tokenType.syncswap:
39
- case tokenType.pancakeswap:
40
- case tokenType.traderJoe:
41
- case tokenType.katana:
27
+ case Erc20SubType.uniswapv2:
28
+ case Erc20SubType.poolside:
29
+ case Erc20SubType.velodrome:
30
+ case Erc20SubType.aerodrome:
31
+ case Erc20SubType.dragonswap:
32
+ case Erc20SubType.akron:
33
+ case Erc20SubType.koi:
34
+ case Erc20SubType.baseswap:
35
+ case Erc20SubType.fenix:
36
+ case Erc20SubType.zkswap:
37
+ case Erc20SubType.ra:
38
+ case Erc20SubType.syncswap:
39
+ case Erc20SubType.pancakeswap:
40
+ case Erc20SubType.traderJoe:
41
+ case Erc20SubType.katana:
42
42
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}`;
43
- case tokenType.pendleYT:
43
+ case Erc20SubType.pendleYT:
44
44
  return `Hold ${capitalize(typeInfo.protocol)} ${typeInfo.name}`;
45
- case tokenType.pendle:
45
+ case Erc20SubType.pendle:
46
46
  return `Provide ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
47
- case tokenType.balancerGauge:
47
+ case Erc20SubType.balancerGauge:
48
48
  return `${capitalize(typeInfo.protocol)} ${symbols.join("-")}`;
49
- case tokenType.beraborrow_gauge:
50
- case tokenType.beratrax_vault:
49
+ case Erc20SubType.beraborrow_gauge:
50
+ case Erc20SubType.beratrax_vault:
51
51
  return `Deposit ${symbols.join("-")} on ${capitalize(typeInfo.protocol)}`;
52
- case tokenType.balancerPool: {
52
+ case Erc20SubType.balancerPool: {
53
53
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${symbols.join("-")}`;
54
54
  }
55
- case tokenType.balancerV3: {
55
+ case Erc20SubType.balancerV3: {
56
56
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} Boosted ${symbols.join("-")}`;
57
57
  }
58
- case tokenType.aura:
58
+ case Erc20SubType.aura:
59
59
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${symbols.join("-")}`;
60
- case tokenType.gearbox:
60
+ case Erc20SubType.gearbox:
61
61
  return `${capitalize(typeInfo.protocol)} ${typeInfo.symbolUnderlyingToken} Deposit`;
62
- case tokenType.compound:
62
+ case Erc20SubType.compound:
63
63
  return `Lend ${typeInfo.symbolBaseToken} on ${capitalize(typeInfo.protocol)}`;
64
- case tokenType.radiant_lend: {
64
+ case Erc20SubType.radiant_lend: {
65
65
  let cardToken = typeInfo.symbolUnderlyingToken;
66
66
  if (campaign.campaignParameters.symbolTargetToken.startsWith("r")) {
67
67
  cardToken = campaign.campaignParameters.symbolTargetToken.substring(1);
68
68
  }
69
69
  return `Lend ${cardToken} on ${capitalize(typeInfo.protocol)}`;
70
70
  }
71
- case tokenType.rfx:
71
+ case Erc20SubType.rfx:
72
72
  return `Supply ${typeInfo.symbolShortToken}-${typeInfo.symbolLongToken} on ${capitalize(typeInfo.protocol)}`;
73
- case tokenType.radiant_borrow:
74
- case tokenType.aave_borrowing:
75
- case tokenType.sake_borrowing:
76
- case tokenType.vicuna_borrowing:
77
- case tokenType.yei_borrowing:
78
- case tokenType.ironclad_borrowing:
79
- case tokenType.zerolend_borrowing:
80
- case tokenType.avalon_borrowing:
81
- case tokenType.superlend_borrowing:
82
- case tokenType.takotako_borrowing:
83
- case tokenType.lendle_borrowing:
84
- case tokenType.euler_borrow:
73
+ case Erc20SubType.radiant_borrow:
74
+ case Erc20SubType.aave_borrowing:
75
+ case Erc20SubType.sake_borrowing:
76
+ case Erc20SubType.vicuna_borrowing:
77
+ case Erc20SubType.yei_borrowing:
78
+ case Erc20SubType.ironclad_borrowing:
79
+ case Erc20SubType.zerolend_borrowing:
80
+ case Erc20SubType.avalon_borrowing:
81
+ case Erc20SubType.superlend_borrowing:
82
+ case Erc20SubType.takotako_borrowing:
83
+ case Erc20SubType.lendle_borrowing:
84
+ case Erc20SubType.euler_borrow:
85
85
  return `Borrow ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
86
- case tokenType.ionic:
87
- case tokenType.layerbank:
88
- case tokenType.moonwell:
89
- case tokenType.splice:
90
- case tokenType.aave_lending:
91
- case tokenType.vicuna_lending:
92
- case tokenType.sake_lending:
93
- case tokenType.yei_lending:
94
- case tokenType.ironclad_lending:
95
- case tokenType.zerolend_lending:
96
- case tokenType.avalon_lending:
97
- case tokenType.takotako_lending:
98
- case tokenType.superlend_lending:
99
- case tokenType.lendle_lending:
100
- case tokenType.fraxlend:
101
- case tokenType.venus:
102
- case tokenType.reactor_fusion:
103
- case tokenType.euler_lend:
104
- case tokenType.fluid:
86
+ case Erc20SubType.ionic:
87
+ case Erc20SubType.layerbank:
88
+ case Erc20SubType.moonwell:
89
+ case Erc20SubType.splice:
90
+ case Erc20SubType.aave_lending:
91
+ case Erc20SubType.vicuna_lending:
92
+ case Erc20SubType.sake_lending:
93
+ case Erc20SubType.yei_lending:
94
+ case Erc20SubType.ironclad_lending:
95
+ case Erc20SubType.zerolend_lending:
96
+ case Erc20SubType.avalon_lending:
97
+ case Erc20SubType.takotako_lending:
98
+ case Erc20SubType.superlend_lending:
99
+ case Erc20SubType.lendle_lending:
100
+ case Erc20SubType.fraxlend:
101
+ case Erc20SubType.venus:
102
+ case Erc20SubType.reactor_fusion:
103
+ case Erc20SubType.euler_lend:
104
+ case Erc20SubType.fluid:
105
105
  return `Lend ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
106
- case tokenType.xlend_lending:
106
+ case Erc20SubType.xlend_lending:
107
107
  return `Lend ${typeInfo.symbolUnderlyingToken} on Extrafi XLend`;
108
- case tokenType.xlend_borrowing:
108
+ case Erc20SubType.xlend_borrowing:
109
109
  return `Borrow ${typeInfo.symbolUnderlyingToken} on Extrafi XLend`;
110
- case tokenType.metamorpho:
110
+ case Erc20SubType.metamorpho:
111
111
  return `Supply to ${typeInfo.name} on ${capitalize(typeInfo.protocol)}`;
112
- case tokenType.sturdy_aggregator:
112
+ case Erc20SubType.sturdy_aggregator:
113
113
  return `Supply ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)} ${typeInfo.name}`;
114
- case tokenType.sturdy_silo:
114
+ case Erc20SubType.sturdy_silo:
115
115
  return `Supply ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)} ${typeInfo.symbolCollateral} Silo`;
116
- case tokenType.curve:
117
- case tokenType.curve_2:
116
+ case Erc20SubType.curve:
117
+ case Erc20SubType.curve_2:
118
118
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${Object.values(typeInfo.poolTokens).join("-")}`;
119
- case tokenType.enzyme:
119
+ case Erc20SubType.enzyme:
120
120
  return `Supply to the ${typeInfo.name} on ${capitalize(typeInfo.protocol)}`;
121
- case tokenType.filament:
121
+ case Erc20SubType.filament:
122
122
  return `Earn Yield on ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
123
- case tokenType.silostaking:
123
+ case Erc20SubType.silostaking:
124
124
  return `Stake ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
125
- case tokenType.beefy:
125
+ case Erc20SubType.beefy:
126
126
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}`;
127
- case tokenType.toros:
127
+ case Erc20SubType.toros:
128
128
  return `${typeInfo.name} (${campaign.campaignParameters.symbolTargetToken}) on ${capitalize(typeInfo.protocol)}`;
129
- case tokenType.ironcladStaking:
129
+ case Erc20SubType.ironcladStaking:
130
130
  return `Stake ${campaign.campaignParameters.symbolTargetToken} on ${capitalize(typeInfo.protocol)}`;
131
- case tokenType.woofi:
131
+ case Erc20SubType.woofi:
132
132
  return `Supercharge ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
133
- case tokenType.maverickBoostedPosition:
133
+ case Erc20SubType.maverickBoostedPosition:
134
134
  return `Maverick Boosted Position ${campaign.campaignParameters.symbolTargetToken}`;
135
- case tokenType.zkSwapThreePool:
135
+ case Erc20SubType.zkSwapThreePool:
136
136
  return `Provide liquidity to ${capitalize(typeInfo.protocol)} ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}-${typeInfo.symbolToken2}`;
137
- case tokenType.maha:
137
+ case Erc20SubType.maha:
138
138
  return `Stake ${typeInfo.symbolToken0}-${typeInfo.symbolToken1} LP on ${capitalize(typeInfo.protocol)}`;
139
- case tokenType.curve_gauge:
139
+ case Erc20SubType.curve_gauge:
140
140
  if (!!typeInfo.symbolToken2) {
141
141
  return `Stake ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}-${typeInfo.symbolToken2} LP on ${capitalize(typeInfo.protocol)}`;
142
142
  }
143
143
  return `Stake ${typeInfo.symbolToken0}-${typeInfo.symbolToken1} LP on ${capitalize(typeInfo.protocol)}`;
144
- case tokenType.tempest:
145
- case tokenType.tempestStaking:
144
+ case Erc20SubType.tempest:
145
+ case Erc20SubType.tempestStaking:
146
146
  return `Deposit into ${typeInfo.symbolToken0}-${typeInfo.symbolToken1} vault on ${capitalize(typeInfo.protocol)}`;
147
- case tokenType.holdstation:
147
+ case Erc20SubType.holdstation:
148
148
  return `Hold vault token ${campaign.campaignParameters.symbolTargetToken} on ${capitalize(typeInfo.protocol)}`;
149
- case tokenType.cpmmGamma:
149
+ case Erc20SubType.cpmmGamma:
150
150
  return `Provide ${typeInfo.symbolToken0}-${typeInfo.symbolToken1} on ${capitalize(typeInfo.protocol)}`;
151
- case tokenType.crosscurve:
151
+ case Erc20SubType.crosscurve:
152
152
  if (typeInfo.name.toLowerCase() === "eywa/usdt") {
153
153
  return `Curve ${typeInfo.name}`;
154
154
  }
155
155
  return `${typeInfo.name}`;
156
- case tokenType.curveNPool:
156
+ case Erc20SubType.curveNPool:
157
157
  return `Curve ${typeInfo.name}`;
158
- case tokenType.vicuna: {
158
+ case Erc20SubType.vicuna: {
159
159
  const parsedName = typeInfo.name.split(" ");
160
160
  parsedName.shift();
161
161
  const parsedNameForCard = parsedName.join(" ");
162
162
  return `Deposit liquidity on ${parsedNameForCard.replace("BALANCER", "Beets")} vault on Vicuna`;
163
163
  }
164
- case tokenType.satlayer:
164
+ case Erc20SubType.satlayer:
165
165
  return `Restake ${typeInfo.symbolUnderlyingToken} on ${capitalize(typeInfo.protocol)}`;
166
- case tokenType.veda:
166
+ case Erc20SubType.veda:
167
167
  return `Deposit into ${typeInfo.name.replace("Ether.Fi", "Veda")}`;
168
- case tokenType.concrete:
169
- case tokenType.cian:
168
+ case Erc20SubType.concrete:
169
+ case Erc20SubType.cian:
170
170
  return `Deposit ${typeInfo.symbolAsset} into ${typeInfo.name.replace("Ether.Fi", "Veda")}`;
171
- case tokenType.rfx_slv:
171
+ case Erc20SubType.rfx_slv:
172
172
  return `Deposit ${typeInfo.symbolAsset} into ${typeInfo.name}`;
173
- case tokenType.equalizer_gauge:
173
+ case Erc20SubType.equalizer_gauge:
174
174
  return `${displayName}`;
175
- case tokenType.anglesLiquid:
175
+ case Erc20SubType.anglesLiquid:
176
176
  return `Deposit into ${typeInfo.name} (${campaign.campaignParameters.symbolTargetToken}) Vault`;
177
- case tokenType.spectra_lpt:
177
+ case Erc20SubType.spectra_lpt:
178
178
  return `Provide liquidity on Spectra to ${typeInfo.name}`;
179
- case tokenType.spectra_yt:
179
+ case Erc20SubType.spectra_yt:
180
180
  return `Hold Spectra ${typeInfo.name}`;
181
- case tokenType.hourglass:
181
+ case Erc20SubType.hourglass:
182
182
  return `Deposit ${typeInfo.symbolUnderlyingToken} into Hourglass`;
183
- case tokenType.hanji_liquidity_vault_token:
183
+ case Erc20SubType.hanji_liquidity_vault_token:
184
184
  return "Provide Liquidity on Hanji Vault";
185
- case tokenType.bunniV2:
185
+ case Erc20SubType.bunniV2:
186
186
  return `Provide Liquidity on Bunni V2 ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}`;
187
- case tokenType.gamma:
187
+ case Erc20SubType.gamma:
188
188
  return `Provide liquidity to Gamma ${capitalize(typeInfo.protocol)} ${campaign.campaignParameters.symbolTargetToken} vault`;
189
189
  default:
190
190
  // OVERRIDE