@merkl/api 0.20.80 → 0.20.82
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/src/backgroundJobs/index.js +1 -3
- package/dist/src/eden/index.d.ts +6 -6
- package/dist/src/index.d.ts +2 -2
- package/dist/src/jobs/update-euler-vaults.js +4 -3
- package/dist/src/modules/v4/router.js +3 -9
- package/dist/src/modules/v4/uniswap/uniswap.service.js +0 -1
- package/dist/src/routes/v3/euler.d.ts +2 -2
- package/dist/src/routes/v3/euler.js +7 -6
- package/dist/src/routes/v3/router.d.ts +2 -2
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +1 -1
@@ -1,5 +1,3 @@
|
|
1
|
-
// @ts-nocheck
|
2
|
-
import { Redis } from "@/cache";
|
3
1
|
import { redisClient } from "@/cache/redis";
|
4
2
|
import { getEulerV2Vaults, updateEulerVaultsCollatInDatabase } from "@/engine/dynamicData/utils/getEulerV2Vaults";
|
5
3
|
import { CacheService } from "@/modules/v4/cache";
|
@@ -27,7 +25,7 @@ new Elysia({
|
|
27
25
|
.get("/eulerUpdate", async () => {
|
28
26
|
log.info("🔃 updating Euler vaults...");
|
29
27
|
await updateEulerVaultsCollatInDatabase();
|
30
|
-
await
|
28
|
+
await CacheService.set(TTLPresets.DAY_1, getEulerV2Vaults); // TODO: keeping it with Redis for debug purposes, will do the transition soon
|
31
29
|
})
|
32
30
|
.get("/uniswapv4Update", async () => {
|
33
31
|
log.info("🔃 updating UniswapV4 pools...");
|
package/dist/src/eden/index.d.ts
CHANGED
@@ -4281,7 +4281,7 @@ declare const eden: {
|
|
4281
4281
|
};
|
4282
4282
|
fetch?: RequestInit | undefined;
|
4283
4283
|
}) => Promise<import("@elysiajs/eden").Treaty.TreatyResponse<{
|
4284
|
-
200: EulerVaultType[];
|
4284
|
+
200: EulerVaultType[] | undefined;
|
4285
4285
|
}>>;
|
4286
4286
|
}) & {
|
4287
4287
|
index: {
|
@@ -4290,7 +4290,7 @@ declare const eden: {
|
|
4290
4290
|
query?: Record<string, unknown> | undefined;
|
4291
4291
|
fetch?: RequestInit | undefined;
|
4292
4292
|
} | undefined) => Promise<import("@elysiajs/eden").Treaty.TreatyResponse<{
|
4293
|
-
200: EulerVaultType[];
|
4293
|
+
200: EulerVaultType[] | null;
|
4294
4294
|
}>>;
|
4295
4295
|
};
|
4296
4296
|
update: ((params: {
|
@@ -10088,7 +10088,7 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", fa
|
|
10088
10088
|
query: unknown;
|
10089
10089
|
headers: unknown;
|
10090
10090
|
response: {
|
10091
|
-
200: EulerVaultType[];
|
10091
|
+
200: EulerVaultType[] | null;
|
10092
10092
|
};
|
10093
10093
|
};
|
10094
10094
|
};
|
@@ -10104,7 +10104,7 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", fa
|
|
10104
10104
|
};
|
10105
10105
|
headers: unknown;
|
10106
10106
|
response: {
|
10107
|
-
200: EulerVaultType[];
|
10107
|
+
200: EulerVaultType[] | undefined;
|
10108
10108
|
};
|
10109
10109
|
};
|
10110
10110
|
};
|
@@ -14958,7 +14958,7 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", fa
|
|
14958
14958
|
};
|
14959
14959
|
fetch?: RequestInit | undefined;
|
14960
14960
|
}) => Promise<import("@elysiajs/eden").Treaty.TreatyResponse<{
|
14961
|
-
200: EulerVaultType[];
|
14961
|
+
200: EulerVaultType[] | undefined;
|
14962
14962
|
}>>;
|
14963
14963
|
}) & {
|
14964
14964
|
index: {
|
@@ -14967,7 +14967,7 @@ export declare const MerklApi: (domain: string | import("elysia").default<"", fa
|
|
14967
14967
|
query?: Record<string, unknown> | undefined;
|
14968
14968
|
fetch?: RequestInit | undefined;
|
14969
14969
|
} | undefined) => Promise<import("@elysiajs/eden").Treaty.TreatyResponse<{
|
14970
|
-
200: EulerVaultType[];
|
14970
|
+
200: EulerVaultType[] | null;
|
14971
14971
|
}>>;
|
14972
14972
|
};
|
14973
14973
|
update: ((params: {
|
package/dist/src/index.d.ts
CHANGED
@@ -5352,7 +5352,7 @@ declare const app: Elysia<"", false, {
|
|
5352
5352
|
query: unknown;
|
5353
5353
|
headers: unknown;
|
5354
5354
|
response: {
|
5355
|
-
200: EulerVaultType[];
|
5355
|
+
200: EulerVaultType[] | null;
|
5356
5356
|
};
|
5357
5357
|
};
|
5358
5358
|
};
|
@@ -5368,7 +5368,7 @@ declare const app: Elysia<"", false, {
|
|
5368
5368
|
};
|
5369
5369
|
headers: unknown;
|
5370
5370
|
response: {
|
5371
|
-
200: EulerVaultType[];
|
5371
|
+
200: EulerVaultType[] | undefined;
|
5372
5372
|
};
|
5373
5373
|
};
|
5374
5374
|
};
|
@@ -1,12 +1,13 @@
|
|
1
|
-
import { Redis } from "@/cache";
|
2
1
|
import { getEulerV2Vaults, updateEulerVaultsCollatInDatabase } from "@/engine/dynamicData/utils/getEulerV2Vaults";
|
2
|
+
import { CacheService } from "@/modules/v4/cache";
|
3
|
+
import { TTLPresets } from "@/modules/v4/cache/cache.model";
|
3
4
|
import { logger } from "@/utils/logger";
|
4
5
|
(async () => {
|
5
6
|
try {
|
6
|
-
// First update collat values in database
|
7
|
+
// First update collat values directly in database
|
7
8
|
await updateEulerVaultsCollatInDatabase();
|
8
9
|
// Second update Redis cache
|
9
|
-
await
|
10
|
+
await CacheService.set(TTLPresets.DAY_1, getEulerV2Vaults);
|
10
11
|
}
|
11
12
|
catch (e) {
|
12
13
|
console.error(e);
|
@@ -27,8 +27,6 @@ import bigintToString from "@/utils/bigintToString";
|
|
27
27
|
import { opentelemetry } from "@elysiajs/opentelemetry";
|
28
28
|
import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node";
|
29
29
|
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
|
30
|
-
import { PgInstrumentation } from "@opentelemetry/instrumentation-pg";
|
31
|
-
import { RedisInstrumentation } from "@opentelemetry/instrumentation-redis";
|
32
30
|
import { AlwaysOffSampler, BatchSpanProcessor } from "@opentelemetry/sdk-trace-node";
|
33
31
|
import { PrismaInstrumentation } from "@prisma/instrumentation";
|
34
32
|
import Elysia from "elysia";
|
@@ -37,7 +35,7 @@ import { ReferralController } from "./referral/referral.controller";
|
|
37
35
|
export const v4 = new Elysia({ tags: ["v4"], prefix: "/v4" })
|
38
36
|
// ─── OpenTelemetry ───────────────────────────────────────────────────
|
39
37
|
.use(opentelemetry({
|
40
|
-
sampler: process.env.TRACE === "true" ? new TailSampler(0.
|
38
|
+
sampler: process.env.TRACE === "true" ? new TailSampler(0.01) : new AlwaysOffSampler(),
|
41
39
|
spanProcessors: [
|
42
40
|
new BatchSpanProcessor(new OTLPTraceExporter({
|
43
41
|
url: process.env.OTEL_COLLECTOR,
|
@@ -46,12 +44,8 @@ export const v4 = new Elysia({ tags: ["v4"], prefix: "/v4" })
|
|
46
44
|
},
|
47
45
|
})),
|
48
46
|
],
|
49
|
-
instrumentations: [
|
50
|
-
|
51
|
-
new RedisInstrumentation(),
|
52
|
-
new PrismaInstrumentation(),
|
53
|
-
getNodeAutoInstrumentations(),
|
54
|
-
],
|
47
|
+
instrumentations: [getNodeAutoInstrumentations(), new PrismaInstrumentation()],
|
48
|
+
serviceName: "merkl-api",
|
55
49
|
}))
|
56
50
|
// ─── Error Handling ──────────────────────────────────────────────────
|
57
51
|
.use(ErrorHandler)
|
@@ -20,7 +20,7 @@ declare const _default: (app: Elysia) => Elysia<"", false, {
|
|
20
20
|
query: unknown;
|
21
21
|
headers: unknown;
|
22
22
|
response: {
|
23
|
-
200: EulerVaultType[];
|
23
|
+
200: EulerVaultType[] | null;
|
24
24
|
};
|
25
25
|
};
|
26
26
|
};
|
@@ -36,7 +36,7 @@ declare const _default: (app: Elysia) => Elysia<"", false, {
|
|
36
36
|
};
|
37
37
|
headers: unknown;
|
38
38
|
response: {
|
39
|
-
200: EulerVaultType[];
|
39
|
+
200: EulerVaultType[] | undefined;
|
40
40
|
};
|
41
41
|
};
|
42
42
|
};
|
@@ -1,19 +1,20 @@
|
|
1
|
-
import { Redis } from "@/cache";
|
2
1
|
import { getEulerV2Vaults, updateEulerVaultsCollatInDatabase } from "@/engine/dynamicData/utils/getEulerV2Vaults";
|
3
2
|
import { AuthorizationHeadersDto, BackOfficeGuard } from "@/guards/BackOffice.guard";
|
3
|
+
import { CacheService } from "@/modules/v4/cache";
|
4
|
+
import { TTLPresets } from "@/modules/v4/cache/cache.model";
|
4
5
|
import { ChainUniqueDto } from "@/modules/v4/chain/chain.model";
|
5
6
|
import { UnsupportedNetwork } from "@/utils/error";
|
6
7
|
import { eulerChainIds } from "@sdk";
|
7
8
|
import { t } from "elysia";
|
8
9
|
export default (app) => app.group("/euler", router => router
|
9
10
|
.get("/", async () => {
|
10
|
-
return await
|
11
|
+
return await CacheService.get(getEulerV2Vaults, []);
|
11
12
|
}, {
|
12
13
|
tags: ["euler"],
|
13
14
|
})
|
14
15
|
.get("/:chainId", async ({ params, query }) => {
|
15
|
-
return (await
|
16
|
-
|
16
|
+
return (await CacheService.get(getEulerV2Vaults, []))
|
17
|
+
?.filter(v => v.chainId === params.chainId)
|
17
18
|
.filter(v => (!!query.vaultAddress ? v.address === query.vaultAddress : true));
|
18
19
|
}, {
|
19
20
|
params: ChainUniqueDto,
|
@@ -28,7 +29,7 @@ export default (app) => app.group("/euler", router => router
|
|
28
29
|
})
|
29
30
|
.post("/update", async () => {
|
30
31
|
await updateEulerVaultsCollatInDatabase();
|
31
|
-
await
|
32
|
+
await CacheService.set(TTLPresets.DAY_1, getEulerV2Vaults);
|
32
33
|
}, {
|
33
34
|
headers: AuthorizationHeadersDto,
|
34
35
|
beforeHandle: BackOfficeGuard,
|
@@ -36,7 +37,7 @@ export default (app) => app.group("/euler", router => router
|
|
36
37
|
})
|
37
38
|
.post("/update/:chainId", async ({ params }) => {
|
38
39
|
await updateEulerVaultsCollatInDatabase(params.chainId);
|
39
|
-
await
|
40
|
+
await CacheService.set(TTLPresets.DAY_1, getEulerV2Vaults);
|
40
41
|
// // DEBUG ONLY
|
41
42
|
// return await getEulerV2Vaults(params.chainId);
|
42
43
|
}, {
|
@@ -235,7 +235,7 @@ export declare const v3: Elysia<"/v3", false, {
|
|
235
235
|
query: unknown;
|
236
236
|
headers: unknown;
|
237
237
|
response: {
|
238
|
-
200: EulerVaultType[];
|
238
|
+
200: EulerVaultType[] | null;
|
239
239
|
};
|
240
240
|
};
|
241
241
|
};
|
@@ -251,7 +251,7 @@ export declare const v3: Elysia<"/v3", false, {
|
|
251
251
|
};
|
252
252
|
headers: unknown;
|
253
253
|
response: {
|
254
|
-
200: EulerVaultType[];
|
254
|
+
200: EulerVaultType[] | undefined;
|
255
255
|
};
|
256
256
|
};
|
257
257
|
};
|