@merkl/api 0.10.176 → 0.10.180
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 -6
- package/dist/database/api/.generated/index-browser.js +4 -4
- package/dist/database/api/.generated/index.d.ts +2 -2
- package/dist/database/api/.generated/index.js +6 -6
- package/dist/database/api/.generated/libquery_engine-debian-openssl-1.1.x.so.node +0 -0
- package/dist/database/api/.generated/libquery_engine-linux-arm64-openssl-1.1.x.so.node +0 -0
- package/dist/database/api/.generated/libquery_engine-linux-musl-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/api/.generated/package.json +1 -1
- package/dist/database/api/.generated/runtime/edge-esm.js +15 -15
- package/dist/database/api/.generated/runtime/edge.js +16 -16
- package/dist/database/api/.generated/runtime/library.d.ts +23 -34
- package/dist/database/api/.generated/runtime/library.js +56 -56
- package/dist/database/api/.generated/runtime/react-native.js +23 -23
- package/dist/database/api/.generated/runtime/wasm.js +15 -15
- package/dist/database/api/.generated/wasm.js +4 -4
- package/dist/database/engine/.generated/edge.js +6 -6
- package/dist/database/engine/.generated/index-browser.js +4 -4
- package/dist/database/engine/.generated/index.d.ts +2 -2
- package/dist/database/engine/.generated/index.js +6 -6
- package/dist/database/engine/.generated/libquery_engine-debian-openssl-1.1.x.so.node +0 -0
- package/dist/database/engine/.generated/libquery_engine-linux-arm64-openssl-1.1.x.so.node +0 -0
- package/dist/database/engine/.generated/libquery_engine-linux-musl-arm64-openssl-3.0.x.so.node +0 -0
- package/dist/database/engine/.generated/package.json +1 -1
- package/dist/database/engine/.generated/runtime/edge-esm.js +15 -15
- package/dist/database/engine/.generated/runtime/edge.js +16 -16
- package/dist/database/engine/.generated/runtime/library.d.ts +23 -34
- package/dist/database/engine/.generated/runtime/library.js +56 -56
- package/dist/database/engine/.generated/runtime/react-native.js +23 -23
- package/dist/database/engine/.generated/runtime/wasm.js +15 -15
- package/dist/database/engine/.generated/wasm.js +4 -4
- package/dist/src/eden/index.d.ts +336 -51
- package/dist/src/index.d.ts +136 -17
- package/dist/src/index.js +1 -1
- package/dist/src/libs/campaigns/campaignTypes/CLAMMDynamicData.js +2 -2
- package/dist/src/modules/v4/bucket/bucket.service.d.ts +5 -0
- package/dist/src/modules/v4/bucket/bucket.service.js +11 -0
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +11 -13
- package/dist/src/modules/v4/campaign/campaign.controller.js +3 -3
- package/dist/src/modules/v4/campaign/campaign.repository.js +1 -1
- package/dist/src/modules/v4/chain/chain.controller.d.ts +24 -0
- package/dist/src/modules/v4/chain/chain.controller.js +8 -2
- package/dist/src/modules/v4/chain/chain.model.d.ts +4 -0
- package/dist/src/modules/v4/chain/chain.model.js +4 -0
- package/dist/src/modules/v4/chain/chain.repository.d.ts +6 -1
- package/dist/src/modules/v4/chain/chain.repository.js +3 -0
- package/dist/src/modules/v4/chain/chain.service.d.ts +6 -1
- package/dist/src/modules/v4/chain/chain.service.js +7 -0
- package/dist/src/modules/v4/enso/enso.service.d.ts +1 -1
- package/dist/src/modules/v4/interaction/interaction.controller.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/AjnaPositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/BadgerPositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/ClammPositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/DolomitePositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/DolomitePositionFetcher.js +2 -2
- package/dist/src/modules/v4/{position → liquidity}/implementations/ERC20PositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/{position → liquidity}/implementations/EulerPositionFetcher.d.ts +1 -1
- package/dist/src/modules/v4/liquidity/index.d.ts +2 -0
- package/dist/src/modules/v4/liquidity/index.js +2 -0
- package/dist/src/modules/v4/{position/position.controller.d.ts → liquidity/liquidity.controller.d.ts} +3 -3
- package/dist/src/modules/v4/{position/position.controller.js → liquidity/liquidity.controller.js} +4 -4
- package/dist/src/modules/v4/{position/position.repository.d.ts → liquidity/liquidity.repository.d.ts} +1 -1
- package/dist/src/modules/v4/{position/position.repository.js → liquidity/liquidity.repository.js} +1 -1
- package/dist/src/modules/v4/liquidity/liquidity.service.d.ts +5 -0
- package/dist/src/modules/v4/{position/position.service.js → liquidity/liquidity.service.js} +2 -2
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +34 -0
- package/dist/src/modules/v4/opportunity/opportunity.controller.js +11 -2
- package/dist/src/modules/v4/opportunity/opportunity.model.d.ts +8 -0
- package/dist/src/modules/v4/opportunity/opportunity.model.js +5 -0
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +29 -1
- package/dist/src/modules/v4/opportunity/opportunity.repository.js +6 -0
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +15 -1
- package/dist/src/modules/v4/opportunity/opportunity.service.js +7 -6
- package/dist/src/modules/v4/protocol/protocol.controller.d.ts +30 -1
- package/dist/src/modules/v4/protocol/protocol.controller.js +9 -2
- package/dist/src/modules/v4/protocol/protocol.model.d.ts +10 -1
- package/dist/src/modules/v4/protocol/protocol.model.js +9 -0
- package/dist/src/modules/v4/protocol/protocol.repository.d.ts +9 -1
- package/dist/src/modules/v4/protocol/protocol.repository.js +4 -1
- package/dist/src/modules/v4/protocol/protocol.service.d.ts +11 -3
- package/dist/src/modules/v4/protocol/protocol.service.js +38 -32
- package/dist/src/modules/v4/reward/subservices/converter.js +2 -2
- package/dist/src/modules/v4/router.d.ts +136 -17
- package/dist/src/modules/v4/router.js +2 -2
- package/dist/src/modules/v4/token/token.controller.d.ts +34 -0
- package/dist/src/modules/v4/token/token.controller.js +11 -3
- package/dist/src/modules/v4/token/token.model.d.ts +9 -0
- package/dist/src/modules/v4/token/token.model.js +7 -0
- package/dist/src/modules/v4/token/token.repository.d.ts +14 -1
- package/dist/src/modules/v4/token/token.repository.js +3 -0
- package/dist/src/modules/v4/token/token.service.d.ts +14 -1
- package/dist/src/modules/v4/token/token.service.js +7 -0
- package/dist/src/routes/v3/blacklist.d.ts +136 -17
- package/dist/src/routes/v3/campaigns.d.ts +136 -17
- package/dist/src/routes/v3/campaignsInfo.d.ts +136 -17
- package/dist/src/routes/v3/multiChainPositions.d.ts +136 -17
- package/dist/src/routes/v3/opportunity.d.ts +137 -18
- package/dist/src/routes/v3/opportunity.js +1 -1
- package/dist/src/routes/v3/positions.d.ts +136 -17
- package/dist/src/routes/v3/rewards.d.ts +136 -17
- package/dist/src/routes/v3/updates.d.ts +136 -17
- package/dist/src/routes/v3/userRewards.d.ts +136 -17
- package/dist/src/utils/logger.d.ts +12 -6
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +24 -24
- package/dist/src/modules/v4/position/index.d.ts +0 -2
- package/dist/src/modules/v4/position/index.js +0 -2
- package/dist/src/modules/v4/position/position.service.d.ts +0 -5
- /package/dist/src/modules/v4/{position → liquidity}/implementations/AjnaPositionFetcher.js +0 -0
- /package/dist/src/modules/v4/{position → liquidity}/implementations/BadgerPositionFetcher.js +0 -0
- /package/dist/src/modules/v4/{position → liquidity}/implementations/ClammPositionFetcher.js +0 -0
- /package/dist/src/modules/v4/{position → liquidity}/implementations/ERC20PositionFetcher.js +0 -0
- /package/dist/src/modules/v4/{position → liquidity}/implementations/EulerPositionFetcher.js +0 -0
- /package/dist/src/modules/v4/{position/position.model.d.ts → liquidity/liquidity.model.d.ts} +0 -0
- /package/dist/src/modules/v4/{position/position.model.js → liquidity/liquidity.model.js} +0 -0
|
@@ -477,6 +477,40 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
477
477
|
};
|
|
478
478
|
};
|
|
479
479
|
};
|
|
480
|
+
} & {
|
|
481
|
+
opportunities: {
|
|
482
|
+
":id": {
|
|
483
|
+
patch: {
|
|
484
|
+
body: {
|
|
485
|
+
name?: string | undefined;
|
|
486
|
+
tags?: string[] | undefined;
|
|
487
|
+
};
|
|
488
|
+
params: {
|
|
489
|
+
id: string;
|
|
490
|
+
};
|
|
491
|
+
query: unknown;
|
|
492
|
+
headers: {
|
|
493
|
+
authorization: string;
|
|
494
|
+
};
|
|
495
|
+
response: {
|
|
496
|
+
200: {
|
|
497
|
+
name: string;
|
|
498
|
+
type: import("../../../database/api/.generated").$Enums.CampaignType;
|
|
499
|
+
id: string;
|
|
500
|
+
status: import("../../../database/api/.generated").$Enums.Status;
|
|
501
|
+
tags: string[];
|
|
502
|
+
identifier: string;
|
|
503
|
+
chainId: number;
|
|
504
|
+
action: import("../../../database/api/.generated").$Enums.OpportunityAction;
|
|
505
|
+
mainProtocolId: string | null;
|
|
506
|
+
tvl: number;
|
|
507
|
+
apr: number;
|
|
508
|
+
dailyRewards: number;
|
|
509
|
+
};
|
|
510
|
+
};
|
|
511
|
+
};
|
|
512
|
+
};
|
|
513
|
+
};
|
|
480
514
|
};
|
|
481
515
|
} & {
|
|
482
516
|
v4: {
|
|
@@ -660,19 +694,17 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
660
694
|
} & {
|
|
661
695
|
"campaigns-to-process": {
|
|
662
696
|
engine: {
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
200: string;
|
|
675
|
-
};
|
|
697
|
+
post: {
|
|
698
|
+
body: unknown;
|
|
699
|
+
params: {};
|
|
700
|
+
query: {
|
|
701
|
+
chainId: number;
|
|
702
|
+
};
|
|
703
|
+
headers: {
|
|
704
|
+
authorization: string;
|
|
705
|
+
};
|
|
706
|
+
response: {
|
|
707
|
+
200: string;
|
|
676
708
|
};
|
|
677
709
|
};
|
|
678
710
|
};
|
|
@@ -725,7 +757,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
725
757
|
id: string;
|
|
726
758
|
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
727
759
|
icon: string;
|
|
728
|
-
} & {})[]
|
|
760
|
+
} & {})[];
|
|
729
761
|
};
|
|
730
762
|
};
|
|
731
763
|
};
|
|
@@ -744,6 +776,35 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
744
776
|
};
|
|
745
777
|
};
|
|
746
778
|
};
|
|
779
|
+
} & {
|
|
780
|
+
protocols: {
|
|
781
|
+
":id": {
|
|
782
|
+
patch: {
|
|
783
|
+
body: {
|
|
784
|
+
url?: string | undefined;
|
|
785
|
+
description?: string | undefined;
|
|
786
|
+
icon?: string | undefined;
|
|
787
|
+
};
|
|
788
|
+
params: {
|
|
789
|
+
id: string;
|
|
790
|
+
};
|
|
791
|
+
query: unknown;
|
|
792
|
+
headers: {
|
|
793
|
+
authorization: string;
|
|
794
|
+
};
|
|
795
|
+
response: {
|
|
796
|
+
200: {
|
|
797
|
+
name: string;
|
|
798
|
+
url: string;
|
|
799
|
+
description: string;
|
|
800
|
+
id: string;
|
|
801
|
+
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
802
|
+
icon: string;
|
|
803
|
+
};
|
|
804
|
+
};
|
|
805
|
+
};
|
|
806
|
+
};
|
|
807
|
+
};
|
|
747
808
|
};
|
|
748
809
|
} & {
|
|
749
810
|
v4: {
|
|
@@ -860,6 +921,40 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
860
921
|
};
|
|
861
922
|
};
|
|
862
923
|
};
|
|
924
|
+
} & {
|
|
925
|
+
tokens: {
|
|
926
|
+
":id": {
|
|
927
|
+
patch: {
|
|
928
|
+
body: {
|
|
929
|
+
icon?: string | undefined;
|
|
930
|
+
displaySymbol?: string | undefined;
|
|
931
|
+
isTest?: boolean | undefined;
|
|
932
|
+
};
|
|
933
|
+
params: {
|
|
934
|
+
id: string;
|
|
935
|
+
};
|
|
936
|
+
query: unknown;
|
|
937
|
+
headers: {
|
|
938
|
+
authorization: string;
|
|
939
|
+
};
|
|
940
|
+
response: {
|
|
941
|
+
200: {
|
|
942
|
+
symbol: string;
|
|
943
|
+
name: string | null;
|
|
944
|
+
id: string;
|
|
945
|
+
chainId: number;
|
|
946
|
+
address: string;
|
|
947
|
+
icon: string;
|
|
948
|
+
decimals: number;
|
|
949
|
+
displaySymbol: string;
|
|
950
|
+
verified: boolean;
|
|
951
|
+
isTest: boolean;
|
|
952
|
+
price: number | null;
|
|
953
|
+
};
|
|
954
|
+
};
|
|
955
|
+
};
|
|
956
|
+
};
|
|
957
|
+
};
|
|
863
958
|
};
|
|
864
959
|
} & {
|
|
865
960
|
v4: {
|
|
@@ -1139,6 +1234,30 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
1139
1234
|
};
|
|
1140
1235
|
};
|
|
1141
1236
|
};
|
|
1237
|
+
} & {
|
|
1238
|
+
chains: {
|
|
1239
|
+
":chainId": {
|
|
1240
|
+
patch: {
|
|
1241
|
+
body: {
|
|
1242
|
+
icon?: string | undefined;
|
|
1243
|
+
};
|
|
1244
|
+
params: {
|
|
1245
|
+
chainId: number;
|
|
1246
|
+
};
|
|
1247
|
+
query: unknown;
|
|
1248
|
+
headers: {
|
|
1249
|
+
authorization: string;
|
|
1250
|
+
};
|
|
1251
|
+
response: {
|
|
1252
|
+
200: {
|
|
1253
|
+
name: string;
|
|
1254
|
+
id: number;
|
|
1255
|
+
icon: string;
|
|
1256
|
+
};
|
|
1257
|
+
};
|
|
1258
|
+
};
|
|
1259
|
+
};
|
|
1260
|
+
};
|
|
1142
1261
|
};
|
|
1143
1262
|
} & {
|
|
1144
1263
|
v4: {
|
|
@@ -1839,7 +1958,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
1839
1958
|
id: string;
|
|
1840
1959
|
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
1841
1960
|
icon: string;
|
|
1842
|
-
} & {})[]
|
|
1961
|
+
} & {})[];
|
|
1843
1962
|
};
|
|
1844
1963
|
};
|
|
1845
1964
|
};
|
|
@@ -2230,7 +2349,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
2230
2349
|
};
|
|
2231
2350
|
} & {
|
|
2232
2351
|
v4: {
|
|
2233
|
-
|
|
2352
|
+
liquidity: {
|
|
2234
2353
|
index: {
|
|
2235
2354
|
get: {
|
|
2236
2355
|
body: unknown;
|
|
@@ -2241,7 +2360,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
|
2241
2360
|
};
|
|
2242
2361
|
headers: unknown;
|
|
2243
2362
|
response: {
|
|
2244
|
-
200:
|
|
2363
|
+
200: import("./liquidity").PositionT[];
|
|
2245
2364
|
};
|
|
2246
2365
|
};
|
|
2247
2366
|
};
|
|
@@ -17,8 +17,8 @@ import { PrismaInstrumentation } from "@prisma/instrumentation";
|
|
|
17
17
|
import Elysia from "elysia";
|
|
18
18
|
import { DynamicDataController } from "./dynamicData";
|
|
19
19
|
import { InteractionController } from "./interaction/interaction.controller";
|
|
20
|
+
import { LiquidityController } from "./liquidity/liquidity.controller";
|
|
20
21
|
import { MerklRootController } from "./merklRoot";
|
|
21
|
-
import { PositionController } from "./position/position.controller";
|
|
22
22
|
import { StatusController } from "./status";
|
|
23
23
|
import { UserController } from "./user";
|
|
24
24
|
// ─── V4 Router ───────────────────────────────────────────────────────────────
|
|
@@ -59,4 +59,4 @@ export const v4 = new Elysia({ tags: ["v4"], prefix: "/v4" })
|
|
|
59
59
|
.use(AccountingController)
|
|
60
60
|
.use(DynamicDataController)
|
|
61
61
|
.use(StatusController)
|
|
62
|
-
.use(
|
|
62
|
+
.use(LiquidityController);
|
|
@@ -125,6 +125,40 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
|
125
125
|
};
|
|
126
126
|
};
|
|
127
127
|
};
|
|
128
|
+
} & {
|
|
129
|
+
tokens: {
|
|
130
|
+
":id": {
|
|
131
|
+
patch: {
|
|
132
|
+
body: {
|
|
133
|
+
icon?: string | undefined;
|
|
134
|
+
displaySymbol?: string | undefined;
|
|
135
|
+
isTest?: boolean | undefined;
|
|
136
|
+
};
|
|
137
|
+
params: {
|
|
138
|
+
id: string;
|
|
139
|
+
};
|
|
140
|
+
query: unknown;
|
|
141
|
+
headers: {
|
|
142
|
+
authorization: string;
|
|
143
|
+
};
|
|
144
|
+
response: {
|
|
145
|
+
200: {
|
|
146
|
+
symbol: string;
|
|
147
|
+
name: string | null;
|
|
148
|
+
id: string;
|
|
149
|
+
chainId: number;
|
|
150
|
+
address: string;
|
|
151
|
+
icon: string;
|
|
152
|
+
decimals: number;
|
|
153
|
+
displaySymbol: string;
|
|
154
|
+
verified: boolean;
|
|
155
|
+
isTest: boolean;
|
|
156
|
+
price: number | null;
|
|
157
|
+
};
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
};
|
|
128
162
|
}, {
|
|
129
163
|
derive: {};
|
|
130
164
|
resolve: {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { NotFoundError } from "../../../errors/NotFound.error";
|
|
2
|
+
import { AuthorizationHeadersDto, BackOfficeGuard } from "../../../guards/BackOffice.guard";
|
|
2
3
|
import Elysia from "elysia";
|
|
3
|
-
import { FindUniqueTokenDto, GetTokenBalanceDto, GetTokenQueryDto } from "./token.model";
|
|
4
|
+
import { FindUniqueTokenDto, GetTokenBalanceDto, GetTokenQueryDto, TokenIdDto, UpdateTokenDto } from "./token.model";
|
|
4
5
|
import { TokenService } from "./token.service";
|
|
5
6
|
// ─── Tokens Controller ───────────────────────────────────────────────────────
|
|
6
7
|
export const TokenController = new Elysia({ prefix: "/tokens", detail: { tags: ["Tokens"] } })
|
|
@@ -25,5 +26,12 @@ export const TokenController = new Elysia({ prefix: "/tokens", detail: { tags: [
|
|
|
25
26
|
})
|
|
26
27
|
// ─── Get Many Tokens ─────────────────────────────────────────────────
|
|
27
28
|
.get("/", async ({ query }) => await TokenService.findMany(query), { query: GetTokenQueryDto })
|
|
28
|
-
// ─── Count Tokens
|
|
29
|
-
.get("/count", async ({ query }) => await TokenService.countMany(query), { query: GetTokenQueryDto })
|
|
29
|
+
// ─── Count Tokens ────────────────────────────────────────────────────
|
|
30
|
+
.get("/count", async ({ query }) => await TokenService.countMany(query), { query: GetTokenQueryDto })
|
|
31
|
+
// ─── Update IsTest Status ────────────────────────────────────────────
|
|
32
|
+
.patch("/:id", async ({ params, body }) => await TokenService.update(params.id, body), {
|
|
33
|
+
params: TokenIdDto,
|
|
34
|
+
body: UpdateTokenDto,
|
|
35
|
+
headers: AuthorizationHeadersDto,
|
|
36
|
+
beforeHandle: BackOfficeGuard,
|
|
37
|
+
});
|
|
@@ -32,5 +32,14 @@ export declare const GetTokenBalanceDto: import("@sinclair/typebox").TObject<{
|
|
|
32
32
|
tokenAddress: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
33
33
|
additionalTokenAddresses: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
34
34
|
}>;
|
|
35
|
+
export declare const TokenIdDto: import("@sinclair/typebox").TObject<{
|
|
36
|
+
id: import("@sinclair/typebox").TString;
|
|
37
|
+
}>;
|
|
38
|
+
export declare const UpdateTokenDto: import("@sinclair/typebox").TObject<{
|
|
39
|
+
isTest: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
40
|
+
icon: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
41
|
+
displaySymbol: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
42
|
+
}>;
|
|
35
43
|
export type TokenModel = typeof TokenDto.static;
|
|
36
44
|
export type GetTokenQueryModel = typeof GetTokenQueryDto.static;
|
|
45
|
+
export type UpdateTokenModel = typeof UpdateTokenDto.static;
|
|
@@ -22,3 +22,10 @@ export const GetTokenBalanceDto = t.Object({
|
|
|
22
22
|
tokenAddress: t.Optional(t.String({ description: "If provided, the default verified token balances won't be included" })),
|
|
23
23
|
additionalTokenAddresses: t.Optional(t.Array(t.String())),
|
|
24
24
|
});
|
|
25
|
+
export const TokenIdDto = t.Object({ id: t.String() });
|
|
26
|
+
export const UpdateTokenDto = t.Object({
|
|
27
|
+
isTest: t.Optional(t.Boolean()),
|
|
28
|
+
icon: t.Optional(t.String({ format: "uri" })),
|
|
29
|
+
// iconFile: t.Optional(t.File()),
|
|
30
|
+
displaySymbol: t.Optional(t.String()),
|
|
31
|
+
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ChainId } from "@sdk";
|
|
2
|
-
import type { GetTokenQueryModel, Token, TokenModel } from "./token.model";
|
|
2
|
+
import type { GetTokenQueryModel, Token, TokenModel, UpdateTokenModel } from "./token.model";
|
|
3
3
|
export declare abstract class TokenRepository {
|
|
4
4
|
#private;
|
|
5
5
|
/**
|
|
@@ -68,4 +68,17 @@ export declare abstract class TokenRepository {
|
|
|
68
68
|
* @param token
|
|
69
69
|
*/
|
|
70
70
|
static create(token: Token["model"]): Promise<Token["model"] | undefined>;
|
|
71
|
+
static update(id: string, data: UpdateTokenModel): Promise<{
|
|
72
|
+
symbol: string;
|
|
73
|
+
name: string | null;
|
|
74
|
+
id: string;
|
|
75
|
+
chainId: number;
|
|
76
|
+
address: string;
|
|
77
|
+
icon: string;
|
|
78
|
+
decimals: number;
|
|
79
|
+
displaySymbol: string;
|
|
80
|
+
verified: boolean;
|
|
81
|
+
isTest: boolean;
|
|
82
|
+
price: number | null;
|
|
83
|
+
}>;
|
|
71
84
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GetTokenQueryModel, Token, TokenModel, TokenUnique } from "./";
|
|
1
|
+
import type { GetTokenQueryModel, Token, TokenModel, TokenUnique, UpdateTokenModel } from "./";
|
|
2
2
|
import type { Pricer } from "../../../utils/pricer";
|
|
3
3
|
import { Prisma } from "../../../../database/api/.generated";
|
|
4
4
|
import { type ChainId } from "@sdk";
|
|
@@ -170,4 +170,17 @@ export declare abstract class TokenService {
|
|
|
170
170
|
* @param address
|
|
171
171
|
*/
|
|
172
172
|
static getManyOrCreate(tokens: TokenModel[]): Promise<(Token["model"] | undefined)[]>;
|
|
173
|
+
static update(id: string, data: UpdateTokenModel): Promise<{
|
|
174
|
+
symbol: string;
|
|
175
|
+
name: string | null;
|
|
176
|
+
id: string;
|
|
177
|
+
chainId: number;
|
|
178
|
+
address: string;
|
|
179
|
+
icon: string;
|
|
180
|
+
decimals: number;
|
|
181
|
+
displaySymbol: string;
|
|
182
|
+
verified: boolean;
|
|
183
|
+
isTest: boolean;
|
|
184
|
+
price: number | null;
|
|
185
|
+
}>;
|
|
173
186
|
}
|
|
@@ -274,4 +274,11 @@ export class TokenService {
|
|
|
274
274
|
}
|
|
275
275
|
}));
|
|
276
276
|
}
|
|
277
|
+
static async update(id, data) {
|
|
278
|
+
// let iconUri = data.icon;
|
|
279
|
+
// if (data.iconFile) {
|
|
280
|
+
// iconUri = await BucketService.upload("merkl-assets", `/tokens/${id}`, data.iconFile.stream(), true);
|
|
281
|
+
// }
|
|
282
|
+
return await TokenRepository.update(id, data);
|
|
283
|
+
}
|
|
277
284
|
}
|
|
@@ -501,6 +501,40 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
501
501
|
};
|
|
502
502
|
};
|
|
503
503
|
};
|
|
504
|
+
} & {
|
|
505
|
+
opportunities: {
|
|
506
|
+
":id": {
|
|
507
|
+
patch: {
|
|
508
|
+
body: {
|
|
509
|
+
name?: string | undefined;
|
|
510
|
+
tags?: string[] | undefined;
|
|
511
|
+
};
|
|
512
|
+
params: {
|
|
513
|
+
id: string;
|
|
514
|
+
};
|
|
515
|
+
query: unknown;
|
|
516
|
+
headers: {
|
|
517
|
+
authorization: string;
|
|
518
|
+
};
|
|
519
|
+
response: {
|
|
520
|
+
200: {
|
|
521
|
+
name: string;
|
|
522
|
+
type: import("../../../database/api/.generated").$Enums.CampaignType;
|
|
523
|
+
id: string;
|
|
524
|
+
status: import("../../../database/api/.generated").$Enums.Status;
|
|
525
|
+
tags: string[];
|
|
526
|
+
identifier: string;
|
|
527
|
+
chainId: number;
|
|
528
|
+
action: import("../../../database/api/.generated").$Enums.OpportunityAction;
|
|
529
|
+
mainProtocolId: string | null;
|
|
530
|
+
tvl: number;
|
|
531
|
+
apr: number;
|
|
532
|
+
dailyRewards: number;
|
|
533
|
+
};
|
|
534
|
+
};
|
|
535
|
+
};
|
|
536
|
+
};
|
|
537
|
+
};
|
|
504
538
|
};
|
|
505
539
|
} & {
|
|
506
540
|
v4: {
|
|
@@ -684,19 +718,17 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
684
718
|
} & {
|
|
685
719
|
"campaigns-to-process": {
|
|
686
720
|
engine: {
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
200: string;
|
|
699
|
-
};
|
|
721
|
+
post: {
|
|
722
|
+
body: unknown;
|
|
723
|
+
params: {};
|
|
724
|
+
query: {
|
|
725
|
+
chainId: number;
|
|
726
|
+
};
|
|
727
|
+
headers: {
|
|
728
|
+
authorization: string;
|
|
729
|
+
};
|
|
730
|
+
response: {
|
|
731
|
+
200: string;
|
|
700
732
|
};
|
|
701
733
|
};
|
|
702
734
|
};
|
|
@@ -749,7 +781,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
749
781
|
id: string;
|
|
750
782
|
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
751
783
|
icon: string;
|
|
752
|
-
} & {})[]
|
|
784
|
+
} & {})[];
|
|
753
785
|
};
|
|
754
786
|
};
|
|
755
787
|
};
|
|
@@ -768,6 +800,35 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
768
800
|
};
|
|
769
801
|
};
|
|
770
802
|
};
|
|
803
|
+
} & {
|
|
804
|
+
protocols: {
|
|
805
|
+
":id": {
|
|
806
|
+
patch: {
|
|
807
|
+
body: {
|
|
808
|
+
url?: string | undefined;
|
|
809
|
+
description?: string | undefined;
|
|
810
|
+
icon?: string | undefined;
|
|
811
|
+
};
|
|
812
|
+
params: {
|
|
813
|
+
id: string;
|
|
814
|
+
};
|
|
815
|
+
query: unknown;
|
|
816
|
+
headers: {
|
|
817
|
+
authorization: string;
|
|
818
|
+
};
|
|
819
|
+
response: {
|
|
820
|
+
200: {
|
|
821
|
+
name: string;
|
|
822
|
+
url: string;
|
|
823
|
+
description: string;
|
|
824
|
+
id: string;
|
|
825
|
+
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
826
|
+
icon: string;
|
|
827
|
+
};
|
|
828
|
+
};
|
|
829
|
+
};
|
|
830
|
+
};
|
|
831
|
+
};
|
|
771
832
|
};
|
|
772
833
|
} & {
|
|
773
834
|
v4: {
|
|
@@ -884,6 +945,40 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
884
945
|
};
|
|
885
946
|
};
|
|
886
947
|
};
|
|
948
|
+
} & {
|
|
949
|
+
tokens: {
|
|
950
|
+
":id": {
|
|
951
|
+
patch: {
|
|
952
|
+
body: {
|
|
953
|
+
icon?: string | undefined;
|
|
954
|
+
displaySymbol?: string | undefined;
|
|
955
|
+
isTest?: boolean | undefined;
|
|
956
|
+
};
|
|
957
|
+
params: {
|
|
958
|
+
id: string;
|
|
959
|
+
};
|
|
960
|
+
query: unknown;
|
|
961
|
+
headers: {
|
|
962
|
+
authorization: string;
|
|
963
|
+
};
|
|
964
|
+
response: {
|
|
965
|
+
200: {
|
|
966
|
+
symbol: string;
|
|
967
|
+
name: string | null;
|
|
968
|
+
id: string;
|
|
969
|
+
chainId: number;
|
|
970
|
+
address: string;
|
|
971
|
+
icon: string;
|
|
972
|
+
decimals: number;
|
|
973
|
+
displaySymbol: string;
|
|
974
|
+
verified: boolean;
|
|
975
|
+
isTest: boolean;
|
|
976
|
+
price: number | null;
|
|
977
|
+
};
|
|
978
|
+
};
|
|
979
|
+
};
|
|
980
|
+
};
|
|
981
|
+
};
|
|
887
982
|
};
|
|
888
983
|
} & {
|
|
889
984
|
v4: {
|
|
@@ -1163,6 +1258,30 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
1163
1258
|
};
|
|
1164
1259
|
};
|
|
1165
1260
|
};
|
|
1261
|
+
} & {
|
|
1262
|
+
chains: {
|
|
1263
|
+
":chainId": {
|
|
1264
|
+
patch: {
|
|
1265
|
+
body: {
|
|
1266
|
+
icon?: string | undefined;
|
|
1267
|
+
};
|
|
1268
|
+
params: {
|
|
1269
|
+
chainId: number;
|
|
1270
|
+
};
|
|
1271
|
+
query: unknown;
|
|
1272
|
+
headers: {
|
|
1273
|
+
authorization: string;
|
|
1274
|
+
};
|
|
1275
|
+
response: {
|
|
1276
|
+
200: {
|
|
1277
|
+
name: string;
|
|
1278
|
+
id: number;
|
|
1279
|
+
icon: string;
|
|
1280
|
+
};
|
|
1281
|
+
};
|
|
1282
|
+
};
|
|
1283
|
+
};
|
|
1284
|
+
};
|
|
1166
1285
|
};
|
|
1167
1286
|
} & {
|
|
1168
1287
|
v4: {
|
|
@@ -1863,7 +1982,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
1863
1982
|
id: string;
|
|
1864
1983
|
tags: import("../../../database/api/.generated").$Enums.ProtocolTag[];
|
|
1865
1984
|
icon: string;
|
|
1866
|
-
} & {})[]
|
|
1985
|
+
} & {})[];
|
|
1867
1986
|
};
|
|
1868
1987
|
};
|
|
1869
1988
|
};
|
|
@@ -2254,7 +2373,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
2254
2373
|
};
|
|
2255
2374
|
} & {
|
|
2256
2375
|
v4: {
|
|
2257
|
-
|
|
2376
|
+
liquidity: {
|
|
2258
2377
|
index: {
|
|
2259
2378
|
get: {
|
|
2260
2379
|
body: unknown;
|
|
@@ -2265,7 +2384,7 @@ declare const _default: (app: App) => import("elysia").default<"", false, {
|
|
|
2265
2384
|
};
|
|
2266
2385
|
headers: unknown;
|
|
2267
2386
|
response: {
|
|
2268
|
-
200:
|
|
2387
|
+
200: import("../../modules/v4/liquidity").PositionT[];
|
|
2269
2388
|
};
|
|
2270
2389
|
};
|
|
2271
2390
|
};
|