@merkl/api 0.10.169 → 0.10.170
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 +6 -3
- package/dist/database/api/.generated/index-browser.js +3 -0
- package/dist/database/api/.generated/index.d.ts +113 -0
- package/dist/database/api/.generated/index.js +6 -3
- package/dist/database/api/.generated/package.json +1 -1
- package/dist/database/api/.generated/schema.prisma +17 -15
- package/dist/database/api/.generated/wasm.js +3 -0
- package/dist/src/eden/index.d.ts +108 -3
- package/dist/src/index.d.ts +36 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/factoryFinder.js +2 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.d.ts +3 -1
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType.js +8 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/PendleYTProcessor.d.ts +29 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/PendleYTProcessor.js +31 -0
- package/dist/src/libs/campaigns/campaignTypes/ERC20SubTypes/processor/processorMapping.js +3 -0
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +4 -0
- package/dist/src/modules/v4/campaign/campaign.model.d.ts +1 -0
- package/dist/src/modules/v4/campaign/campaign.model.js +1 -0
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +2 -0
- package/dist/src/modules/v4/campaign/campaign.repository.js +2 -1
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +4 -0
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +18 -1
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +2 -1
- package/dist/src/modules/v4/opportunity/opportunity.model.js +1 -0
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +24 -105
- package/dist/src/modules/v4/opportunity/opportunity.repository.js +2 -0
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +31 -5
- package/dist/src/modules/v4/price/price.controller.js +1 -1
- package/dist/src/modules/v4/price/price.service.d.ts +1 -1
- package/dist/src/modules/v4/price/price.service.js +3 -3
- package/dist/src/modules/v4/reward/reward.repository.d.ts +4 -0
- package/dist/src/modules/v4/reward/reward.service.d.ts +22 -0
- package/dist/src/modules/v4/router.d.ts +36 -1
- package/dist/src/modules/v4/token/token.controller.d.ts +6 -0
- package/dist/src/modules/v4/token/token.service.d.ts +12 -0
- package/dist/src/modules/v4/user/user.controller.d.ts +8 -0
- package/dist/src/routes/v3/blacklist.d.ts +36 -1
- package/dist/src/routes/v3/campaigns.d.ts +36 -1
- package/dist/src/routes/v3/campaignsInfo.d.ts +36 -1
- package/dist/src/routes/v3/multiChainPositions.d.ts +36 -1
- package/dist/src/routes/v3/opportunity.d.ts +36 -1
- package/dist/src/routes/v3/positions.d.ts +36 -1
- package/dist/src/routes/v3/rewards.d.ts +36 -1
- package/dist/src/routes/v3/updates.d.ts +36 -1
- package/dist/src/routes/v3/userRewards.d.ts +36 -1
- package/dist/src/utils/decodeCalls.js +4 -1
- package/dist/src/utils/encodeCalls.js +4 -1
- package/dist/src/utils/generateCardName.js +2 -0
- package/dist/src/utils/prices/services/erc4626Service.js +7 -1
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +1 -1
@@ -126,7 +126,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
126
126
|
address: string;
|
127
127
|
icon: string;
|
128
128
|
decimals: number;
|
129
|
+
displaySymbol: string;
|
129
130
|
verified: boolean;
|
131
|
+
isTest: boolean;
|
130
132
|
price: number | null;
|
131
133
|
};
|
132
134
|
amount: bigint;
|
@@ -141,7 +143,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
141
143
|
address: string;
|
142
144
|
icon: string;
|
143
145
|
decimals: number;
|
146
|
+
displaySymbol: string;
|
144
147
|
verified: boolean;
|
148
|
+
isTest: boolean;
|
145
149
|
price: number | null;
|
146
150
|
}[];
|
147
151
|
chain: {
|
@@ -225,7 +229,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
225
229
|
address: string;
|
226
230
|
icon: string;
|
227
231
|
decimals: number;
|
232
|
+
displaySymbol: string;
|
228
233
|
verified: boolean;
|
234
|
+
isTest: boolean;
|
229
235
|
price: number | null;
|
230
236
|
};
|
231
237
|
amount: bigint;
|
@@ -240,7 +246,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
240
246
|
address: string;
|
241
247
|
icon: string;
|
242
248
|
decimals: number;
|
249
|
+
displaySymbol: string;
|
243
250
|
verified: boolean;
|
251
|
+
isTest: boolean;
|
244
252
|
price: number | null;
|
245
253
|
}[];
|
246
254
|
chain: {
|
@@ -281,7 +289,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
281
289
|
address: string;
|
282
290
|
icon: string;
|
283
291
|
decimals: number;
|
292
|
+
displaySymbol: string;
|
284
293
|
verified: boolean;
|
294
|
+
isTest: boolean;
|
285
295
|
price: number | null;
|
286
296
|
};
|
287
297
|
distributionChain: {
|
@@ -334,6 +344,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
334
344
|
action?: string | undefined;
|
335
345
|
mainProtocolId?: string | undefined;
|
336
346
|
order?: undefined;
|
347
|
+
test?: boolean | undefined;
|
337
348
|
minimumTvl?: number | undefined;
|
338
349
|
};
|
339
350
|
headers: unknown;
|
@@ -379,7 +390,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
379
390
|
address: string;
|
380
391
|
icon: string;
|
381
392
|
decimals: number;
|
393
|
+
displaySymbol: string;
|
382
394
|
verified: boolean;
|
395
|
+
isTest: boolean;
|
383
396
|
price: number | null;
|
384
397
|
};
|
385
398
|
amount: bigint;
|
@@ -394,7 +407,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
394
407
|
address: string;
|
395
408
|
icon: string;
|
396
409
|
decimals: number;
|
410
|
+
displaySymbol: string;
|
397
411
|
verified: boolean;
|
412
|
+
isTest: boolean;
|
398
413
|
price: number | null;
|
399
414
|
}[];
|
400
415
|
chain: {
|
@@ -443,6 +458,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
443
458
|
action?: string | undefined;
|
444
459
|
mainProtocolId?: string | undefined;
|
445
460
|
order?: undefined;
|
461
|
+
test?: boolean | undefined;
|
446
462
|
minimumTvl?: number | undefined;
|
447
463
|
};
|
448
464
|
headers: unknown;
|
@@ -473,12 +489,13 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
473
489
|
action?: string | undefined;
|
474
490
|
mainProtocolId?: string | undefined;
|
475
491
|
order?: undefined;
|
492
|
+
test?: boolean | undefined;
|
476
493
|
minimumTvl?: number | undefined;
|
477
494
|
};
|
478
495
|
headers: unknown;
|
479
496
|
response: {
|
480
497
|
200: {
|
481
|
-
sum:
|
498
|
+
sum: number | null;
|
482
499
|
};
|
483
500
|
};
|
484
501
|
};
|
@@ -548,6 +565,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
548
565
|
campaignId?: string | undefined;
|
549
566
|
opportunityId?: string | undefined;
|
550
567
|
tokenSymbol?: string | undefined;
|
568
|
+
test?: boolean | undefined;
|
551
569
|
};
|
552
570
|
headers: unknown;
|
553
571
|
response: {
|
@@ -566,7 +584,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
566
584
|
address: string;
|
567
585
|
icon: string;
|
568
586
|
decimals: number;
|
587
|
+
displaySymbol: string;
|
569
588
|
verified: boolean;
|
589
|
+
isTest: boolean;
|
570
590
|
price: number | null;
|
571
591
|
};
|
572
592
|
distributionChain: {
|
@@ -616,6 +636,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
616
636
|
campaignId?: string | undefined;
|
617
637
|
opportunityId?: string | undefined;
|
618
638
|
tokenSymbol?: string | undefined;
|
639
|
+
test?: boolean | undefined;
|
619
640
|
};
|
620
641
|
headers: unknown;
|
621
642
|
response: {
|
@@ -769,7 +790,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
769
790
|
address: string;
|
770
791
|
icon: string;
|
771
792
|
decimals: number;
|
793
|
+
displaySymbol: string;
|
772
794
|
verified: boolean;
|
795
|
+
isTest: boolean;
|
773
796
|
price?: number | null | undefined;
|
774
797
|
} | undefined;
|
775
798
|
};
|
@@ -798,7 +821,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
798
821
|
address: string;
|
799
822
|
icon: string;
|
800
823
|
decimals: number;
|
824
|
+
displaySymbol: string;
|
801
825
|
verified: boolean;
|
826
|
+
isTest: boolean;
|
802
827
|
} & {
|
803
828
|
price?: number | null | undefined;
|
804
829
|
} & {
|
@@ -831,7 +856,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
831
856
|
address: string;
|
832
857
|
icon: string;
|
833
858
|
decimals: number;
|
859
|
+
displaySymbol: string;
|
834
860
|
verified: boolean;
|
861
|
+
isTest: boolean;
|
835
862
|
} & {
|
836
863
|
price?: number | null | undefined;
|
837
864
|
})[];
|
@@ -1494,7 +1521,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1494
1521
|
address: string;
|
1495
1522
|
icon: string;
|
1496
1523
|
decimals: number;
|
1524
|
+
displaySymbol: string;
|
1497
1525
|
verified: boolean;
|
1526
|
+
isTest: boolean;
|
1498
1527
|
price: number | null;
|
1499
1528
|
};
|
1500
1529
|
breakdowns: {
|
@@ -1513,7 +1542,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1513
1542
|
address: string;
|
1514
1543
|
icon: string;
|
1515
1544
|
decimals: number;
|
1545
|
+
displaySymbol: string;
|
1516
1546
|
verified: boolean;
|
1547
|
+
isTest: boolean;
|
1517
1548
|
price: number | null;
|
1518
1549
|
}[];
|
1519
1550
|
Protocols: {
|
@@ -1604,7 +1635,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1604
1635
|
address: string;
|
1605
1636
|
icon: string;
|
1606
1637
|
decimals: number;
|
1638
|
+
displaySymbol: string;
|
1607
1639
|
verified: boolean;
|
1640
|
+
isTest: boolean;
|
1608
1641
|
price: number | null;
|
1609
1642
|
};
|
1610
1643
|
breakdowns: {
|
@@ -1623,7 +1656,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1623
1656
|
address: string;
|
1624
1657
|
icon: string;
|
1625
1658
|
decimals: number;
|
1659
|
+
displaySymbol: string;
|
1626
1660
|
verified: boolean;
|
1661
|
+
isTest: boolean;
|
1627
1662
|
price: number | null;
|
1628
1663
|
}[];
|
1629
1664
|
Protocols: {
|
@@ -128,7 +128,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
128
128
|
address: string;
|
129
129
|
icon: string;
|
130
130
|
decimals: number;
|
131
|
+
displaySymbol: string;
|
131
132
|
verified: boolean;
|
133
|
+
isTest: boolean;
|
132
134
|
price: number | null;
|
133
135
|
};
|
134
136
|
amount: bigint;
|
@@ -143,7 +145,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
143
145
|
address: string;
|
144
146
|
icon: string;
|
145
147
|
decimals: number;
|
148
|
+
displaySymbol: string;
|
146
149
|
verified: boolean;
|
150
|
+
isTest: boolean;
|
147
151
|
price: number | null;
|
148
152
|
}[];
|
149
153
|
chain: {
|
@@ -227,7 +231,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
227
231
|
address: string;
|
228
232
|
icon: string;
|
229
233
|
decimals: number;
|
234
|
+
displaySymbol: string;
|
230
235
|
verified: boolean;
|
236
|
+
isTest: boolean;
|
231
237
|
price: number | null;
|
232
238
|
};
|
233
239
|
amount: bigint;
|
@@ -242,7 +248,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
242
248
|
address: string;
|
243
249
|
icon: string;
|
244
250
|
decimals: number;
|
251
|
+
displaySymbol: string;
|
245
252
|
verified: boolean;
|
253
|
+
isTest: boolean;
|
246
254
|
price: number | null;
|
247
255
|
}[];
|
248
256
|
chain: {
|
@@ -283,7 +291,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
283
291
|
address: string;
|
284
292
|
icon: string;
|
285
293
|
decimals: number;
|
294
|
+
displaySymbol: string;
|
286
295
|
verified: boolean;
|
296
|
+
isTest: boolean;
|
287
297
|
price: number | null;
|
288
298
|
};
|
289
299
|
distributionChain: {
|
@@ -336,6 +346,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
336
346
|
action?: string | undefined;
|
337
347
|
mainProtocolId?: string | undefined;
|
338
348
|
order?: undefined;
|
349
|
+
test?: boolean | undefined;
|
339
350
|
minimumTvl?: number | undefined;
|
340
351
|
};
|
341
352
|
headers: unknown;
|
@@ -381,7 +392,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
381
392
|
address: string;
|
382
393
|
icon: string;
|
383
394
|
decimals: number;
|
395
|
+
displaySymbol: string;
|
384
396
|
verified: boolean;
|
397
|
+
isTest: boolean;
|
385
398
|
price: number | null;
|
386
399
|
};
|
387
400
|
amount: bigint;
|
@@ -396,7 +409,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
396
409
|
address: string;
|
397
410
|
icon: string;
|
398
411
|
decimals: number;
|
412
|
+
displaySymbol: string;
|
399
413
|
verified: boolean;
|
414
|
+
isTest: boolean;
|
400
415
|
price: number | null;
|
401
416
|
}[];
|
402
417
|
chain: {
|
@@ -445,6 +460,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
445
460
|
action?: string | undefined;
|
446
461
|
mainProtocolId?: string | undefined;
|
447
462
|
order?: undefined;
|
463
|
+
test?: boolean | undefined;
|
448
464
|
minimumTvl?: number | undefined;
|
449
465
|
};
|
450
466
|
headers: unknown;
|
@@ -475,12 +491,13 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
475
491
|
action?: string | undefined;
|
476
492
|
mainProtocolId?: string | undefined;
|
477
493
|
order?: undefined;
|
494
|
+
test?: boolean | undefined;
|
478
495
|
minimumTvl?: number | undefined;
|
479
496
|
};
|
480
497
|
headers: unknown;
|
481
498
|
response: {
|
482
499
|
200: {
|
483
|
-
sum:
|
500
|
+
sum: number | null;
|
484
501
|
};
|
485
502
|
};
|
486
503
|
};
|
@@ -550,6 +567,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
550
567
|
campaignId?: string | undefined;
|
551
568
|
opportunityId?: string | undefined;
|
552
569
|
tokenSymbol?: string | undefined;
|
570
|
+
test?: boolean | undefined;
|
553
571
|
};
|
554
572
|
headers: unknown;
|
555
573
|
response: {
|
@@ -568,7 +586,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
568
586
|
address: string;
|
569
587
|
icon: string;
|
570
588
|
decimals: number;
|
589
|
+
displaySymbol: string;
|
571
590
|
verified: boolean;
|
591
|
+
isTest: boolean;
|
572
592
|
price: number | null;
|
573
593
|
};
|
574
594
|
distributionChain: {
|
@@ -618,6 +638,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
618
638
|
campaignId?: string | undefined;
|
619
639
|
opportunityId?: string | undefined;
|
620
640
|
tokenSymbol?: string | undefined;
|
641
|
+
test?: boolean | undefined;
|
621
642
|
};
|
622
643
|
headers: unknown;
|
623
644
|
response: {
|
@@ -771,7 +792,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
771
792
|
address: string;
|
772
793
|
icon: string;
|
773
794
|
decimals: number;
|
795
|
+
displaySymbol: string;
|
774
796
|
verified: boolean;
|
797
|
+
isTest: boolean;
|
775
798
|
price?: number | null | undefined;
|
776
799
|
} | undefined;
|
777
800
|
};
|
@@ -800,7 +823,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
800
823
|
address: string;
|
801
824
|
icon: string;
|
802
825
|
decimals: number;
|
826
|
+
displaySymbol: string;
|
803
827
|
verified: boolean;
|
828
|
+
isTest: boolean;
|
804
829
|
} & {
|
805
830
|
price?: number | null | undefined;
|
806
831
|
} & {
|
@@ -833,7 +858,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
833
858
|
address: string;
|
834
859
|
icon: string;
|
835
860
|
decimals: number;
|
861
|
+
displaySymbol: string;
|
836
862
|
verified: boolean;
|
863
|
+
isTest: boolean;
|
837
864
|
} & {
|
838
865
|
price?: number | null | undefined;
|
839
866
|
})[];
|
@@ -1496,7 +1523,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1496
1523
|
address: string;
|
1497
1524
|
icon: string;
|
1498
1525
|
decimals: number;
|
1526
|
+
displaySymbol: string;
|
1499
1527
|
verified: boolean;
|
1528
|
+
isTest: boolean;
|
1500
1529
|
price: number | null;
|
1501
1530
|
};
|
1502
1531
|
breakdowns: {
|
@@ -1515,7 +1544,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1515
1544
|
address: string;
|
1516
1545
|
icon: string;
|
1517
1546
|
decimals: number;
|
1547
|
+
displaySymbol: string;
|
1518
1548
|
verified: boolean;
|
1549
|
+
isTest: boolean;
|
1519
1550
|
price: number | null;
|
1520
1551
|
}[];
|
1521
1552
|
Protocols: {
|
@@ -1606,7 +1637,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1606
1637
|
address: string;
|
1607
1638
|
icon: string;
|
1608
1639
|
decimals: number;
|
1640
|
+
displaySymbol: string;
|
1609
1641
|
verified: boolean;
|
1642
|
+
isTest: boolean;
|
1610
1643
|
price: number | null;
|
1611
1644
|
};
|
1612
1645
|
breakdowns: {
|
@@ -1625,7 +1658,9 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
1625
1658
|
address: string;
|
1626
1659
|
icon: string;
|
1627
1660
|
decimals: number;
|
1661
|
+
displaySymbol: string;
|
1628
1662
|
verified: boolean;
|
1663
|
+
isTest: boolean;
|
1629
1664
|
price: number | null;
|
1630
1665
|
}[];
|
1631
1666
|
Protocols: {
|
@@ -1,8 +1,10 @@
|
|
1
|
-
import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, RadiantInterface, RfxInterface, SturdyInterface, SymetricAmbientStrategyInterface, TorosInterface, UniswapV2PoolInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
|
1
|
+
import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxInterface, SturdyInterface, SymetricAmbientStrategyInterface, TorosInterface, UniswapV2PoolInterface, 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];
|
5
5
|
switch (key) {
|
6
|
+
case "SY":
|
7
|
+
return PendleYTInterface.decodeFunctionResult("SY", returnData)[0];
|
6
8
|
case "symbol":
|
7
9
|
return ERC20Interface.decodeFunctionResult("symbol", returnData)[0];
|
8
10
|
case "decimals":
|
@@ -44,6 +46,7 @@ export function decodeCall(calls, index, key, type) {
|
|
44
46
|
case "underlying":
|
45
47
|
switch (type) {
|
46
48
|
case tokenType.pendle:
|
49
|
+
case tokenType.pendleYT:
|
47
50
|
return PendleInterface.decodeFunctionResult("yieldToken", returnData)[0];
|
48
51
|
case tokenType.gearbox:
|
49
52
|
return GearboxVaultInterface.decodeFunctionResult("underlyingToken", returnData)[0];
|
@@ -1,8 +1,10 @@
|
|
1
1
|
import { tokenType } from "../libs/campaigns/campaignTypes/ERC20SubTypes/helpers/tokenType";
|
2
|
-
import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, RadiantInterface, RfxDatastoreInterface, SturdyInterface, SymetricAmbientStrategyInterface, TorosInterface, UniswapV2PoolInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
|
2
|
+
import { AaveInterface, AuraInterface, AuraOperatorInterface, BalancerGaugeInterface, BalancerPoolInterface, BalancerVaultInterface, BeefyInterface, CompoundInterface, CurveInterface, ERC20Interface, EnzymeInterface, EulerInterface, FactoryInterface, FluidInterface, FraxlendInterface, GearboxVaultInterface, IonicInterface, LayerBankInterface, MaverickBPLensInterface, MetamorphoInterface, MoonwellInterface, OneInchStakingInterface, PendleInterface, PendleYTInterface, RadiantInterface, RfxDatastoreInterface, SturdyInterface, SymetricAmbientStrategyInterface, TorosInterface, UniswapV2PoolInterface, ZFStableLPINterface, ZFStableSwapThreePoolInterface, } from "@sdk";
|
3
3
|
import { fluidInterface } from "src/libs/campaigns/campaignTypes/ERC20SubTypes/subtypesRound1";
|
4
4
|
export function createCall(target, key, type, metaData) {
|
5
5
|
switch (key) {
|
6
|
+
case "SY":
|
7
|
+
return { allowFailure: true, callData: PendleYTInterface.encodeFunctionData("SY"), target };
|
6
8
|
case "collateralContract":
|
7
9
|
return { allowFailure: true, callData: SturdyInterface.encodeFunctionData("collateralContract"), target };
|
8
10
|
case "pricePerShare":
|
@@ -63,6 +65,7 @@ export function createCall(target, key, type, metaData) {
|
|
63
65
|
case "underlying":
|
64
66
|
switch (type) {
|
65
67
|
case tokenType.pendle:
|
68
|
+
case tokenType.pendleYT:
|
66
69
|
return { allowFailure: true, callData: PendleInterface.encodeFunctionData("yieldToken"), target };
|
67
70
|
case tokenType.metamorpho:
|
68
71
|
return { allowFailure: true, callData: MetamorphoInterface.encodeFunctionData("asset"), target };
|
@@ -14,6 +14,8 @@ export function generateCardName(type, typeInfo, campaign, symbols = [""]) {
|
|
14
14
|
case tokenType.ra:
|
15
15
|
case tokenType.syncswap:
|
16
16
|
return `${typeInfo.protocol} ${typeInfo.symbolToken0}/${typeInfo.symbolToken1}`;
|
17
|
+
case tokenType.pendleYT:
|
18
|
+
return `Hold YT of ${typeInfo.symbolUnderlyingToken} on ${typeInfo.protocol}`;
|
17
19
|
case tokenType.pendle:
|
18
20
|
return `Provide ${typeInfo.symbolUnderlyingToken} on ${typeInfo.protocol}`;
|
19
21
|
case tokenType.balancerGauge:
|
@@ -25,6 +25,12 @@ export default class ERC4626Service {
|
|
25
25
|
return resolvedPrices.flat().filter(price => price !== undefined);
|
26
26
|
}
|
27
27
|
async priceCalculation(rate, vaultToken) {
|
28
|
-
|
28
|
+
try {
|
29
|
+
const vaultTokenPrice = await PriceService.fetchPriceBySymbol(vaultToken);
|
30
|
+
return rate * vaultTokenPrice;
|
31
|
+
}
|
32
|
+
catch {
|
33
|
+
return Number.NaN;
|
34
|
+
}
|
29
35
|
}
|
30
36
|
}
|