From 12c43a9635e591c2ad23c15594b0dace3f76b0e6 Mon Sep 17 00:00:00 2001 From: undefined Date: Fri, 22 Jan 2021 13:19:48 +0800 Subject: [PATCH] interface: remove remote problem config --- packages/hydrooj/src/interface.ts | 25 +++------------------- packages/hydrooj/src/lib/testdataConfig.ts | 8 +++---- 2 files changed, 7 insertions(+), 26 deletions(-) diff --git a/packages/hydrooj/src/interface.ts b/packages/hydrooj/src/interface.ts index 9e7c910ab..2e641caab 100644 --- a/packages/hydrooj/src/interface.ts +++ b/packages/hydrooj/src/interface.ts @@ -104,21 +104,12 @@ export interface TestCaseConfig { memory?: number, } -export enum LocalProblemType { +export enum ProblemType { Default = 'default', SubmitAnswer = 'submit_answer', Interactive = 'interactive', } -export enum RemoteProblemType { - RemoteJudge = 'remotejudge', -} - -export enum RemoteServerType { - vj4 = 'vj4', - syzoj = 'syzoj', -} - export enum SubtaskType { min = 'min', max = 'max', @@ -133,8 +124,8 @@ export interface SubtaskConfig { cases?: TestCaseConfig[], } -export interface LocalProblemConfig { - type?: LocalProblemType, +export interface ProblemConfig { + type?: ProblemType, score?: number, time?: string, memory?: string, @@ -148,16 +139,6 @@ export interface LocalProblemConfig { subtasks?: SubtaskConfig[], } -export interface RemoteProblemConfig { - type?: RemoteProblemType, - server_type?: RemoteServerType, - url?: string, - // TODO handle username&password storage - pid?: string, -} - -export type ProblemConfig = LocalProblemConfig | RemoteProblemConfig; - export interface PlainContentNode { type: 'Plain', subType: 'html' | 'markdown', diff --git a/packages/hydrooj/src/lib/testdataConfig.ts b/packages/hydrooj/src/lib/testdataConfig.ts index f67442991..b858c9d75 100644 --- a/packages/hydrooj/src/lib/testdataConfig.ts +++ b/packages/hydrooj/src/lib/testdataConfig.ts @@ -1,6 +1,6 @@ import Zip from 'adm-zip'; import { load } from 'js-yaml'; -import { LocalProblemConfig } from '../interface'; +import type { ProblemConfig } from '../interface'; export async function readConfig(file: string | Buffer) { const data = new Zip(file); @@ -26,7 +26,7 @@ interface ParseResult { timeMin: number, } -export async function parseConfig(config: string | LocalProblemConfig) { +export async function parseConfig(config: string | ProblemConfig) { const result: ParseResult = { count: 0, memoryMin: Number.MAX_SAFE_INTEGER, @@ -34,10 +34,10 @@ export async function parseConfig(config: string | LocalProblemConfig) { timeMin: Number.MAX_SAFE_INTEGER, timeMax: 0, }; - let cfg: LocalProblemConfig = {}; + let cfg: ProblemConfig = {}; if (typeof config === 'string') { // TODO should validate here? - cfg = load(config) as LocalProblemConfig; + cfg = load(config) as ProblemConfig; } else cfg = config; if (cfg.cases) { for (const c of cfg.cases) {