@merkl/api 0.10.353 → 0.10.355
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/database/api/.generated/edge.js +10 -4
- package/dist/database/api/.generated/index-browser.js +7 -1
- package/dist/database/api/.generated/index.d.ts +7 -1
- package/dist/database/api/.generated/index.js +10 -4
- package/dist/database/api/.generated/package.json +1 -1
- package/dist/database/api/.generated/schema.prisma +6 -0
- package/dist/database/api/.generated/wasm.js +7 -1
- package/dist/src/eden/index.d.ts +21 -21
- package/dist/src/index.d.ts +7 -7
- package/dist/src/jobs/breakdowns.d.ts +1 -0
- package/dist/src/jobs/breakdowns.js +55 -0
- package/dist/src/jobs/etl/pendings.d.ts +1 -0
- package/dist/src/jobs/etl/pendings.js +74 -0
- package/dist/src/jobs/etl/reward-breakdowns.d.ts +1 -0
- package/dist/src/jobs/etl/reward-breakdowns.js +82 -0
- package/dist/src/jobs/etl/rewards.d.ts +1 -0
- package/dist/src/jobs/etl/rewards.js +102 -0
- package/dist/src/jobs/rewards.d.ts +1 -0
- package/dist/src/jobs/rewards.js +74 -0
- package/dist/src/modules/v4/bucket/bucket.service.d.ts +4 -1
- package/dist/src/modules/v4/bucket/bucket.service.js +83 -2
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +2 -2
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +3 -0
- package/dist/src/modules/v4/dynamicData/dynamicData.controller.d.ts +2 -2
- package/dist/src/modules/v4/dynamicData/dynamicData.model.d.ts +6 -0
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +3 -3
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +6 -0
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.service.js +4 -0
- package/dist/src/modules/v4/opportunity/subservices/getHyperdriveMetadata.service.d.ts +3 -0
- package/dist/src/modules/v4/opportunity/subservices/getHyperdriveMetadata.service.js +15 -0
- package/dist/src/modules/v4/programPayload/programPayload.repository.d.ts +4 -1
- package/dist/src/modules/v4/programPayload/programPayload.repository.js +101 -16
- package/dist/src/modules/v4/programPayload/programPayload.service.d.ts +3 -3
- package/dist/src/modules/v4/programPayload/programPayload.service.js +25 -11
- package/dist/src/modules/v4/protocol/protocol.model.d.ts +1 -1
- package/dist/src/modules/v4/protocol/protocol.model.js +1 -0
- package/dist/src/modules/v4/router.d.ts +7 -7
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +4 -2
@@ -187,6 +187,9 @@ export var modeCampaigns;
|
|
187
187
|
modeCampaigns["Kim_Steer_CRS_V2_WETH_MODE_Mode"] = "Kim Steer CRS V2 WETH/Mode 0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55";
|
188
188
|
modeCampaigns["Kim_Gamma_WETH_MODE_Mode"] = "Kim Gamma Narrow WETH/Mode 0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55";
|
189
189
|
modeCampaigns["Kim_V4_WETH_MODE_Mode"] = "Kim V4 WETH/Mode 0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55";
|
190
|
+
modeCampaigns["Ironclad_Borrow_uniBTC_Mode"] = "Ironclad Borrow uniBTC 0x80215c38DCb6ae91520F8251A077c124e7259688";
|
191
|
+
modeCampaigns["Bedrock_Ionic_Supply_ionuniBTC_Mode"] = "Bedrock Ionic Supply uniBTC 0xa48750877a83f7dec11f722178c317b54a44d142";
|
192
|
+
modeCampaigns["Bedrock_Ironclad_Supply_uniBTC_Mode"] = "Bedrock Ironclad Supply uniBTC 0x0F041cf2ae959f39215EFfB50d681Df55D4d90B1";
|
190
193
|
})(modeCampaigns || (modeCampaigns = {}));
|
191
194
|
const ModeInterfaceCampaigns = {
|
192
195
|
[modeCampaigns.Steer_EES_V2_Weth_USDC_Kim_Mode]: {
|
@@ -195,7 +198,11 @@ const ModeInterfaceCampaigns = {
|
|
195
198
|
hooks: [],
|
196
199
|
poolAddress: "0x468cc91df6f669cae6cdce766995bd7874052fbc",
|
197
200
|
whitelist: ["0xc07df1d13188c081f770944ece48e469b326b2a5"],
|
198
|
-
blacklist: [
|
201
|
+
blacklist: [
|
202
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
203
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
204
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
205
|
+
],
|
199
206
|
url: "https://app.steer.finance/vault/0xc07df1d13188c081f770944ece48e469b326b2a5",
|
200
207
|
forwarders: [],
|
201
208
|
isOutOfRangeIncentivized: true,
|
@@ -223,7 +230,11 @@ const ModeInterfaceCampaigns = {
|
|
223
230
|
hooks: [],
|
224
231
|
poolAddress: "0x8cfe2a02dfbabc56ae7e573170e35f88a38bea55",
|
225
232
|
whitelist: ["0x23c17a512d486d6f46db63a8dd5144b352497762"],
|
226
|
-
blacklist: [
|
233
|
+
blacklist: [
|
234
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
235
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
236
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
237
|
+
],
|
227
238
|
url: "https://app.steer.finance/vault/0x23c17a512d486d6f46db63a8dd5144b352497762",
|
228
239
|
forwarders: [],
|
229
240
|
isOutOfRangeIncentivized: true,
|
@@ -237,7 +248,11 @@ const ModeInterfaceCampaigns = {
|
|
237
248
|
hooks: [],
|
238
249
|
poolAddress: "0x27f0976b26194c448d987c275bb409eab6083964",
|
239
250
|
whitelist: ["0x4c8d1a52ee90b04ff8ee1257ad12290d89d13e6f"],
|
240
|
-
blacklist: [
|
251
|
+
blacklist: [
|
252
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
253
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
254
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
255
|
+
],
|
241
256
|
url: "https://app.steer.finance/vault/0x4c8d1a52ee90b04ff8ee1257ad12290d89d13e6f",
|
242
257
|
forwarders: [],
|
243
258
|
isOutOfRangeIncentivized: true,
|
@@ -251,7 +266,11 @@ const ModeInterfaceCampaigns = {
|
|
251
266
|
hooks: [],
|
252
267
|
poolAddress: "0xe24c8feb38ca2b18b542994bfba7e70880171035",
|
253
268
|
whitelist: ["0x5aa27d5d8aff8cd5e683e23812124ace4aa5af7d"],
|
254
|
-
blacklist: [
|
269
|
+
blacklist: [
|
270
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
271
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
272
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
273
|
+
],
|
255
274
|
url: "https://app.steer.finance/vault/0x5aa27d5d8aff8cd5e683e23812124ace4aa5af7d",
|
256
275
|
forwarders: [],
|
257
276
|
isOutOfRangeIncentivized: true,
|
@@ -265,7 +284,11 @@ const ModeInterfaceCampaigns = {
|
|
265
284
|
hooks: [],
|
266
285
|
poolAddress: "0x15173cca4c4c4e5a3f4b5c0e81a1aef7c0bd6ede",
|
267
286
|
whitelist: ["0xa212659dd4b71947268ff2037a654ce03730d857"],
|
268
|
-
blacklist: [
|
287
|
+
blacklist: [
|
288
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
289
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
290
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
291
|
+
],
|
269
292
|
url: "https://app.steer.finance/vault/0xa212659dd4b71947268ff2037a654ce03730d857",
|
270
293
|
forwarders: [],
|
271
294
|
isOutOfRangeIncentivized: true,
|
@@ -279,7 +302,7 @@ const ModeInterfaceCampaigns = {
|
|
279
302
|
hooks: [],
|
280
303
|
poolAddress: "0x34D6146f8FdD9599f574fC6a686d6f6498217b7E",
|
281
304
|
whitelist: ["0x71F59E17e439f6bA63f6562DC4C5F37cc8A1d684"],
|
282
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
305
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0x495119165d2398A9bec515e909cCd43e7DEABac5"],
|
283
306
|
url: "https://app.kim.exchange/pools/vaults/ichi/0x71f59e17e439f6ba63f6562dc4c5f37cc8a1d684",
|
284
307
|
forwarders: [],
|
285
308
|
isOutOfRangeIncentivized: true,
|
@@ -838,7 +861,11 @@ const ModeInterfaceCampaigns = {
|
|
838
861
|
hooks: [],
|
839
862
|
poolAddress: "0x468cC91dF6F669CaE6cdCE766995Bd7874052FBc",
|
840
863
|
whitelist: ["0xACb9a8676FC6ADa472611A62354BF47502969287"],
|
841
|
-
blacklist: [
|
864
|
+
blacklist: [
|
865
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
866
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
867
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
868
|
+
],
|
842
869
|
url: "https://app.kim.exchange/pools/vaults/0xacb9a8676fc6ada472611a62354bf47502969287",
|
843
870
|
forwarders: [],
|
844
871
|
isOutOfRangeIncentivized: false,
|
@@ -852,7 +879,11 @@ const ModeInterfaceCampaigns = {
|
|
852
879
|
hooks: [],
|
853
880
|
poolAddress: "0x468cC91dF6F669CaE6cdCE766995Bd7874052FBc",
|
854
881
|
whitelist: ["0xc07df1D13188c081f770944ece48e469B326B2A5"],
|
855
|
-
blacklist: [
|
882
|
+
blacklist: [
|
883
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
884
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
885
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
886
|
+
],
|
856
887
|
url: "https://app.kim.exchange/pools/vaults/0xc07df1d13188c081f770944ece48e469b326b2a5",
|
857
888
|
forwarders: [],
|
858
889
|
isOutOfRangeIncentivized: false,
|
@@ -866,7 +897,11 @@ const ModeInterfaceCampaigns = {
|
|
866
897
|
hooks: [],
|
867
898
|
poolAddress: "0x468cC91dF6F669CaE6cdCE766995Bd7874052FBc",
|
868
899
|
whitelist: ["0xC40D4D88aFC7B03C65391cBfB6F399f464F6aB03"],
|
869
|
-
blacklist: [
|
900
|
+
blacklist: [
|
901
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
902
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
903
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
904
|
+
],
|
870
905
|
url: "https://app.kim.exchange/pools/vaults/0xc40d4d88afc7b03c65391cbfb6f399f464f6ab03",
|
871
906
|
forwarders: [],
|
872
907
|
isOutOfRangeIncentivized: false,
|
@@ -880,7 +915,7 @@ const ModeInterfaceCampaigns = {
|
|
880
915
|
hooks: [],
|
881
916
|
poolAddress: "0x468cC91dF6F669CaE6cdCE766995Bd7874052FBc",
|
882
917
|
whitelist: ["0x7eCCD6D077e4ad7120150578E936A22f058fBCCe"],
|
883
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
918
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0xF2EaF3aD84376A6C233d52cC52C1293A41857820"],
|
884
919
|
url: "https://app.kim.exchange/pools/vaults/gamma/0x7eccd6d077e4ad7120150578e936a22f058fbcce",
|
885
920
|
forwarders: [],
|
886
921
|
isOutOfRangeIncentivized: false,
|
@@ -900,6 +935,9 @@ const ModeInterfaceCampaigns = {
|
|
900
935
|
"0xc07df1D13188c081f770944ece48e469B326B2A5",
|
901
936
|
"0xC40D4D88aFC7B03C65391cBfB6F399f464F6aB03",
|
902
937
|
"0x7eCCD6D077e4ad7120150578E936A22f058fBCCe",
|
938
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
939
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
940
|
+
"0xF2EaF3aD84376A6C233d52cC52C1293A41857820",
|
903
941
|
],
|
904
942
|
url: "https://app.kim.exchange/positions",
|
905
943
|
forwarders: [],
|
@@ -914,7 +952,7 @@ const ModeInterfaceCampaigns = {
|
|
914
952
|
hooks: [],
|
915
953
|
poolAddress: "0x3C3a173984e3152FEd868345904eC0C9325FA516",
|
916
954
|
whitelist: ["0xF5DDF269948C53D86B87Fa3393a5B2579348C07f"],
|
917
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
955
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0x495119165d2398A9bec515e909cCd43e7DEABac5"],
|
918
956
|
url: "https://app.kim.exchange/pools/vaults/ichi/0xf5ddf269948c53d86b87fa3393a5b2579348c07f",
|
919
957
|
forwarders: [],
|
920
958
|
isOutOfRangeIncentivized: false,
|
@@ -928,7 +966,11 @@ const ModeInterfaceCampaigns = {
|
|
928
966
|
hooks: [],
|
929
967
|
poolAddress: "0x3C3a173984e3152FEd868345904eC0C9325FA516",
|
930
968
|
whitelist: ["0xAC8C89516bC4b60621c5326446e33680357bB3D2"],
|
931
|
-
blacklist: [
|
969
|
+
blacklist: [
|
970
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
971
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
972
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
973
|
+
],
|
932
974
|
url: "https://app.kim.exchange/pools/vaults/0xac8c89516bc4b60621c5326446e33680357bb3d2",
|
933
975
|
forwarders: [],
|
934
976
|
isOutOfRangeIncentivized: false,
|
@@ -942,7 +984,7 @@ const ModeInterfaceCampaigns = {
|
|
942
984
|
hooks: [],
|
943
985
|
poolAddress: "0x3C3a173984e3152FEd868345904eC0C9325FA516",
|
944
986
|
whitelist: ["0x1392698B2F2cA87E6329c1ca502C5d4BA938d1b8"],
|
945
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
987
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0xF2EaF3aD84376A6C233d52cC52C1293A41857820"],
|
946
988
|
url: "https://app.kim.exchange/pools/vaults/gamma/0x1392698b2f2ca87e6329c1ca502c5d4ba938d1b8",
|
947
989
|
forwarders: [],
|
948
990
|
isOutOfRangeIncentivized: false,
|
@@ -963,6 +1005,10 @@ const ModeInterfaceCampaigns = {
|
|
963
1005
|
"0x1392698B2F2cA87E6329c1ca502C5d4BA938d1b8",
|
964
1006
|
"0x7c207cb731ebc0BA5dF699d7B36348302FD8480c",
|
965
1007
|
"0x3da7476152f7EFF205cBf56f67aBaB17CF9d37eE",
|
1008
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
1009
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
1010
|
+
"0x495119165d2398A9bec515e909cCd43e7DEABac5",
|
1011
|
+
"0xF2EaF3aD84376A6C233d52cC52C1293A41857820",
|
966
1012
|
],
|
967
1013
|
url: "https://app.kim.exchange/positions",
|
968
1014
|
forwarders: [],
|
@@ -977,7 +1023,7 @@ const ModeInterfaceCampaigns = {
|
|
977
1023
|
hooks: [],
|
978
1024
|
poolAddress: "0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55",
|
979
1025
|
whitelist: ["0x91f6fF8cDBD9B516c0DfB901063B3b00612962EB"],
|
980
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
1026
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0x495119165d2398A9bec515e909cCd43e7DEABac5"],
|
981
1027
|
url: "https://app.kim.exchange/pools/vaults/ichi/0x91f6ff8cdbd9b516c0dfb901063b3b00612962eb",
|
982
1028
|
forwarders: [],
|
983
1029
|
isOutOfRangeIncentivized: false,
|
@@ -991,7 +1037,11 @@ const ModeInterfaceCampaigns = {
|
|
991
1037
|
hooks: [],
|
992
1038
|
poolAddress: "0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55",
|
993
1039
|
whitelist: ["0x23c17a512d486D6F46DB63A8Dd5144B352497762"],
|
994
|
-
blacklist: [
|
1040
|
+
blacklist: [
|
1041
|
+
"0x67135675e22F7ff34eBA30f15f39F9cd30d29079",
|
1042
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
1043
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
1044
|
+
],
|
995
1045
|
url: "https://app.kim.exchange/pools/vaults/0x23c17a512d486d6f46db63a8dd5144b352497762",
|
996
1046
|
forwarders: [],
|
997
1047
|
isOutOfRangeIncentivized: false,
|
@@ -1005,7 +1055,7 @@ const ModeInterfaceCampaigns = {
|
|
1005
1055
|
hooks: [],
|
1006
1056
|
poolAddress: "0x8cfE2A02dfBAbC56aE7e573170E35f88A38BeA55",
|
1007
1057
|
whitelist: ["0xD6Cc4a33dA7557A629e819c68fB805ddB225f517"],
|
1008
|
-
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079"],
|
1058
|
+
blacklist: ["0x67135675e22F7ff34eBA30f15f39F9cd30d29079", "0xF2EaF3aD84376A6C233d52cC52C1293A41857820"],
|
1009
1059
|
url: "https://app.kim.exchange/pools/vaults/gamma/0xd6cc4a33da7557a629e819c68fb805ddb225f517",
|
1010
1060
|
forwarders: [],
|
1011
1061
|
isOutOfRangeIncentivized: false,
|
@@ -1026,6 +1076,10 @@ const ModeInterfaceCampaigns = {
|
|
1026
1076
|
"0x91f6fF8cDBD9B516c0DfB901063B3b00612962EB",
|
1027
1077
|
"0xdd97504448cC51b4De4944157838c4800C773C5A",
|
1028
1078
|
"0xBBD68F14F61bfcbB833618d83779e4Aa1Af5670e",
|
1079
|
+
"0x0ed357a94ffd136095B720f8EAC6687994b6aE5F",
|
1080
|
+
"0xc0E93CE4857F168E6eE790800C68dd701cC41B37",
|
1081
|
+
"0x495119165d2398A9bec515e909cCd43e7DEABac5",
|
1082
|
+
"0xF2EaF3aD84376A6C233d52cC52C1293A41857820",
|
1029
1083
|
],
|
1030
1084
|
url: "https://app.kim.exchange/pools/vaults/gamma/0xd6cc4a33da7557a629e819c68fb805ddb225f517",
|
1031
1085
|
forwarders: [],
|
@@ -1034,6 +1088,37 @@ const ModeInterfaceCampaigns = {
|
|
1034
1088
|
weightToken0: 4000,
|
1035
1089
|
weightToken1: 4000,
|
1036
1090
|
},
|
1091
|
+
[modeCampaigns.Ironclad_Borrow_uniBTC_Mode]: {
|
1092
|
+
campaignType: Campaign.ERC20,
|
1093
|
+
computeChainId: ChainId.MODE,
|
1094
|
+
hooks: [],
|
1095
|
+
targetToken: "0x80215c38DCb6ae91520F8251A077c124e7259688",
|
1096
|
+
whitelist: [],
|
1097
|
+
blacklist: [],
|
1098
|
+
url: "https://app.ironclad.finance/markets/unibtc",
|
1099
|
+
forwarders: [],
|
1100
|
+
},
|
1101
|
+
[modeCampaigns.Bedrock_Ionic_Supply_ionuniBTC_Mode]: {
|
1102
|
+
campaignType: Campaign.COMPOUND,
|
1103
|
+
computeChainId: ChainId.MODE,
|
1104
|
+
hooks: [],
|
1105
|
+
whitelist: [],
|
1106
|
+
blacklist: [],
|
1107
|
+
forwarders: [],
|
1108
|
+
subCampaignType: CompoundSubCampaignType.supply,
|
1109
|
+
compFork: CompFork.Ionic,
|
1110
|
+
targetToken: "0xa48750877a83f7dec11f722178c317b54a44d142",
|
1111
|
+
},
|
1112
|
+
[modeCampaigns.Bedrock_Ironclad_Supply_uniBTC_Mode]: {
|
1113
|
+
campaignType: Campaign.ERC20,
|
1114
|
+
computeChainId: ChainId.MODE,
|
1115
|
+
hooks: [],
|
1116
|
+
targetToken: "0x0F041cf2ae959f39215EFfB50d681Df55D4d90B1",
|
1117
|
+
whitelist: [],
|
1118
|
+
blacklist: [],
|
1119
|
+
url: "https://app.ironclad.finance/markets/unibtc",
|
1120
|
+
forwarders: [],
|
1121
|
+
},
|
1037
1122
|
};
|
1038
1123
|
const ZkSyncInterfaceCampaigns = {
|
1039
1124
|
[zkSyncCampaigns.Vest_USDC]: {
|
@@ -16,9 +16,9 @@ export declare class ProgramPayloadService {
|
|
16
16
|
safePayload: safePayload;
|
17
17
|
nonEncodedConfig: any;
|
18
18
|
}>;
|
19
|
-
static createSafePayloadForCampaign(args: CampaignParametersStruct, distributionChainId: ChainId, rewardToken: string, distributionCreator: string): [approvalTransaction, createCampaignTransaction];
|
20
|
-
static initiateSafePayload(distributionChainId: ChainId, distributionCreator: string): safePayload;
|
21
|
-
static buildPayload(query: CampaignPayloadInputModel, initialCampaignPayload?: safePayload | null): safePayload;
|
19
|
+
static createSafePayloadForCampaign(args: CampaignParametersStruct, distributionChainId: ChainId, rewardToken: string, distributionCreator: string, withApproval?: boolean): [approvalTransaction, createCampaignTransaction] | [createCampaignTransaction];
|
20
|
+
static initiateSafePayload(distributionChainId: ChainId, distributionCreator: string, rewardToken: string, approvalAmount?: string): safePayload;
|
21
|
+
static buildPayload(query: CampaignPayloadInputModel, initialCampaignPayload?: safePayload | null, totalAmount?: string): safePayload;
|
22
22
|
static buildProgramPayload(query: ProgramPayloadInputModel): safePayload | null;
|
23
23
|
static buildProgramPayloadWithAmounts(query: ProgramPayloadInputModel, body: CampaignAmountsInputModel): safePayload | null;
|
24
24
|
}
|
@@ -67,7 +67,7 @@ export class ProgramPayloadService {
|
|
67
67
|
const distributionCreator = registryInitialized?.Merkl?.DistributionCreator ?? NULL_ADDRESS;
|
68
68
|
// Small hack to avoid the need to parse the config again
|
69
69
|
const args = buildCampaignPayload(parsedConfig, distributionChainId).args;
|
70
|
-
const safePayload = ProgramPayloadService.initiateSafePayload(distributionChainId, distributionCreator);
|
70
|
+
const safePayload = ProgramPayloadService.initiateSafePayload(distributionChainId, distributionCreator, rewardToken);
|
71
71
|
const transactions = ProgramPayloadService.createSafePayloadForCampaign(args, distributionChainId, rewardToken, distributionCreator ?? NULL_ADDRESS);
|
72
72
|
safePayload.transactions.push(...transactions);
|
73
73
|
if (debug) {
|
@@ -75,7 +75,7 @@ export class ProgramPayloadService {
|
|
75
75
|
}
|
76
76
|
return safePayload;
|
77
77
|
}
|
78
|
-
static createSafePayloadForCampaign(args, distributionChainId, rewardToken, distributionCreator) {
|
78
|
+
static createSafePayloadForCampaign(args, distributionChainId, rewardToken, distributionCreator, withApproval = true) {
|
79
79
|
const safePayload = _.cloneDeep(safeTemplate);
|
80
80
|
safePayload.chainId = distributionChainId.toString();
|
81
81
|
safePayload.createdAt = Math.floor(Date.now() / 1000);
|
@@ -97,30 +97,43 @@ export class ProgramPayloadService {
|
|
97
97
|
args?.campaignData,
|
98
98
|
]),
|
99
99
|
};
|
100
|
-
|
100
|
+
if (withApproval) {
|
101
|
+
return [safePayload.transactions[0], safePayload.transactions[2]];
|
102
|
+
}
|
103
|
+
return [safePayload.transactions[2]];
|
101
104
|
}
|
102
|
-
static initiateSafePayload(distributionChainId, distributionCreator) {
|
105
|
+
static initiateSafePayload(distributionChainId, distributionCreator, rewardToken, approvalAmount = "O") {
|
103
106
|
const safePayload = _.cloneDeep(safeTemplate);
|
104
107
|
safePayload.chainId = distributionChainId.toString();
|
105
108
|
safePayload.createdAt = Math.floor(Date.now() / 1000);
|
106
109
|
safePayload.transactions[1].to = distributionCreator;
|
107
|
-
|
110
|
+
if (approvalAmount !== "0") {
|
111
|
+
safePayload.transactions[0].to = rewardToken;
|
112
|
+
safePayload.transactions[0].contractInputsValues = {
|
113
|
+
amount: approvalAmount,
|
114
|
+
spender: distributionCreator,
|
115
|
+
};
|
116
|
+
safePayload.transactions = [safePayload.transactions[1], safePayload.transactions[0]];
|
117
|
+
}
|
118
|
+
else
|
119
|
+
safePayload.transactions = [safePayload.transactions[1]];
|
108
120
|
return safePayload;
|
109
121
|
}
|
110
|
-
static buildPayload(query, initialCampaignPayload = null) {
|
122
|
+
static buildPayload(query, initialCampaignPayload = null, totalAmount = "0") {
|
123
|
+
const withApproval = Boolean(totalAmount === "0");
|
111
124
|
const rewardToken = query.rewardToken;
|
112
125
|
const distributionChainId = query.distributionChainId ? query.distributionChainId : ChainId.MAINNET;
|
113
126
|
const registryInitialized = registry(distributionChainId);
|
114
127
|
const distributionCreator = registryInitialized?.Merkl?.DistributionCreator ?? NULL_ADDRESS;
|
115
|
-
function generatePayloadFile(query) {
|
128
|
+
function generatePayloadFile(query, withApproval = true) {
|
116
129
|
const args = buildCampaignPayload(ProgramPayloadService.buildConfig(query), distributionChainId).args;
|
117
|
-
const safePayload = ProgramPayloadService.createSafePayloadForCampaign(args, distributionChainId, rewardToken, distributionCreator);
|
130
|
+
const safePayload = ProgramPayloadService.createSafePayloadForCampaign(args, distributionChainId, rewardToken, distributionCreator, withApproval);
|
118
131
|
return safePayload;
|
119
132
|
}
|
120
133
|
const campaignPayloads = initialCampaignPayload === null
|
121
|
-
? ProgramPayloadService.initiateSafePayload(distributionChainId, distributionCreator)
|
134
|
+
? ProgramPayloadService.initiateSafePayload(distributionChainId, distributionCreator, rewardToken, totalAmount)
|
122
135
|
: initialCampaignPayload;
|
123
|
-
const transactions = generatePayloadFile(query);
|
136
|
+
const transactions = generatePayloadFile(query, withApproval);
|
124
137
|
campaignPayloads.transactions.push(...transactions);
|
125
138
|
return campaignPayloads;
|
126
139
|
}
|
@@ -139,10 +152,11 @@ export class ProgramPayloadService {
|
|
139
152
|
}
|
140
153
|
static buildProgramPayloadWithAmounts(query, body) {
|
141
154
|
let campaignPayloads = null;
|
155
|
+
const totalAmount = Object.values(body).reduce((sum, amount) => sum + BigInt(amount), 0n);
|
142
156
|
for (const [campaign, amount] of Object.entries(body)) {
|
143
157
|
if (Object.keys(MerklInterfaceCampaigns[query.program]).includes(campaign)) {
|
144
158
|
const queryCampaign = { ...query, campaign, amount: amount };
|
145
|
-
campaignPayloads = ProgramPayloadService.buildPayload(queryCampaign, campaignPayloads);
|
159
|
+
campaignPayloads = ProgramPayloadService.buildPayload(queryCampaign, campaignPayloads, totalAmount.toString());
|
146
160
|
}
|
147
161
|
else {
|
148
162
|
throw new Error(`Campaign ${campaign} not found`);
|
@@ -5,7 +5,7 @@ import type { Resource } from "../prisma";
|
|
5
5
|
* @see {@link Resource}
|
6
6
|
*/
|
7
7
|
export type Protocol = Resource<"Protocol">;
|
8
|
-
declare const protocolTypes: readonly ["arthswap", "baseswap", "camelot", "crust", "fenix", "horiza", "izumi", "kim", "pancakeswap-v3", "quickswap-algebra", "quickswap-uni", "ramses", "retro", "stryke", "stryke-pcs", "stryke-sushi", "sushiswap-v3", "swapr", "thruster", "uniswap-v3", "voltage", "zero", "koi", "supswap-v3", "zkswap", "thirdtrade", "uniswap-v2", "velodrome", "aerodrome", "balancer", "curve", "cross_curve", "curveNPool", "aura", "akron", "beefy", "dragonswap", "poolside", "koi", "syncswap-v3", "neptune", "zkSwapThreePool", "syncswap", "rfx", "radiant", "aave", "euler", "gearbox", "compound", "sturdy", "frax", "ionic", "moonwell", "fluid", "silo", "morpho", "coumpound", "dolomite", "badger", "ajna", "layerbank", "ion", "venus", "woofi", "reactor_fusion", "eigenlayer", "vest", "zerolend"];
|
8
|
+
declare const protocolTypes: readonly ["arthswap", "baseswap", "camelot", "crust", "fenix", "horiza", "izumi", "kim", "pancakeswap-v3", "quickswap-algebra", "quickswap-uni", "ramses", "retro", "stryke", "stryke-pcs", "stryke-sushi", "sushiswap-v3", "swapr", "thruster", "uniswap-v3", "voltage", "zero", "koi", "supswap-v3", "zkswap", "thirdtrade", "uniswap-v2", "velodrome", "aerodrome", "balancer", "curve", "cross_curve", "curveNPool", "aura", "akron", "beefy", "dragonswap", "poolside", "koi", "syncswap-v3", "neptune", "zkSwapThreePool", "syncswap", "rfx", "radiant", "aave", "euler", "gearbox", "compound", "sturdy", "frax", "ionic", "moonwell", "fluid", "silo", "morpho", "coumpound", "dolomite", "badger", "ajna", "layerbank", "ion", "venus", "woofi", "reactor_fusion", "eigenlayer", "vest", "zerolend", "hyperdrive"];
|
9
9
|
export type ProtocolId = (typeof protocolTypes)[number];
|
10
10
|
export declare const ProtocolResourceDto: import("@sinclair/typebox").TObject<{
|
11
11
|
id: import("@sinclair/typebox").TString;
|
@@ -30,7 +30,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
30
30
|
depositUrl?: string | undefined;
|
31
31
|
protocols?: string[] | undefined;
|
32
32
|
mainProtocol?: string | undefined;
|
33
|
-
type: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST";
|
33
|
+
type: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | "ERC20_FIX_APR" | "HYPERDRIVELOGPROCESSOR" | "HYPERDRIVELOGFIXPROCESSOR";
|
34
34
|
tokens: {
|
35
35
|
chainId: number;
|
36
36
|
address: string;
|
@@ -38,7 +38,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
38
38
|
status: "NONE" | "PAST" | "LIVE" | "SOON";
|
39
39
|
identifier: string;
|
40
40
|
chainId: number;
|
41
|
-
action: "INVALID" | "POOL" | "HOLD" | "DROP" | "LEND" | "BORROW";
|
41
|
+
action: "INVALID" | "POOL" | "HOLD" | "DROP" | "LEND" | "BORROW" | "LP" | "LONG" | "SHORT";
|
42
42
|
};
|
43
43
|
params: {};
|
44
44
|
query: unknown;
|
@@ -99,7 +99,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
99
99
|
} & {
|
100
100
|
price?: number | null | undefined;
|
101
101
|
})[];
|
102
|
-
mainProtocol: "morpho" | "arthswap" | "baseswap" | "camelot" | "crust" | "fenix" | "horiza" | "izumi" | "kim" | "pancakeswap-v3" | "quickswap-algebra" | "quickswap-uni" | "ramses" | "retro" | "stryke" | "stryke-pcs" | "stryke-sushi" | "sushiswap-v3" | "swapr" | "thruster" | "uniswap-v3" | "voltage" | "zero" | "koi" | "supswap-v3" | "zkswap" | "thirdtrade" | "uniswap-v2" | "velodrome" | "aerodrome" | "balancer" | "curve" | "cross_curve" | "curveNPool" | "aura" | "akron" | "beefy" | "dragonswap" | "poolside" | "syncswap-v3" | "neptune" | "zkSwapThreePool" | "syncswap" | "rfx" | "radiant" | "aave" | "euler" | "gearbox" | "compound" | "sturdy" | "frax" | "ionic" | "moonwell" | "fluid" | "silo" | "coumpound" | "dolomite" | "badger" | "ajna" | "layerbank" | "ion" | "venus" | "woofi" | "reactor_fusion" | "eigenlayer" | "vest" | "zerolend" | undefined;
|
102
|
+
mainProtocol: "morpho" | "arthswap" | "baseswap" | "camelot" | "crust" | "fenix" | "horiza" | "izumi" | "kim" | "pancakeswap-v3" | "quickswap-algebra" | "quickswap-uni" | "ramses" | "retro" | "stryke" | "stryke-pcs" | "stryke-sushi" | "sushiswap-v3" | "swapr" | "thruster" | "uniswap-v3" | "voltage" | "zero" | "koi" | "supswap-v3" | "zkswap" | "thirdtrade" | "uniswap-v2" | "velodrome" | "aerodrome" | "balancer" | "curve" | "cross_curve" | "curveNPool" | "aura" | "akron" | "beefy" | "dragonswap" | "poolside" | "syncswap-v3" | "neptune" | "zkSwapThreePool" | "syncswap" | "rfx" | "radiant" | "aave" | "euler" | "gearbox" | "compound" | "sturdy" | "frax" | "ionic" | "moonwell" | "fluid" | "silo" | "coumpound" | "dolomite" | "badger" | "ajna" | "layerbank" | "ion" | "venus" | "woofi" | "reactor_fusion" | "eigenlayer" | "vest" | "zerolend" | "hyperdrive" | undefined;
|
103
103
|
depositUrl: any;
|
104
104
|
tags: string[];
|
105
105
|
};
|
@@ -768,7 +768,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
768
768
|
body: unknown;
|
769
769
|
params: {};
|
770
770
|
query: {
|
771
|
-
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | undefined;
|
771
|
+
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | "ERC20_FIX_APR" | "HYPERDRIVELOGPROCESSOR" | "HYPERDRIVELOGFIXPROCESSOR" | undefined;
|
772
772
|
items?: number | undefined;
|
773
773
|
subType?: number | undefined;
|
774
774
|
page?: number | undefined;
|
@@ -840,7 +840,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
840
840
|
body: unknown;
|
841
841
|
params: {};
|
842
842
|
query: {
|
843
|
-
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | undefined;
|
843
|
+
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | "ERC20_FIX_APR" | "HYPERDRIVELOGPROCESSOR" | "HYPERDRIVELOGFIXPROCESSOR" | undefined;
|
844
844
|
items?: number | undefined;
|
845
845
|
subType?: number | undefined;
|
846
846
|
page?: number | undefined;
|
@@ -2699,7 +2699,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2699
2699
|
rewardTokenAddress?: string | undefined;
|
2700
2700
|
distributionChain?: {} | undefined;
|
2701
2701
|
opportunityIdentifier?: string | undefined;
|
2702
|
-
type: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST";
|
2702
|
+
type: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | "ERC20_FIX_APR" | "HYPERDRIVELOGPROCESSOR" | "HYPERDRIVELOGFIXPROCESSOR";
|
2703
2703
|
params: {};
|
2704
2704
|
computeChainId: number;
|
2705
2705
|
};
|
@@ -2722,7 +2722,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2722
2722
|
body: unknown;
|
2723
2723
|
params: {};
|
2724
2724
|
query: {
|
2725
|
-
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | undefined;
|
2725
|
+
type?: "INVALID" | "ERC20" | "CLAMM" | "ERC20_SNAPSHOT" | "JSON_AIRDROP" | "SILO" | "RADIANT" | "MORPHO" | "DOLOMITE" | "BADGER" | "COMPOUND" | "AJNA" | "EULER" | "UNISWAP_V4" | "ION" | "EIGENLAYER" | "ERC20TRANSFERS" | "ERC20LOGPROCESSOR" | "ERC20REBASELOGPROCESSOR" | "VEST" | "ERC20_FIX_APR" | "HYPERDRIVELOGPROCESSOR" | "HYPERDRIVELOGFIXPROCESSOR" | undefined;
|
2726
2726
|
items?: number | undefined;
|
2727
2727
|
subType?: number | undefined;
|
2728
2728
|
page?: number | undefined;
|