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