@merkl/api 0.16.1 → 0.16.3
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/drizzle/schema.d.ts +8 -9
- package/dist/database/api/.generated/drizzle/schema.js +2 -3
- package/dist/database/api/.generated/drizzle/schema.ts +2 -4
- package/dist/database/api/.generated/edge.js +5 -33
- package/dist/database/api/.generated/index-browser.js +2 -30
- package/dist/database/api/.generated/index.d.ts +123 -210
- package/dist/database/api/.generated/index.js +5 -33
- package/dist/database/api/.generated/package.json +1 -1
- package/dist/database/api/.generated/schema.prisma +2 -32
- package/dist/database/api/.generated/wasm.js +2 -30
- package/dist/src/constants.d.ts +259 -13
- package/dist/src/eden/index.d.ts +98 -98
- package/dist/src/index.d.ts +19 -19
- package/dist/src/libs/campaigns/campaignTypes/ERC20DynamicData.js +6 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/factoryFinder.js +1 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.d.ts +4 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.js +6 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/BalancerV3PoolProcessor.d.ts +44 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/BalancerV3PoolProcessor.js +69 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/HourglassProcessor.d.ts +36 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/HourglassProcessor.js +31 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/processorMapping.js +5 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1.js +10 -0
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +6 -6
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +5 -65
- package/dist/src/modules/v4/campaign/campaign.model.js +1 -34
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +7 -7
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +14 -15
- package/dist/src/modules/v4/campaign/campaign.service.js +6 -6
- package/dist/src/modules/v4/chain/chain.repository.d.ts +1 -1
- package/dist/src/modules/v4/dynamicData/dynamicData.controller.d.ts +2 -2
- package/dist/src/modules/v4/dynamicData/dynamicData.model.d.ts +2 -58
- package/dist/src/modules/v4/dynamicData/dynamicData.model.js +2 -3
- package/dist/src/modules/v4/dynamicData/dynamicData.service.d.ts +1 -8
- package/dist/src/modules/v4/dynamicData/dynamicData.service.js +4 -13
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +9 -9
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +3 -31
- package/dist/src/modules/v4/opportunity/opportunity.model.js +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +33 -18
- package/dist/src/modules/v4/opportunity/opportunity.repository.js +9 -1
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +15 -15
- package/dist/src/modules/v4/opportunity/opportunity.service.js +3 -2
- package/dist/src/modules/v4/opportunity/subservices/getErc20Metadata.service.d.ts +1 -1
- package/dist/src/modules/v4/opportunity/subservices/getErc20Metadata.service.js +2 -2
- package/dist/src/modules/v4/opportunity/subservices/getEulerMetadata.service.d.ts +1 -1
- package/dist/src/modules/v4/opportunity/subservices/getEulerMetadata.service.js +3 -2
- package/dist/src/modules/v4/opportunity/validate-id.pipe.js +3 -3
- package/dist/src/modules/v4/protocol/protocol.repository.d.ts +2 -2
- package/dist/src/modules/v4/reward/reward.repository.d.ts +1 -1
- package/dist/src/modules/v4/reward/reward.service.d.ts +8 -8
- package/dist/src/modules/v4/reward/reward.service.js +2 -2
- package/dist/src/modules/v4/router.d.ts +19 -19
- package/dist/src/modules/v4/user/user.controller.d.ts +2 -2
- package/dist/src/utils/decodeCalls.js +9 -1
- package/dist/src/utils/encodeCalls.js +25 -1
- package/dist/src/utils/generateCardName.d.ts +1 -1
- package/dist/src/utils/generateCardName.js +17 -0
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +1 -1
@@ -36,7 +36,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
36
36
|
depositUrl?: string | undefined;
|
37
37
|
protocols?: string[] | undefined;
|
38
38
|
mainProtocol?: string | undefined;
|
39
|
-
type:
|
39
|
+
type: string;
|
40
40
|
tokens: {
|
41
41
|
chainId: number;
|
42
42
|
address: string;
|
@@ -44,7 +44,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
44
44
|
status: "NONE" | "PAST" | "LIVE" | "SOON";
|
45
45
|
identifier: string;
|
46
46
|
chainId: number;
|
47
|
-
action: "
|
47
|
+
action: "POOL" | "HOLD" | "DROP" | "LEND" | "BORROW" | "LONG" | "SHORT" | "INVALID";
|
48
48
|
};
|
49
49
|
params: {};
|
50
50
|
query: unknown;
|
@@ -54,7 +54,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
54
54
|
response: {
|
55
55
|
200: {
|
56
56
|
name: string;
|
57
|
-
type:
|
57
|
+
type: string;
|
58
58
|
id: string;
|
59
59
|
status: import("../../../database/api/.generated").$Enums.Status;
|
60
60
|
tags: string[];
|
@@ -88,7 +88,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
88
88
|
200: {
|
89
89
|
id: string;
|
90
90
|
chainId: number;
|
91
|
-
type:
|
91
|
+
type: string;
|
92
92
|
identifier: string;
|
93
93
|
name: string;
|
94
94
|
status: "PAST" | "LIVE" | "SOON";
|
@@ -218,7 +218,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
218
218
|
icon: string;
|
219
219
|
} | undefined;
|
220
220
|
name: string;
|
221
|
-
type:
|
221
|
+
type: string;
|
222
222
|
status: import("../../../database/api/.generated").$Enums.Status;
|
223
223
|
tags: string[];
|
224
224
|
identifier: string;
|
@@ -379,7 +379,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
379
379
|
body: unknown;
|
380
380
|
params: {};
|
381
381
|
query: {
|
382
|
-
type?:
|
382
|
+
type?: string | undefined;
|
383
383
|
items?: number | undefined;
|
384
384
|
subType?: number | undefined;
|
385
385
|
page?: number | undefined;
|
@@ -516,12 +516,13 @@ export declare const v4: Elysia<"/v4", false, {
|
|
516
516
|
computedUntil: bigint;
|
517
517
|
processingStarted: bigint;
|
518
518
|
};
|
519
|
+
creatorAddress: string;
|
519
520
|
Creator: {
|
520
521
|
tags: string[];
|
521
522
|
address: string;
|
522
523
|
creatorId: string | null;
|
523
524
|
};
|
524
|
-
type:
|
525
|
+
type: string;
|
525
526
|
id: string;
|
526
527
|
subType: number | null;
|
527
528
|
startTimestamp: bigint;
|
@@ -532,7 +533,6 @@ export declare const v4: Elysia<"/v4", false, {
|
|
532
533
|
rewardTokenId: string;
|
533
534
|
amount: string;
|
534
535
|
opportunityId: string;
|
535
|
-
creatorAddress: string;
|
536
536
|
}[];
|
537
537
|
})[];
|
538
538
|
readonly 404: {
|
@@ -836,7 +836,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
836
836
|
response: {
|
837
837
|
200: {
|
838
838
|
name: string;
|
839
|
-
type:
|
839
|
+
type: string;
|
840
840
|
id: string;
|
841
841
|
status: import("../../../database/api/.generated").$Enums.Status;
|
842
842
|
tags: string[];
|
@@ -882,7 +882,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
882
882
|
};
|
883
883
|
response: {
|
884
884
|
200: {
|
885
|
-
type:
|
885
|
+
type: string;
|
886
886
|
id: string;
|
887
887
|
params: import("database/api/.generated/runtime/library").JsonValue;
|
888
888
|
subType: number | null;
|
@@ -933,7 +933,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
933
933
|
};
|
934
934
|
response: {
|
935
935
|
200: {
|
936
|
-
type:
|
936
|
+
type: string;
|
937
937
|
id: string;
|
938
938
|
params: import("database/api/.generated/runtime/library").JsonValue;
|
939
939
|
subType: number | null;
|
@@ -956,7 +956,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
956
956
|
body: unknown;
|
957
957
|
params: {};
|
958
958
|
query: {
|
959
|
-
type?:
|
959
|
+
type?: string | undefined;
|
960
960
|
items?: number | undefined;
|
961
961
|
subType?: number | undefined;
|
962
962
|
page?: number | undefined;
|
@@ -1008,12 +1008,13 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1008
1008
|
computedUntil: bigint;
|
1009
1009
|
processingStarted: bigint;
|
1010
1010
|
};
|
1011
|
+
creatorAddress: string;
|
1011
1012
|
Creator: {
|
1012
1013
|
tags: string[];
|
1013
1014
|
address: string;
|
1014
1015
|
creatorId: string | null;
|
1015
1016
|
};
|
1016
|
-
type:
|
1017
|
+
type: string;
|
1017
1018
|
id: string;
|
1018
1019
|
subType: number | null;
|
1019
1020
|
startTimestamp: bigint;
|
@@ -1024,7 +1025,6 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1024
1025
|
rewardTokenId: string;
|
1025
1026
|
amount: string;
|
1026
1027
|
opportunityId: string;
|
1027
|
-
creatorAddress: string;
|
1028
1028
|
}[];
|
1029
1029
|
};
|
1030
1030
|
};
|
@@ -1035,7 +1035,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1035
1035
|
body: unknown;
|
1036
1036
|
params: {};
|
1037
1037
|
query: {
|
1038
|
-
type?:
|
1038
|
+
type?: string | undefined;
|
1039
1039
|
items?: number | undefined;
|
1040
1040
|
subType?: number | undefined;
|
1041
1041
|
page?: number | undefined;
|
@@ -2417,7 +2417,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2417
2417
|
} | null;
|
2418
2418
|
} & {
|
2419
2419
|
name: string;
|
2420
|
-
type:
|
2420
|
+
type: string;
|
2421
2421
|
id: string;
|
2422
2422
|
status: import("../../../database/api/.generated").$Enums.Status;
|
2423
2423
|
tags: string[];
|
@@ -2530,7 +2530,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2530
2530
|
} | null;
|
2531
2531
|
} & {
|
2532
2532
|
name: string;
|
2533
|
-
type:
|
2533
|
+
type: string;
|
2534
2534
|
id: string;
|
2535
2535
|
status: import("../../../database/api/.generated").$Enums.Status;
|
2536
2536
|
tags: string[];
|
@@ -3036,7 +3036,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
3036
3036
|
rewardTokenAddress?: string | undefined;
|
3037
3037
|
distributionChain?: {} | undefined;
|
3038
3038
|
opportunityIdentifier?: string | undefined;
|
3039
|
-
type:
|
3039
|
+
type: string;
|
3040
3040
|
params: {};
|
3041
3041
|
computeChainId: number;
|
3042
3042
|
};
|
@@ -3058,7 +3058,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
3058
3058
|
body: unknown;
|
3059
3059
|
params: {};
|
3060
3060
|
query: {
|
3061
|
-
type?:
|
3061
|
+
type?: string | undefined;
|
3062
3062
|
items?: number | undefined;
|
3063
3063
|
subType?: number | undefined;
|
3064
3064
|
page?: number | undefined;
|
@@ -172,7 +172,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
172
172
|
} | null;
|
173
173
|
} & {
|
174
174
|
name: string;
|
175
|
-
type:
|
175
|
+
type: string;
|
176
176
|
id: string;
|
177
177
|
status: import("../../../../database/api/.generated").$Enums.Status;
|
178
178
|
tags: string[];
|
@@ -285,7 +285,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
285
285
|
} | null;
|
286
286
|
} & {
|
287
287
|
name: string;
|
288
|
-
type:
|
288
|
+
type: string;
|
289
289
|
id: string;
|
290
290
|
status: import("../../../../database/api/.generated").$Enums.Status;
|
291
291
|
tags: string[];
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { AaveInterface, AccountantWithRateProvidersInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CPMMGammaPoolMainInterface, CompoundInterface, CurveInterface, CurveLPTokenInterface, CurveStableSwapNGInterface, DefutureVaultInterface, ERC20Interface, ERC4626Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankERC20Interface, LayerBankInterface, LendleInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxInterface, RswEthStrategyInterface, SpectraYTInterface, SturdyInterface, SymetricAmbientStrategyInterface, SyncSwapClassicPoolInterface, TorosInterface, UniswapV2PoolInterface, VePufferInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
|
1
|
+
import { AaveInterface, AccountantWithRateProvidersInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerV3StablePoolInterface, BalancerVaultInterface, BeefyInterface, CPMMGammaPoolMainInterface, CompoundInterface, CurveInterface, CurveLPTokenInterface, CurveStableSwapNGInterface, DefutureVaultInterface, ERC20Interface, ERC4626Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, HourglassERC20TBTInterface, HourglassVedaLockDepositorV2Interface, IonicInterface, LayerBankERC20Interface, LayerBankInterface, LendleInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxInterface, RswEthStrategyInterface, SpectraYTInterface, SturdyInterface, SymetricAmbientStrategyInterface, SyncSwapClassicPoolInterface, TorosInterface, UniswapV2PoolInterface, VePufferInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
|
2
2
|
import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
|
3
3
|
export function decodeCall(calls, index, key, type) {
|
4
4
|
const returnData = calls[index];
|
@@ -117,6 +117,8 @@ export function decodeReturnValue(returnData, key, type) {
|
|
117
117
|
case tokenType.euler_lend:
|
118
118
|
case tokenType.maha:
|
119
119
|
return EulerInterface.decodeFunctionResult("asset", returnData)[0];
|
120
|
+
case tokenType.hourglass:
|
121
|
+
return HourglassVedaLockDepositorV2Interface.decodeFunctionResult("getUnderlying", returnData)[0];
|
120
122
|
default:
|
121
123
|
throw new Error(`Need tokenType for this key ${key}, or type ${type} not matched`);
|
122
124
|
}
|
@@ -271,6 +273,12 @@ export function decodeReturnValue(returnData, key, type) {
|
|
271
273
|
return SyncSwapClassicPoolInterface.decodeFunctionResult("reserve1", returnData)[0];
|
272
274
|
case "asset":
|
273
275
|
return ERC4626Interface.decodeFunctionResult("asset", returnData)[0];
|
276
|
+
case "depositor":
|
277
|
+
return HourglassERC20TBTInterface.decodeFunctionResult("depositor", returnData)[0];
|
278
|
+
case "getTokens":
|
279
|
+
return BalancerV3StablePoolInterface.decodeFunctionResult("getTokens", returnData)[0].length;
|
280
|
+
case "getTokenInfo":
|
281
|
+
return BalancerV3StablePoolInterface.decodeFunctionResult("getTokenInfo", returnData);
|
274
282
|
default:
|
275
283
|
throw new Error(`Key not recognized for ${key}`);
|
276
284
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
|
2
|
-
import { AaveInterface, AccountantWithRateProvidersInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CPMMGammaPoolMainInterface, CompoundInterface, CurveInterface, CurveLPTokenInterface, CurveStableSwapNGInterface, DefutureVaultInterface, ERC20Interface, ERC4626Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, LendleInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxDatastoreInterface, RswEthStrategyInterface, SpectraYTInterface, SturdyInterface, SymetricAmbientStrategyInterface, SyncSwapClassicPoolInterface, TorosInterface, UniswapV2PoolInterface, VePufferInterface, ZFStableLPINterface, } from "@sdk";
|
2
|
+
import { AaveInterface, AccountantWithRateProvidersInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerV3StablePoolInterface, BalancerVaultInterface, BeefyInterface, CPMMGammaPoolMainInterface, CompoundInterface, CurveInterface, CurveLPTokenInterface, CurveStableSwapNGInterface, DefutureVaultInterface, ERC20Interface, ERC4626Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, HourglassERC20TBTInterface, HourglassVedaLockDepositorV2Interface, IonicInterface, LayerBankInterface, LendleInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxDatastoreInterface, RswEthStrategyInterface, SpectraYTInterface, SturdyInterface, SymetricAmbientStrategyInterface, SyncSwapClassicPoolInterface, TorosInterface, UniswapV2PoolInterface, VePufferInterface, ZFStableLPINterface, } from "@sdk";
|
3
3
|
export function createCall(target, key, type, metaData) {
|
4
4
|
switch (key) {
|
5
5
|
case "SY":
|
@@ -148,6 +148,12 @@ export function createCall(target, key, type, metaData) {
|
|
148
148
|
case tokenType.vicuna_borrowing:
|
149
149
|
case tokenType.vicuna_lending:
|
150
150
|
return { allowFailure: true, callData: AaveInterface.encodeFunctionData("UNDERLYING_ASSET_ADDRESS"), target };
|
151
|
+
case tokenType.hourglass:
|
152
|
+
return {
|
153
|
+
allowFailure: true,
|
154
|
+
callData: HourglassVedaLockDepositorV2Interface.encodeFunctionData("getUnderlying"),
|
155
|
+
target,
|
156
|
+
};
|
151
157
|
default:
|
152
158
|
throw new Error(`Need tokenType for this key ${key}, or unknown type ${type}`);
|
153
159
|
}
|
@@ -417,6 +423,24 @@ export function createCall(target, key, type, metaData) {
|
|
417
423
|
callData: SyncSwapClassicPoolInterface.encodeFunctionData("reserve1"),
|
418
424
|
target: target,
|
419
425
|
};
|
426
|
+
case "depositor":
|
427
|
+
return {
|
428
|
+
allowFailure: true,
|
429
|
+
callData: HourglassERC20TBTInterface.encodeFunctionData("depositor"),
|
430
|
+
target: target,
|
431
|
+
};
|
432
|
+
case "getTokens":
|
433
|
+
return {
|
434
|
+
allowFailure: true,
|
435
|
+
callData: BalancerV3StablePoolInterface.encodeFunctionData("getTokens"),
|
436
|
+
target: target,
|
437
|
+
};
|
438
|
+
case "getTokenInfo":
|
439
|
+
return {
|
440
|
+
allowFailure: true,
|
441
|
+
callData: BalancerV3StablePoolInterface.encodeFunctionData("getTokenInfo"),
|
442
|
+
target: target,
|
443
|
+
};
|
420
444
|
default:
|
421
445
|
throw new Error(`Unknown key ${key}`);
|
422
446
|
}
|
@@ -1,3 +1,3 @@
|
|
1
1
|
import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
|
2
|
-
import type
|
2
|
+
import { type Campaign, type CampaignParameters } from "@sdk";
|
3
3
|
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;
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
|
2
|
+
import { ChainId } from "@sdk";
|
2
3
|
export function generateCardName(type, typeInfo, campaign, symbols = [""], displayName) {
|
3
4
|
switch (type) {
|
4
5
|
case tokenType.uniswapv2:
|
@@ -15,6 +16,7 @@ export function generateCardName(type, typeInfo, campaign, symbols = [""], displ
|
|
15
16
|
case tokenType.syncswap:
|
16
17
|
case tokenType.pancakeswap:
|
17
18
|
case tokenType.traderJoe:
|
19
|
+
case tokenType.katana:
|
18
20
|
return `Provide liquidity to ${typeInfo.protocol} ${typeInfo.symbolToken0}-${typeInfo.symbolToken1}`;
|
19
21
|
case tokenType.pendleYT:
|
20
22
|
return `Hold ${typeInfo.protocol} ${typeInfo.name}`;
|
@@ -23,12 +25,25 @@ export function generateCardName(type, typeInfo, campaign, symbols = [""], displ
|
|
23
25
|
case tokenType.balancerGauge:
|
24
26
|
return `${typeInfo.protocol} ${symbols.join("-")}`;
|
25
27
|
case tokenType.balancerPool: {
|
28
|
+
if (campaign.computeChainId === ChainId.SONIC) {
|
29
|
+
typeInfo.protocol = "Beets";
|
30
|
+
}
|
26
31
|
let cardName = `Provide liquidity to ${typeInfo.protocol} ${symbols.join("-")}`;
|
27
32
|
if (typeInfo.vault === "0xFB43069f6d0473B85686a85F4Ce4Fc1FD8F00875") {
|
28
33
|
cardName = `Provide liquidity to Jellyverse Pool ${symbols.join("-")}`;
|
29
34
|
}
|
30
35
|
return cardName;
|
31
36
|
}
|
37
|
+
case tokenType.balancerV3: {
|
38
|
+
const symbols = [];
|
39
|
+
for (let i = 0; i < typeInfo.numberTokens; i++) {
|
40
|
+
symbols.push(typeInfo[`symbolToken${i}`]);
|
41
|
+
}
|
42
|
+
if (campaign.computeChainId === ChainId.SONIC) {
|
43
|
+
typeInfo.protocol = "Beets";
|
44
|
+
}
|
45
|
+
return `Provide liquidity to ${typeInfo.protocol} ${symbols.join("-")}`;
|
46
|
+
}
|
32
47
|
case tokenType.aura:
|
33
48
|
return `Provide liquidity to ${typeInfo.protocol} ${symbols.join("-")}`;
|
34
49
|
case tokenType.gearbox:
|
@@ -144,6 +159,8 @@ export function generateCardName(type, typeInfo, campaign, symbols = [""], displ
|
|
144
159
|
return `Provide liquidity on Spectra to ${typeInfo.name}`;
|
145
160
|
case tokenType.spectra_yt:
|
146
161
|
return `Hold Spectra ${typeInfo.name}`;
|
162
|
+
case tokenType.hourglass:
|
163
|
+
return `Deposit ${typeInfo.symbolUnderlyingToken} into Hourglass`;
|
147
164
|
default:
|
148
165
|
// OVERRIDE
|
149
166
|
switch (typeInfo.tokenAddress) {
|