diff --git a/packages/vjudge/package.json b/packages/vjudge/package.json index cff76d5d4..7c77023c9 100644 --- a/packages/vjudge/package.json +++ b/packages/vjudge/package.json @@ -17,7 +17,7 @@ "devDependencies": { "@types/jsdom": "^16.2.13", "@types/lodash": "^4.14.173", - "@types/superagent": "4.1.12", + "@types/superagent": "^4.1.13", "@types/superagent-proxy": "^2.0.1" } } diff --git a/packages/vjudge/src/providers/codeforces.ts b/packages/vjudge/src/providers/codeforces.ts index 8f20ac430..9b3a0999d 100644 --- a/packages/vjudge/src/providers/codeforces.ts +++ b/packages/vjudge/src/providers/codeforces.ts @@ -1,7 +1,7 @@ /* eslint-disable no-await-in-loop */ import { PassThrough } from 'stream'; import { JSDOM } from 'jsdom'; -import * as superagent from 'superagent'; +import superagent from 'superagent'; import proxy from 'superagent-proxy'; import { STATUS } from '@hydrooj/utils/lib/status'; import { sleep } from '@hydrooj/utils/lib/utils'; @@ -10,7 +10,7 @@ import { Logger } from 'hydrooj/src/logger'; import * as setting from 'hydrooj/src/model/setting'; import { IBasicProvider, RemoteAccount } from '../interface'; -proxy(superagent as any); +proxy(superagent); const logger = new Logger('codeforces'); const VERDICT = { diff --git a/packages/vjudge/src/providers/luogu.ts b/packages/vjudge/src/providers/luogu.ts index e85c11128..35a527fd3 100644 --- a/packages/vjudge/src/providers/luogu.ts +++ b/packages/vjudge/src/providers/luogu.ts @@ -1,7 +1,7 @@ /* eslint-disable no-await-in-loop */ import { JSDOM } from 'jsdom'; import { flattenDeep } from 'lodash'; -import * as superagent from 'superagent'; +import superagent from 'superagent'; import proxy from 'superagent-proxy'; import { STATUS } from '@hydrooj/utils/lib/status'; import { sleep } from '@hydrooj/utils/lib/utils'; @@ -9,7 +9,7 @@ import { Logger } from 'hydrooj/src/logger'; import * as setting from 'hydrooj/src/model/setting'; import { IBasicProvider, RemoteAccount } from '../interface'; -proxy(superagent as any); +proxy(superagent); const logger = new Logger('remote/luogu'); const STATUS_MAP = [ diff --git a/packages/vjudge/src/providers/spoj.ts b/packages/vjudge/src/providers/spoj.ts index 60106ee00..f033666ce 100644 --- a/packages/vjudge/src/providers/spoj.ts +++ b/packages/vjudge/src/providers/spoj.ts @@ -1,7 +1,7 @@ /* eslint-disable no-await-in-loop */ import { PassThrough } from 'stream'; import { JSDOM } from 'jsdom'; -import * as superagent from 'superagent'; +import superagent from 'superagent'; import proxy from 'superagent-proxy'; import { STATUS } from '@hydrooj/utils/lib/status'; import { parseMemoryMB, sleep } from '@hydrooj/utils/lib/utils'; @@ -9,7 +9,7 @@ import { Logger } from 'hydrooj/src/logger'; import * as setting from 'hydrooj/src/model/setting'; import { IBasicProvider, RemoteAccount } from '../interface'; -proxy(superagent as any); +proxy(superagent); const logger = new Logger('spoj'); const VERDICT = { diff --git a/packages/vjudge/src/proxy.ts b/packages/vjudge/src/proxy.ts new file mode 100644 index 000000000..0dcc8332b --- /dev/null +++ b/packages/vjudge/src/proxy.ts @@ -0,0 +1,6 @@ +declare module 'superagent' { + interface Request { + proxy(url: string): this; + } +} +export default {};