@merkl/api 0.18.11 → 0.18.13
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 +17 -0
- package/dist/database/api/.generated/drizzle/schema.js +1 -0
- package/dist/database/api/.generated/drizzle/schema.ts +1 -0
- package/dist/database/api/.generated/edge.js +4 -3
- package/dist/database/api/.generated/index-browser.js +1 -0
- package/dist/database/api/.generated/index.d.ts +58 -1
- package/dist/database/api/.generated/index.js +4 -3
- package/dist/database/api/.generated/package.json +1 -1
- package/dist/database/api/.generated/schema.prisma +1 -0
- package/dist/database/api/.generated/wasm.js +1 -0
- package/dist/src/eden/index.d.ts +96 -9
- package/dist/src/index.d.ts +20 -3
- package/dist/src/modules/v4/campaign/campaign.controller.d.ts +2 -0
- package/dist/src/modules/v4/campaign/campaign.repository.d.ts +4 -0
- package/dist/src/modules/v4/campaign/campaign.service.d.ts +5 -0
- package/dist/src/modules/v4/opportunity/opportunity.controller.d.ts +4 -0
- package/dist/src/modules/v4/opportunity/opportunity.repository.d.ts +13 -0
- package/dist/src/modules/v4/opportunity/opportunity.service.d.ts +12 -0
- package/dist/src/modules/v4/reward/reward.repository.d.ts +2 -0
- package/dist/src/modules/v4/reward/reward.service.d.ts +11 -0
- package/dist/src/modules/v4/router.d.ts +18 -0
- package/dist/src/modules/v4/token/token.controller.d.ts +8 -0
- package/dist/src/modules/v4/token/token.repository.d.ts +3 -0
- package/dist/src/modules/v4/token/token.service.d.ts +10 -0
- package/dist/src/modules/v4/user/user.controller.d.ts +4 -0
- package/dist/src/routes/v3/campaigns.d.ts +2 -3
- package/dist/src/routes/v3/campaigns.js +59 -21
- package/dist/src/routes/v3/router.d.ts +2 -3
- package/dist/tsconfig.package.tsbuildinfo +1 -1
- package/package.json +1 -5
@@ -103,6 +103,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
103
103
|
decimals: number;
|
104
104
|
verified: boolean;
|
105
105
|
isTest: boolean;
|
106
|
+
isPoint: boolean;
|
106
107
|
isNative: boolean;
|
107
108
|
} & {
|
108
109
|
price?: number | null | undefined;
|
@@ -187,6 +188,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
187
188
|
displaySymbol: string;
|
188
189
|
verified: boolean;
|
189
190
|
isTest: boolean;
|
191
|
+
isPoint: boolean;
|
190
192
|
isNative: boolean;
|
191
193
|
price: number | null;
|
192
194
|
};
|
@@ -212,6 +214,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
212
214
|
decimals: number;
|
213
215
|
verified: boolean;
|
214
216
|
isTest: boolean;
|
217
|
+
isPoint: boolean;
|
215
218
|
isNative: boolean;
|
216
219
|
} & {
|
217
220
|
price?: number | null | undefined;
|
@@ -273,6 +276,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
273
276
|
decimals: number;
|
274
277
|
verified: boolean;
|
275
278
|
isTest: boolean;
|
279
|
+
isPoint: boolean;
|
276
280
|
isNative: boolean;
|
277
281
|
} & {
|
278
282
|
price?: number | null | undefined;
|
@@ -1142,6 +1146,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1142
1146
|
decimals: number;
|
1143
1147
|
verified: boolean;
|
1144
1148
|
isTest: boolean;
|
1149
|
+
isPoint: boolean;
|
1145
1150
|
isNative: boolean;
|
1146
1151
|
} & {
|
1147
1152
|
price?: number | null | undefined;
|
@@ -1223,6 +1228,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1223
1228
|
decimals: number;
|
1224
1229
|
verified: boolean;
|
1225
1230
|
isTest: boolean;
|
1231
|
+
isPoint: boolean;
|
1226
1232
|
isNative: boolean;
|
1227
1233
|
} & {
|
1228
1234
|
price?: number | null | undefined;
|
@@ -1570,6 +1576,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1570
1576
|
decimals: number;
|
1571
1577
|
verified: boolean;
|
1572
1578
|
isTest: boolean;
|
1579
|
+
isPoint: boolean;
|
1573
1580
|
isNative: boolean;
|
1574
1581
|
price?: number | null | undefined;
|
1575
1582
|
} | undefined;
|
@@ -1602,6 +1609,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1602
1609
|
decimals: number;
|
1603
1610
|
verified: boolean;
|
1604
1611
|
isTest: boolean;
|
1612
|
+
isPoint: boolean;
|
1605
1613
|
isNative: boolean;
|
1606
1614
|
price?: number | null | undefined;
|
1607
1615
|
} | undefined;
|
@@ -1634,6 +1642,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1634
1642
|
displaySymbol: string;
|
1635
1643
|
verified: boolean;
|
1636
1644
|
isTest: boolean;
|
1645
|
+
isPoint: boolean;
|
1637
1646
|
isNative: boolean;
|
1638
1647
|
price: number | null;
|
1639
1648
|
}[];
|
@@ -1665,6 +1674,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1665
1674
|
decimals: number;
|
1666
1675
|
verified: boolean;
|
1667
1676
|
isTest: boolean;
|
1677
|
+
isPoint: boolean;
|
1668
1678
|
isNative: boolean;
|
1669
1679
|
} & {
|
1670
1680
|
price?: number | null | undefined;
|
@@ -1703,6 +1713,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1703
1713
|
decimals: number;
|
1704
1714
|
verified: boolean;
|
1705
1715
|
isTest: boolean;
|
1716
|
+
isPoint: boolean;
|
1706
1717
|
isNative: boolean;
|
1707
1718
|
} & {
|
1708
1719
|
price?: number | null | undefined;
|
@@ -1759,6 +1770,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1759
1770
|
decimals: number;
|
1760
1771
|
verified: boolean;
|
1761
1772
|
isTest: boolean;
|
1773
|
+
isPoint: boolean;
|
1762
1774
|
isNative: boolean;
|
1763
1775
|
price?: number | null | undefined;
|
1764
1776
|
} | undefined;
|
@@ -1794,6 +1806,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1794
1806
|
displaySymbol: string;
|
1795
1807
|
verified: boolean;
|
1796
1808
|
isTest: boolean;
|
1809
|
+
isPoint: boolean;
|
1797
1810
|
isNative: boolean;
|
1798
1811
|
price: number | null;
|
1799
1812
|
};
|
@@ -1869,6 +1882,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
1869
1882
|
displaySymbol: string;
|
1870
1883
|
verified: boolean;
|
1871
1884
|
isTest: boolean;
|
1885
|
+
isPoint: boolean;
|
1872
1886
|
isNative: boolean;
|
1873
1887
|
price: number | null;
|
1874
1888
|
};
|
@@ -2709,6 +2723,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2709
2723
|
displaySymbol: string;
|
2710
2724
|
verified: boolean;
|
2711
2725
|
isTest: boolean;
|
2726
|
+
isPoint: boolean;
|
2712
2727
|
isNative: boolean;
|
2713
2728
|
price: number | null;
|
2714
2729
|
};
|
@@ -2731,6 +2746,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2731
2746
|
displaySymbol: string;
|
2732
2747
|
verified: boolean;
|
2733
2748
|
isTest: boolean;
|
2749
|
+
isPoint: boolean;
|
2734
2750
|
isNative: boolean;
|
2735
2751
|
price: number | null;
|
2736
2752
|
}[];
|
@@ -2824,6 +2840,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2824
2840
|
displaySymbol: string;
|
2825
2841
|
verified: boolean;
|
2826
2842
|
isTest: boolean;
|
2843
|
+
isPoint: boolean;
|
2827
2844
|
isNative: boolean;
|
2828
2845
|
price: number | null;
|
2829
2846
|
};
|
@@ -2846,6 +2863,7 @@ export declare const v4: Elysia<"/v4", false, {
|
|
2846
2863
|
displaySymbol: string;
|
2847
2864
|
verified: boolean;
|
2848
2865
|
isTest: boolean;
|
2866
|
+
isPoint: boolean;
|
2849
2867
|
isNative: boolean;
|
2850
2868
|
price: number | null;
|
2851
2869
|
}[];
|
@@ -32,6 +32,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
32
32
|
decimals: number;
|
33
33
|
verified: boolean;
|
34
34
|
isTest: boolean;
|
35
|
+
isPoint: boolean;
|
35
36
|
isNative: boolean;
|
36
37
|
price?: number | null | undefined;
|
37
38
|
} | undefined;
|
@@ -64,6 +65,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
64
65
|
decimals: number;
|
65
66
|
verified: boolean;
|
66
67
|
isTest: boolean;
|
68
|
+
isPoint: boolean;
|
67
69
|
isNative: boolean;
|
68
70
|
price?: number | null | undefined;
|
69
71
|
} | undefined;
|
@@ -96,6 +98,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
96
98
|
displaySymbol: string;
|
97
99
|
verified: boolean;
|
98
100
|
isTest: boolean;
|
101
|
+
isPoint: boolean;
|
99
102
|
isNative: boolean;
|
100
103
|
price: number | null;
|
101
104
|
}[];
|
@@ -127,6 +130,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
127
130
|
decimals: number;
|
128
131
|
verified: boolean;
|
129
132
|
isTest: boolean;
|
133
|
+
isPoint: boolean;
|
130
134
|
isNative: boolean;
|
131
135
|
} & {
|
132
136
|
price?: number | null | undefined;
|
@@ -165,6 +169,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
165
169
|
decimals: number;
|
166
170
|
verified: boolean;
|
167
171
|
isTest: boolean;
|
172
|
+
isPoint: boolean;
|
168
173
|
isNative: boolean;
|
169
174
|
} & {
|
170
175
|
price?: number | null | undefined;
|
@@ -221,6 +226,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
221
226
|
decimals: number;
|
222
227
|
verified: boolean;
|
223
228
|
isTest: boolean;
|
229
|
+
isPoint: boolean;
|
224
230
|
isNative: boolean;
|
225
231
|
price?: number | null | undefined;
|
226
232
|
} | undefined;
|
@@ -256,6 +262,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
256
262
|
displaySymbol: string;
|
257
263
|
verified: boolean;
|
258
264
|
isTest: boolean;
|
265
|
+
isPoint: boolean;
|
259
266
|
isNative: boolean;
|
260
267
|
price: number | null;
|
261
268
|
};
|
@@ -331,6 +338,7 @@ export declare const TokenController: Elysia<"/tokens", false, {
|
|
331
338
|
displaySymbol: string;
|
332
339
|
verified: boolean;
|
333
340
|
isTest: boolean;
|
341
|
+
isPoint: boolean;
|
334
342
|
isNative: boolean;
|
335
343
|
price: number | null;
|
336
344
|
};
|
@@ -35,6 +35,7 @@ export declare abstract class TokenRepository {
|
|
35
35
|
displaySymbol: string;
|
36
36
|
verified: boolean;
|
37
37
|
isTest: boolean;
|
38
|
+
isPoint: boolean;
|
38
39
|
isNative: boolean;
|
39
40
|
price: number | null;
|
40
41
|
}[]>;
|
@@ -49,6 +50,7 @@ export declare abstract class TokenRepository {
|
|
49
50
|
displaySymbol: string;
|
50
51
|
verified: boolean;
|
51
52
|
isTest: boolean;
|
53
|
+
isPoint: boolean;
|
52
54
|
isNative: boolean;
|
53
55
|
price: number | null;
|
54
56
|
}[]>;
|
@@ -91,6 +93,7 @@ export declare abstract class TokenRepository {
|
|
91
93
|
displaySymbol: string;
|
92
94
|
verified: boolean;
|
93
95
|
isTest: boolean;
|
96
|
+
isPoint: boolean;
|
94
97
|
isNative: boolean;
|
95
98
|
price: number | null;
|
96
99
|
}>;
|
@@ -26,6 +26,7 @@ export declare abstract class TokenService {
|
|
26
26
|
decimals: number;
|
27
27
|
verified: boolean;
|
28
28
|
isTest: boolean;
|
29
|
+
isPoint: boolean;
|
29
30
|
isNative: boolean;
|
30
31
|
} & {
|
31
32
|
price?: number | null | undefined;
|
@@ -47,6 +48,7 @@ export declare abstract class TokenService {
|
|
47
48
|
decimals: number;
|
48
49
|
verified: boolean;
|
49
50
|
isTest: boolean;
|
51
|
+
isPoint: boolean;
|
50
52
|
isNative: boolean;
|
51
53
|
} & {
|
52
54
|
price?: number | null | undefined;
|
@@ -66,6 +68,7 @@ export declare abstract class TokenService {
|
|
66
68
|
decimals: number;
|
67
69
|
verified: boolean;
|
68
70
|
isTest: boolean;
|
71
|
+
isPoint: boolean;
|
69
72
|
isNative: boolean;
|
70
73
|
} & {
|
71
74
|
price?: number | null | undefined;
|
@@ -107,6 +110,7 @@ export declare abstract class TokenService {
|
|
107
110
|
decimals: number;
|
108
111
|
verified: boolean;
|
109
112
|
isTest: boolean;
|
113
|
+
isPoint: boolean;
|
110
114
|
isNative: boolean;
|
111
115
|
} & {
|
112
116
|
price?: number | null | undefined;
|
@@ -126,6 +130,7 @@ export declare abstract class TokenService {
|
|
126
130
|
decimals: number;
|
127
131
|
verified: boolean;
|
128
132
|
isTest: boolean;
|
133
|
+
isPoint: boolean;
|
129
134
|
isNative: boolean;
|
130
135
|
} & {
|
131
136
|
price?: number | null | undefined;
|
@@ -140,6 +145,7 @@ export declare abstract class TokenService {
|
|
140
145
|
decimals: number;
|
141
146
|
verified: boolean;
|
142
147
|
isTest: boolean;
|
148
|
+
isPoint: boolean;
|
143
149
|
isNative: boolean;
|
144
150
|
} & {
|
145
151
|
price?: number | null | undefined;
|
@@ -181,6 +187,7 @@ export declare abstract class TokenService {
|
|
181
187
|
displaySymbol: string;
|
182
188
|
verified: boolean;
|
183
189
|
isTest: boolean;
|
190
|
+
isPoint: boolean;
|
184
191
|
isNative: boolean;
|
185
192
|
price: number | null;
|
186
193
|
}[]>;
|
@@ -195,6 +202,7 @@ export declare abstract class TokenService {
|
|
195
202
|
displaySymbol: string;
|
196
203
|
verified: boolean;
|
197
204
|
isTest: boolean;
|
205
|
+
isPoint: boolean;
|
198
206
|
isNative: boolean;
|
199
207
|
price: number | null;
|
200
208
|
}>;
|
@@ -209,6 +217,7 @@ export declare abstract class TokenService {
|
|
209
217
|
displaySymbol: string;
|
210
218
|
verified: boolean;
|
211
219
|
isTest: boolean;
|
220
|
+
isPoint: boolean;
|
212
221
|
isNative: boolean;
|
213
222
|
price: number | null;
|
214
223
|
}>;
|
@@ -227,6 +236,7 @@ export declare abstract class TokenService {
|
|
227
236
|
decimals: number;
|
228
237
|
verified: boolean;
|
229
238
|
isTest: boolean;
|
239
|
+
isPoint: boolean;
|
230
240
|
isNative: boolean;
|
231
241
|
} & {
|
232
242
|
price?: number | null | undefined;
|
@@ -131,6 +131,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
131
131
|
displaySymbol: string;
|
132
132
|
verified: boolean;
|
133
133
|
isTest: boolean;
|
134
|
+
isPoint: boolean;
|
134
135
|
isNative: boolean;
|
135
136
|
price: number | null;
|
136
137
|
};
|
@@ -153,6 +154,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
153
154
|
displaySymbol: string;
|
154
155
|
verified: boolean;
|
155
156
|
isTest: boolean;
|
157
|
+
isPoint: boolean;
|
156
158
|
isNative: boolean;
|
157
159
|
price: number | null;
|
158
160
|
}[];
|
@@ -246,6 +248,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
246
248
|
displaySymbol: string;
|
247
249
|
verified: boolean;
|
248
250
|
isTest: boolean;
|
251
|
+
isPoint: boolean;
|
249
252
|
isNative: boolean;
|
250
253
|
price: number | null;
|
251
254
|
};
|
@@ -268,6 +271,7 @@ export declare const UserController: Elysia<"/users", false, {
|
|
268
271
|
displaySymbol: string;
|
269
272
|
verified: boolean;
|
270
273
|
isTest: boolean;
|
274
|
+
isPoint: boolean;
|
271
275
|
isNative: boolean;
|
272
276
|
price: number | null;
|
273
277
|
}[];
|
@@ -1,3 +1,5 @@
|
|
1
|
+
import { Redis } from "@/cache";
|
2
|
+
import { removeTestTokens } from "@/entities/campaign";
|
1
3
|
import { CampaignService } from "@/modules/v4/campaign";
|
2
4
|
import { OpportunityConvertorService } from "@/modules/v4/opportunity/opportunity.converter";
|
3
5
|
import { ANGLE_NETWORKS, Campaign as CampaignEnum, ChainId, isSupportedChain, registry, } from "@sdk";
|
@@ -68,30 +70,66 @@ export default (app) => app.get("/campaigns", async ({ query }) => {
|
|
68
70
|
throw new UnsupportedNetwork(chainId);
|
69
71
|
}
|
70
72
|
}
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
res[campaign.distributionChainId]
|
73
|
+
if (process.env.FF_OPPORTUNITY === "true") {
|
74
|
+
const campaigns = await CampaignService.findMany({
|
75
|
+
distributionChainIds: chainIds,
|
76
|
+
types: !types.length ? undefined : types.map(type => CampaignEnum[type]),
|
77
|
+
status: query.live ? "LIVE" : undefined,
|
78
|
+
creatorTag: query.creatorTag,
|
79
|
+
test: !hideTestTokens,
|
80
|
+
withOpportunity: true,
|
81
|
+
});
|
82
|
+
const res = {};
|
83
|
+
for (const campaign of campaigns) {
|
84
|
+
if (!res[campaign.distributionChainId]) {
|
85
|
+
res[campaign.distributionChainId] = {};
|
86
|
+
}
|
87
|
+
const opportunityIdentifier = campaign.Opportunity.identifier;
|
88
|
+
const campaignType = CampaignEnum[campaign.type];
|
89
|
+
if (!res[campaign.distributionChainId][`${campaignType}_${opportunityIdentifier}`]) {
|
90
|
+
res[campaign.distributionChainId][`${campaignType}_${opportunityIdentifier}`] = {
|
91
|
+
...OpportunityConvertorService.convertV4CampaignToV3(campaignType, campaign, opportunityIdentifier),
|
92
|
+
apr: campaign.Opportunity.apr,
|
93
|
+
tvl: campaign.Opportunity.tvl,
|
94
|
+
};
|
95
|
+
}
|
83
96
|
}
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
97
|
+
return res;
|
98
|
+
}
|
99
|
+
const campaignCachePrefix = query.live === true ? "LiveCampaigns" : "Campaigns";
|
100
|
+
const dynamicData = (await Redis.getManyWithArgs(campaignCachePrefix, chainIds)).reduce((prev, allData, index) => {
|
101
|
+
if (!!allData) {
|
102
|
+
prev[chainIds[index]] = Object.keys(allData).reduce((acc, curr) => {
|
103
|
+
if ((types.length === 0 || types.includes(Number.parseInt(curr.split("_")[0]))) &&
|
104
|
+
(!hideTestTokens || removeTestTokens(allData[curr]))) {
|
105
|
+
acc[curr] = allData[curr];
|
106
|
+
}
|
107
|
+
return acc;
|
108
|
+
}, {});
|
109
|
+
}
|
110
|
+
return prev;
|
111
|
+
}, {});
|
112
|
+
// Remove everything that doesn't contain the creator tag
|
113
|
+
if (!!query.creatorTag) {
|
114
|
+
for (const c of Object.keys(dynamicData)) {
|
115
|
+
for (const type_mainParam of Object.keys(dynamicData[c])) {
|
116
|
+
for (const campaignId of Object.keys(dynamicData[c][type_mainParam])) {
|
117
|
+
if (!dynamicData[c][type_mainParam][campaignId]?.tags?.includes(query.creatorTag)) {
|
118
|
+
delete dynamicData[c][type_mainParam][campaignId];
|
119
|
+
}
|
120
|
+
}
|
121
|
+
// Delete the type_mainParam if it's empty
|
122
|
+
if (Object.keys(dynamicData[c][type_mainParam]).length === 0) {
|
123
|
+
delete dynamicData[c][type_mainParam];
|
124
|
+
}
|
125
|
+
}
|
126
|
+
// Delete the c if it's empty
|
127
|
+
if (Object.keys(dynamicData[c]).length === 0) {
|
128
|
+
delete dynamicData[c];
|
129
|
+
}
|
92
130
|
}
|
93
131
|
}
|
94
|
-
return
|
132
|
+
return dynamicData;
|
95
133
|
}, {
|
96
134
|
query,
|
97
135
|
tags: ["Campaigns"],
|