feat: sync with latest api
This commit is contained in:
parent
013a4a4e90
commit
c796c83626
@ -11,11 +11,16 @@ export interface ResponseWrap<T> {
|
||||
body: T;
|
||||
}
|
||||
|
||||
export interface WithCount<T> {
|
||||
count: number;
|
||||
data: T[];
|
||||
}
|
||||
|
||||
export interface Meta {
|
||||
ID: number;
|
||||
CreatedAt: number;
|
||||
UpdatedAt: number;
|
||||
DeletedAt: number;
|
||||
CreatedAt: Date;
|
||||
UpdatedAt: Date;
|
||||
DeletedAt: Date;
|
||||
}
|
||||
|
||||
export async function send<D, T>(
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { Meta, send } from "./base.ts";
|
||||
import { Meta, send, WithCount } from "./base.ts";
|
||||
import { SubmissionInfo } from "./submission.ts";
|
||||
|
||||
export enum Verdict {
|
||||
@ -37,6 +37,11 @@ export interface StatusInfo {
|
||||
is_enabled: boolean;
|
||||
}
|
||||
|
||||
export interface SubmissionWithPoint {
|
||||
submission: SubmissionInfo;
|
||||
point: number;
|
||||
}
|
||||
|
||||
export interface QueryReq {
|
||||
pid?: number;
|
||||
uid?: number;
|
||||
@ -44,11 +49,6 @@ export interface QueryReq {
|
||||
limit: number;
|
||||
}
|
||||
|
||||
export interface QueryResp {
|
||||
submission: SubmissionInfo;
|
||||
point: number;
|
||||
}
|
||||
|
||||
export interface QueryBySubmissionReq {
|
||||
sid: number;
|
||||
}
|
||||
@ -59,21 +59,30 @@ export interface QueryByVersionReq {
|
||||
limit: number;
|
||||
}
|
||||
|
||||
export interface QueryByVersionResp {
|
||||
count: number;
|
||||
status: StatusInfo[];
|
||||
}
|
||||
|
||||
export class StatusApi {
|
||||
static async Query(data: QueryReq): Promise<QueryResp[]> {
|
||||
return send("/status/query", data);
|
||||
static async Query(
|
||||
data: QueryReq,
|
||||
token: string,
|
||||
): Promise<WithCount<SubmissionWithPoint>> {
|
||||
return send("/status/query", data, token);
|
||||
}
|
||||
|
||||
static async QueryBySubmission(
|
||||
data: QueryBySubmissionReq,
|
||||
token: string,
|
||||
): Promise<StatusInfo> {
|
||||
return send("/status/query/submission", data);
|
||||
return send("/status/query/submission", data, token);
|
||||
}
|
||||
|
||||
static async QueryByVersion(
|
||||
data: QueryByVersionReq,
|
||||
token: string,
|
||||
): Promise<StatusInfo[]> {
|
||||
): Promise<WithCount<StatusInfo>> {
|
||||
return send("/status/query/version", data, token);
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,10 @@
|
||||
import { Meta, send } from "./base.ts";
|
||||
import { UserProfile } from "./user.ts";
|
||||
import { ProblemInfo } from "./problem.ts";
|
||||
|
||||
export interface SubmissionInfo {
|
||||
meta: Meta;
|
||||
problem_id: number;
|
||||
problem: ProblemInfo;
|
||||
user: UserProfile;
|
||||
language: string;
|
||||
code: string;
|
||||
|
Reference in New Issue
Block a user