From 8caa621d8bd999eb5e9b6701ab00b149c43d06f3 Mon Sep 17 00:00:00 2001 From: undefined Date: Wed, 23 Jun 2021 19:19:15 +0800 Subject: [PATCH] vjudge: allow alternative endpoint --- packages/vjudge/package.json | 2 +- packages/vjudge/src/interface.ts | 1 + packages/vjudge/src/providers/codeforces.ts | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/vjudge/package.json b/packages/vjudge/package.json index 417a9d6c2..641b37a53 100644 --- a/packages/vjudge/package.json +++ b/packages/vjudge/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/vjudge", - "version": "1.0.11", + "version": "1.0.12", "description": "Submit problems to remote oj", "main": "package.json", "repository": "https://github.com/hydro-dev/Hydro.git", diff --git a/packages/vjudge/src/interface.ts b/packages/vjudge/src/interface.ts index 0d31c2ec7..6383825b5 100644 --- a/packages/vjudge/src/interface.ts +++ b/packages/vjudge/src/interface.ts @@ -4,6 +4,7 @@ export interface RemoteAccount { cookie?: string[]; handle: string; password: string; + endpoint?: string; } declare module 'hydrooj/dist/interface' { interface Collections { diff --git a/packages/vjudge/src/providers/codeforces.ts b/packages/vjudge/src/providers/codeforces.ts index 65cb5540f..bef8ca77c 100644 --- a/packages/vjudge/src/providers/codeforces.ts +++ b/packages/vjudge/src/providers/codeforces.ts @@ -38,12 +38,12 @@ export default class CodeforcesProvider implements IBasicProvider { get(url: string) { logger.debug('get', url); - return superagent.get(`https://codeforces.com${url}`).set('Cookie', this.cookie); + return superagent.get(`${this.account.endpoint || 'https://codeforces.com'}${url}`).set('Cookie', this.cookie); } post(url: string) { logger.debug('post', url, this.cookie); - return superagent.post(`https://codeforces.com${url}`).type('form').set('Cookie', this.cookie); + return superagent.post(`${this.account.endpoint || 'https://codeforces.com'}${url}`).type('form').set('Cookie', this.cookie); } tta(_39ce7: string) {