Add detailed statistics API v2 documentation and implement frontend components for displaying statistics

This commit is contained in:
Primakov Alexandr Alexandrovich
2025-11-04 21:37:03 +03:00
parent b91ee56bf0
commit fd55d5a214
16 changed files with 2233 additions and 29 deletions

View File

@@ -8,6 +8,7 @@ import type {
ChallengeUser,
ChallengeSubmission,
SystemStats,
SystemStatsV2,
UserStats,
CreateTaskRequest,
UpdateTaskRequest,
@@ -125,6 +126,14 @@ export const api = createApi({
transformResponse: (response: { body: SystemStats }) => response.body,
providesTags: ['Stats'],
}),
getSystemStatsV2: builder.query<SystemStatsV2, string | undefined>({
query: (chainId) => ({
url: '/challenge/stats/v2',
params: chainId ? { chainId } : undefined,
}),
transformResponse: (response: { body: SystemStatsV2 }) => response.body,
providesTags: ['Stats'],
}),
getUserStats: builder.query<UserStats, string>({
query: (userId) => `/challenge/user/${userId}/stats`,
transformResponse: (response: { body: UserStats }) => response.body,
@@ -161,6 +170,7 @@ export const {
useDeleteChainMutation,
useGetUsersQuery,
useGetSystemStatsQuery,
useGetSystemStatsV2Query,
useGetUserStatsQuery,
useGetUserSubmissionsQuery,
useGetAllSubmissionsQuery,