workspace: upgrade deps

This commit is contained in:
undefined committed 2022-10-04 21:31:58 +08:00
1 parent 1c3dc161b6
commit 8cffe19609
17 files changed
+110 -98

No files matched your search

+9 -2
View File
@@ -1,7 +1,7 @@
import assert from 'assert';
import crypto from 'crypto';
import {
Context, db, Handler, post, Types, yaml,
Context, db, ForbiddenError, Handler, post, Types, yaml,
} from 'hydrooj';
function decrypt(encrypted: string) {
@@ -16,6 +16,9 @@ declare module 'hydrooj' {
interface Collections {
dataReport: any;
}
interface EventMap {
'center/report': (thisArg: DataReportHandler, installId: string, old: any, payload: any) => void;
}
}
const coll = db.collection('dataReport');
@@ -32,7 +35,11 @@ class DataReportHandler extends Handler {
} catch (e) {
payload = yaml.load(_payload);
}
assert(payload.url);
try {
assert(typeof payload.url === 'string');
} catch (e) {
throw new ForbiddenError();
}
const old = await coll.findOne({ _id: installId });
await coll.updateOne({ _id: installId }, {
$set: {
+2 -3
View File
@@ -1,7 +1,6 @@
import { Client } from '@elastic/elasticsearch';
import { omit } from 'lodash';
import {
Context, DomainModel, iterateAllProblem, iterateAllProblemInDomain,
_, Context, DomainModel, iterateAllProblem, iterateAllProblemInDomain,
ProblemDoc, ProblemModel, Schema, SystemModel,
} from 'hydrooj';
@@ -19,7 +18,7 @@ const processDocument = (doc: Partial<ProblemDoc>) => {
if (doc.pid) {
doc.pid = doc.pid.replace(/([a-zA-Z]{2,})(\d+)/, '$1$2 $1 $2');
}
return omit(doc, indexOmit);
return _.omit(doc, indexOmit);
};
global.Hydro.lib.problemSearch = async (domainId, q, opts) => {
+2 -3
View File
@@ -1,9 +1,8 @@
/* eslint-disable no-await-in-loop */
import decodeHTML from 'decode-html';
import { filter } from 'lodash';
import xml2js from 'xml2js';
import {
AdmZip, buildContent, ContentNode, Context, FileTooLargeError, fs,
_, AdmZip, buildContent, ContentNode, Context, FileTooLargeError, fs,
Handler, PERM, ProblemConfigFile, ProblemModel, SolutionModel, ValidationError,
} from 'hydrooj';
@@ -59,7 +58,7 @@ class FpsProblemImportHandler extends Handler {
memory: p.memory_limit[0]._ + p.memory_limit[0].$.unit,
};
const title = decodeHTML(p.title.join(' '));
const tags = filter(p.source, (i: string) => i.trim());
const tags = _.filter(p.source, (i: string) => i.trim());
const pid = await ProblemModel.add(domainId, null, title, buildContent(content, 'html'), this.user._id, tags);
await ProblemModel.addTestdata(domainId, pid, 'config.yaml', Buffer.from(`time: ${config.time}\nmemory: ${config.memory}`));
if (p.test_output) {
+1 -1
View File
@@ -6,7 +6,7 @@
"author": "undefined <i@undefined.moe>",
"license": "AGPL-3.0-or-later",
"dependencies": {
"maxmind": "^4.3.6"
"maxmind": "^4.3.7"
},
"preferUnplugged": true,
"scripts": {
+5 -4
View File
@@ -11,18 +11,19 @@
"fs-extra": "^10.1.0",
"js-yaml": "^4.1.0",
"lodash": "^4.17.21",
"mongodb": "^3.7.3",
"p-queue": "^7.3.0",
"schemastery": "^3.5.3",
"schemastery": "^3.5.4",
"shell-quote": "^1.7.3",
"superagent": "^8.0.0",
"ws": "^8.8.1"
"superagent": "^8.0.2",
"ws": "^8.9.0"
},
"preferUnplugged": true,
"license": "AGPL-3.0-or-later",
"devDependencies": {
"@types/fs-extra": "^9.0.13",
"@types/js-yaml": "^4.0.5",
"@types/lodash": "^4.14.184",
"@types/lodash": "^4.14.186",
"@types/shell-quote": "^1.7.1",
"@types/ws": "^8.5.3"
}
+1 -1
View File
@@ -1,7 +1,7 @@
/* eslint-disable no-await-in-loop */
import path from 'path';
import { ObjectID } from 'bson';
import fs from 'fs-extra';
import { ObjectID } from 'mongodb';
import PQueue from 'p-queue';
import superagent from 'superagent';
import WebSocket from 'ws';
+12 -12
View File
@@ -12,21 +12,21 @@
},
"preferUnplugged": true,
"dependencies": {
"@aws-sdk/client-s3": "^3.178.0",
"@aws-sdk/middleware-endpoint": "^3.178.0",
"@aws-sdk/s3-presigned-post": "^3.178.0",
"@aws-sdk/s3-request-presigner": "^3.178.0",
"@aws-sdk/client-s3": "^3.183.0",
"@aws-sdk/middleware-endpoint": "^3.183.0",
"@aws-sdk/s3-presigned-post": "^3.183.0",
"@aws-sdk/s3-request-presigner": "^3.183.0",
"@graphql-tools/schema": "^8.5.1",
"@hydrooj/utils": "workspace:*",
"adm-zip": "0.5.5",
"cac": "^6.7.14",
"cordis": "^2.2.0",
"cordis": "^2.3.8",
"detect-browser": "^5.3.0",
"emoji-regex": "^10.1.0",
"emoji-regex": "^10.2.1",
"emojis-list": "2.1.0",
"fs-extra": "^10.1.0",
"graphql": "^16.5.0",
"graphql-scalars": "1.17.0",
"graphql": "^16.6.0",
"graphql-scalars": "1.18.0",
"isbinaryfile": "^5.0.0",
"js-yaml": "^4.1.0",
"koa": "^2.13.4",
@@ -41,7 +41,7 @@
"moment-timezone": "^0.5.37",
"mongodb": "^3.7.3",
"nanoid": "^4.0.0",
"nodemailer": "^6.7.8",
"nodemailer": "^6.8.0",
"notp": "^2.0.3",
"p-queue": "^7.3.0",
"path-to-regexp": "^6.2.1",
@@ -50,7 +50,7 @@
"schemastery": "^3.5.4",
"semver": "^7.3.7",
"serialize-javascript": "^6.0.0",
"superagent": "^8.0.0",
"superagent": "^8.0.2",
"thirty-two": "^1.0.2",
"ws": "^8.9.0"
},
@@ -62,11 +62,11 @@
"@types/koa-compress": "^4.0.3",
"@types/koa-router": "^7.4.4",
"@types/koa-static-cache": "^5.1.1",
"@types/lodash": "^4.14.184",
"@types/lodash": "^4.14.186",
"@types/mime-types": "^2.1.1",
"@types/minio": "^7.0.13",
"@types/mongodb": "^3.6.20",
"@types/nodemailer": "^6.4.5",
"@types/nodemailer": "^6.4.6",
"@types/notp": "^2.0.2",
"@types/saslprep": "^1.0.1",
"@types/semver": "^7.3.12",
+26 -24
View File
@@ -594,28 +594,30 @@ export interface OauthMap {
uid: number;
}
export interface Collections {
'blacklist': BlacklistDoc;
'domain': DomainDoc;
'domain.user': any;
'record': RecordDoc;
'document': any;
'document.status': StatusDocBase;
'user': Udoc;
'user.preference': UserPreferenceDoc;
'vuser': VUdoc;
'user.group': GDoc;
'check': System;
'message': MessageDoc;
'token': TokenDoc;
'status': any;
'oauth': OauthMap;
'system': System;
'task': Task;
'storage': FileNode;
'oplog': OplogDoc;
'event': EventDoc;
'opcount': OpCountDoc;
declare module './service/db' {
interface Collections {
'blacklist': BlacklistDoc;
'domain': DomainDoc;
'domain.user': any;
'record': RecordDoc;
'document': any;
'document.status': StatusDocBase;
'user': Udoc;
'user.preference': UserPreferenceDoc;
'vuser': VUdoc;
'user.group': GDoc;
'check': System;
'message': MessageDoc;
'token': TokenDoc;
'status': any;
'oauth': OauthMap;
'system': System;
'task': Task;
'storage': FileNode;
'oplog': OplogDoc;
'event': EventDoc;
'opcount': OpCountDoc;
}
}
export interface Model {
@@ -646,7 +648,7 @@ export interface Model {
export interface HydroService {
/** @deprecated */
bus: Context,
db: typeof import('./service/db'),
db: typeof import('./service/db').default,
monitor: typeof import('./service/monitor'),
server: typeof import('./service/server'),
storage: typeof import('./service/storage').default,
@@ -726,7 +728,7 @@ declare global {
addons: string[],
}
}
var bus: any; // eslint-disable-line
var bus: typeof import('./service/bus'); // eslint-disable-line
var app: Context; // eslint-disable-line
var Hydro: HydroGlobal; // eslint-disable-line
var addons: string[]; // eslint-disable-line
+3 -1
View File
@@ -5,7 +5,7 @@ import _ from 'lodash';
import moment from 'moment-timezone';
import Schema from 'schemastery';
import superagent from 'superagent';
import * as db from './service/db';
import db from './service/db';
export { ObjectID, ObjectId, FilterQuery } from 'mongodb';
export * from './utils';
export * from './interface';
@@ -37,6 +37,8 @@ export { default as TaskModel } from './model/task';
export * from './model/builtin';
export * as JudgeHandler from './handler/judge';
export { postJudge } from './handler/judge';
export { Collections } from './service/db';
// export { Collections } from './interface';
export { Service, Context } from './context';
export { buildContent } from './lib/content';
export * as validator from './lib/validator';
+3 -3
View File
@@ -4,11 +4,10 @@ import {
} from 'mongodb';
import { Logger } from '../logger';
import options from '../options';
// Note: this might be re-declared so we have to use Collections here
import type { Collections } from '../plugin-api';
import * as bus from './bus';
const logger = new Logger('mongo');
export interface Collections { }
interface MongoConfig {
protocol?: string,
@@ -92,4 +91,5 @@ class MongoService {
const service = new MongoService();
global.Hydro.service.db = service;
export = service;
export default service;
export const collection = service.collection.bind(service);
+1 -1
View File
@@ -13,7 +13,7 @@ import { join, resolve } from 'path';
import convert from 'schemastery-jsonschema';
import markdown from './backendlib/markdown';
declare module 'hydrooj/src/interface' {
declare module 'hydrooj' {
interface UI {
esbuildPlugins?: esbuild.Plugin[]
}
+22 -22
View File
@@ -10,18 +10,18 @@
"lint": "eslint"
},
"devDependencies": {
"@blueprintjs/core": "^4.9.3",
"@blueprintjs/select": "^4.6.3",
"@fontsource/dm-mono": "^4.5.9",
"@fontsource/fira-code": "^4.5.11",
"@fontsource/inconsolata": "^4.5.7",
"@fontsource/jetbrains-mono": "^4.5.10",
"@fontsource/pt-mono": "^4.5.10",
"@blueprintjs/core": "^4.10.2",
"@blueprintjs/select": "^4.7.0",
"@fontsource/dm-mono": "^4.5.10",
"@fontsource/fira-code": "^4.5.12",
"@fontsource/inconsolata": "^4.5.8",
"@fontsource/jetbrains-mono": "^4.5.11",
"@fontsource/pt-mono": "^4.5.11",
"@fontsource/roboto-mono": "^4.5.8",
"@fontsource/source-code-pro": "^4.5.12",
"@fontsource/ubuntu-mono": "^4.5.11",
"@hydrooj/utils": "workspace:*",
"@svgr/webpack": "^6.3.1",
"@svgr/webpack": "^6.4.0",
"@types/gulp-if": "^0.0.34",
"@types/jquery": "^3.5.14",
"@types/json-schema": "^7.0.11",
@@ -31,25 +31,25 @@
"@types/qrcode": "^1.5.0",
"@types/react-dom": "^18.0.6",
"@types/redux-logger": "^3.0.9",
"@types/serviceworker": "^0.0.51",
"@types/sharedworker": "^0.0.80",
"@types/serviceworker": "^0.0.53",
"@types/sharedworker": "^0.0.82",
"@types/webpack-env": "^1.18.0",
"@vscode/codicons": "^0.0.32",
"autoprefixer": "^10.4.8",
"autoprefixer": "^10.4.12",
"browser-update": "^3.3.40",
"chalk": "^5.0.1",
"chunk-progress-webpack-plugin": "^2.0.1",
"classnames": "^2.3.1",
"classnames": "^2.3.2",
"clean-webpack-plugin": "^4.0.0",
"clipboard": "^2.0.11",
"copy-webpack-plugin": "^11.0.0",
"css-loader": "^6.7.1",
"diff": "^5.1.0",
"diff-dom": "^4.2.5",
"echarts": "^5.3.3",
"diff-dom": "^4.2.7",
"echarts": "^5.4.0",
"emojis-keywords": "2.0.0",
"emojis-list": "2.1.0",
"esbuild-loader": "^2.19.0",
"esbuild-loader": "^2.20.0",
"fancy-log": "^2.0.0",
"flatpickr": "^4.6.13",
"friendly-errors-webpack-plugin": "^1.7.0",
@@ -70,9 +70,9 @@
"monaco-editor": "^0.33.0",
"monaco-editor-nls": "^2.0.0",
"monaco-editor-webpack-plugin": "^7.0.1",
"monaco-graphql": "^1.1.3",
"monaco-graphql": "^1.1.2",
"monaco-themes": "^0.4.2",
"monaco-yaml": "^4.0.0",
"monaco-yaml": "^4.0.2",
"nanoid": "^4.0.0",
"normalize.css": "^8.0.1",
"nprogress": "^0.2.0",
@@ -88,12 +88,12 @@
"react-dnd": "^16.0.1",
"react-dnd-html5-backend": "^16.0.1",
"react-dom": "^18.2.0",
"react-redux": "^8.0.2",
"react-redux": "^8.0.4",
"react-split-pane": "^0.1.92",
"reconnecting-websocket": "^4.4.0",
"redux": "^4.2.0",
"redux-logger": "^3.0.6",
"redux-promise-middleware": "^6.1.2",
"redux-promise-middleware": "^6.1.3",
"redux-thunk": "^2.4.1",
"rupture": "^0.7.1",
"slideout": "^1.0.1",
@@ -106,13 +106,13 @@
"through2": "^4.0.2",
"timeago-react": "^3.0.5",
"timeago.js": "^4.0.2",
"ts-loader": "^9.3.1",
"ts-loader": "^9.4.1",
"vditor": "^3.8.17",
"vinyl-buffer": "^1.0.1",
"web-streams-polyfill": "^3.2.1",
"webpack": "^5.74.0",
"webpack-bundle-analyzer": "^4.6.1",
"webpack-dev-server": "^4.10.1",
"webpack-dev-server": "^4.11.1",
"webpackbar": "^5.0.2"
},
"dependencies": {
@@ -124,7 +124,7 @@
"katex": "^0.16.2",
"lodash": "^4.17.21",
"markdown-it": "^13.0.1",
"markdown-it-anchor": "^8.6.4",
"markdown-it-anchor": "^8.6.5",
"markdown-it-attrs": "^4.1.4",
"markdown-it-footnote": "^3.0.3",
"markdown-it-imsize": "^2.0.1",
+7 -2
View File
@@ -4,12 +4,17 @@ import path from 'path';
import { Duplex } from 'stream';
import { inspect } from 'util';
import fs from 'fs-extra';
import type { Moment } from 'moment-timezone';
import { isMoment } from 'moment-timezone';
import { isMoment, Moment } from 'moment-timezone';
import { ObjectID } from 'mongodb';
import Logger from 'reggol';
Logger.levels.base = process.env.DEV ? 3 : 2;
Logger.targets[0].showTime = 'MM/dd hh:mm:ss';
Logger.targets[0].label = {
align: 'right',
width: 10,
margin: 2,
};
export { Logger };
+1 -1
View File
@@ -14,7 +14,7 @@
"js-yaml": "^4.1.0",
"moment-timezone": "^0.5.37",
"mongodb": "^3.7.3",
"reggol": "^1.1.0",
"reggol": "^1.2.1",
"source-map-support": "^0.5.21",
"systeminformation": "^5.12.6"
},
+2 -4
View File
@@ -10,18 +10,16 @@
"dependencies": {
"@hydrooj/utils": "workspace:*",
"chrome-finder": "^1.0.7",
"jsdom": "^20.0.0",
"lodash": "^4.17.21",
"jsdom": "^20.0.1",
"puppeteer-core": "^15.5.0",
"puppeteer-extra": "3.3.0",
"puppeteer-extra-plugin-portal": "3.1.0",
"puppeteer-extra-plugin-stealth": "2.10.1",
"superagent": "^8.0.0",
"superagent": "^8.0.2",
"superagent-proxy": "^3.0.0"
},
"devDependencies": {
"@types/jsdom": "^20.0.0",
"@types/lodash": "^4.14.184",
"@types/superagent": "^4.1.15",
"@types/superagent-proxy": "^3.0.0"
}
+2 -3
View File
@@ -1,10 +1,9 @@
/* eslint-disable no-await-in-loop */
import { JSDOM } from 'jsdom';
import { flattenDeep } from 'lodash';
import superagent from 'superagent';
import proxy from 'superagent-proxy';
import {
Logger, SettingModel, sleep, STATUS,
_, Logger, SettingModel, sleep, STATUS,
} from 'hydrooj';
import { IBasicProvider, RemoteAccount } from '../interface';
@@ -151,7 +150,7 @@ export default class LuoguProvider implements IBasicProvider {
});
}
logger.info('Fetched with length', JSON.stringify(body).length);
const total = flattenDeep(body.currentData.testCaseGroup).length;
const total = _.flattenDeep(body.currentData.testCaseGroup).length;
// TODO sorted
if (!data.detail.judgeResult?.subtasks) continue;
for (const key in data.detail.judgeResult.subtasks) {