Skip to content

Commit a293b3f

Browse files
committed
replay backend (untested)
1 parent daa2f67 commit a293b3f

14 files changed

Lines changed: 657 additions & 6 deletions

File tree

src/dashboard/src/api/@tanstack/react-query.gen.ts

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,10 @@ import {
99
assignRoles,
1010
callback,
1111
confirmSpeech,
12+
deleteReplay,
1213
getAllSessions,
1314
getMembers,
15+
getReplay,
1416
getSession,
1517
getUser,
1618
interruptSpeech,
@@ -53,12 +55,18 @@ import type {
5355
CallbackData,
5456
ConfirmSpeechData,
5557
ConfirmSpeechResponse,
58+
DeleteReplayData,
59+
DeleteReplayError,
60+
DeleteReplayResponse,
5661
GetAllSessionsData,
5762
GetAllSessionsError,
5863
GetAllSessionsResponse,
5964
GetMembersData,
6065
GetMembersError,
6166
GetMembersResponse,
67+
GetReplayData,
68+
GetReplayError,
69+
GetReplayResponse,
6270
GetSessionData,
6371
GetSessionError,
6472
GetSessionResponse,
@@ -1049,6 +1057,58 @@ export const getMembersOptions = (options: Options<GetMembersData>) =>
10491057
queryKey: getMembersQueryKey(options),
10501058
});
10511059

1060+
/**
1061+
* Delete replay (Judges only)
1062+
*/
1063+
export const deleteReplayMutation = (
1064+
options?: Partial<Options<DeleteReplayData>>
1065+
): UseMutationOptions<
1066+
DeleteReplayResponse,
1067+
AxiosError<DeleteReplayError>,
1068+
Options<DeleteReplayData>
1069+
> => {
1070+
const mutationOptions: UseMutationOptions<
1071+
DeleteReplayResponse,
1072+
AxiosError<DeleteReplayError>,
1073+
Options<DeleteReplayData>
1074+
> = {
1075+
mutationFn: async (fnOptions) => {
1076+
const { data } = await deleteReplay({
1077+
...options,
1078+
...fnOptions,
1079+
throwOnError: true,
1080+
});
1081+
return data;
1082+
},
1083+
};
1084+
return mutationOptions;
1085+
};
1086+
1087+
export const getReplayQueryKey = (options: Options<GetReplayData>) =>
1088+
createQueryKey('getReplay', options);
1089+
1090+
/**
1091+
* Get replay by session ID
1092+
*/
1093+
export const getReplayOptions = (options: Options<GetReplayData>) =>
1094+
queryOptions<
1095+
GetReplayResponse,
1096+
AxiosError<GetReplayError>,
1097+
GetReplayResponse,
1098+
ReturnType<typeof getReplayQueryKey>
1099+
>({
1100+
queryFn: async ({ queryKey, signal }) => {
1101+
const { data } = await getReplay({
1102+
...options,
1103+
...queryKey[0],
1104+
signal,
1105+
throwOnError: true,
1106+
});
1107+
return data;
1108+
},
1109+
queryKey: getReplayQueryKey(options),
1110+
});
1111+
10521112
export const meQueryKey = (options?: Options<MeData>) => createQueryKey('me', options);
10531113

10541114
/**

src/dashboard/src/api/index.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@ export {
55
assignRoles,
66
callback,
77
confirmSpeech,
8+
deleteReplay,
89
getAllSessions,
910
getMembers,
11+
getReplay,
1012
getSession,
1113
getUser,
1214
interruptSpeech,
@@ -62,6 +64,11 @@ export type {
6264
ConfirmSpeechData,
6365
ConfirmSpeechResponse,
6466
ConfirmSpeechResponses,
67+
DeleteReplayData,
68+
DeleteReplayError,
69+
DeleteReplayErrors,
70+
DeleteReplayResponse,
71+
DeleteReplayResponses,
6572
DiscordIds,
6673
GameSettings,
6774
GameStateData,
@@ -75,6 +82,11 @@ export type {
7582
GetMembersErrors,
7683
GetMembersResponse,
7784
GetMembersResponses,
85+
GetReplayData,
86+
GetReplayError,
87+
GetReplayErrors,
88+
GetReplayResponse,
89+
GetReplayResponses,
7890
GetSessionData,
7991
GetSessionError,
8092
GetSessionErrors,
@@ -87,6 +99,7 @@ export type {
8799
GetUserResponses,
88100
GuildMemberDto,
89101
GuildMembersResponse,
102+
HistoricalPollRecord,
90103
InterruptSpeechData,
91104
InterruptSpeechError,
92105
InterruptSpeechErrors,
@@ -124,11 +137,18 @@ export type {
124137
Player,
125138
PlayerCountRequest,
126139
PlayerRoleUpdateRequest,
140+
PoliceEnrollmentRecord,
141+
PoliceTransferRecord,
127142
RemoveRoleData,
128143
RemoveRoleError,
129144
RemoveRoleErrors,
130145
RemoveRoleResponse,
131146
RemoveRoleResponses,
147+
Replay,
148+
ReplayDay,
149+
ReplayEvent,
150+
ReplayPlayer,
151+
ReplayResponse,
132152
ResetGameData,
133153
ResetGameResponse,
134154
ResetGameResponses,

src/dashboard/src/api/sdk.gen.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,18 @@ import type {
1313
CallbackResponses,
1414
ConfirmSpeechData,
1515
ConfirmSpeechResponses,
16+
DeleteReplayData,
17+
DeleteReplayErrors,
18+
DeleteReplayResponses,
1619
GetAllSessionsData,
1720
GetAllSessionsErrors,
1821
GetAllSessionsResponses,
1922
GetMembersData,
2023
GetMembersErrors,
2124
GetMembersResponses,
25+
GetReplayData,
26+
GetReplayErrors,
27+
GetReplayResponses,
2228
GetSessionData,
2329
GetSessionErrors,
2430
GetSessionResponses,
@@ -573,6 +579,28 @@ export const getMembers = <ThrowOnError extends boolean = false>(
573579
...options,
574580
});
575581

582+
/**
583+
* Delete replay (Judges only)
584+
*/
585+
export const deleteReplay = <ThrowOnError extends boolean = false>(
586+
options: Options<DeleteReplayData, ThrowOnError>
587+
) =>
588+
(options.client ?? client).delete<DeleteReplayResponses, DeleteReplayErrors, ThrowOnError>({
589+
url: '/api/replays/{sessionId}',
590+
...options,
591+
});
592+
593+
/**
594+
* Get replay by session ID
595+
*/
596+
export const getReplay = <ThrowOnError extends boolean = false>(
597+
options: Options<GetReplayData, ThrowOnError>
598+
) =>
599+
(options.client ?? client).get<GetReplayResponses, GetReplayErrors, ThrowOnError>({
600+
url: '/api/replays/{sessionId}',
601+
...options,
602+
});
603+
576604
/**
577605
* Get current user info
578606
*

0 commit comments

Comments
 (0)