diff --git a/README.md b/README.md index 688d6c6fd..417a20ad8 100644 --- a/README.md +++ b/README.md @@ -111,7 +111,21 @@ Hydro 用户群:1085853538

更新日志(点击展开)

-## Hydro 5.0.0-beta.14 / UI 4.58.0-beta.15 +## Hydro 5.0.0-beta.16 / UI 4.58.0-beta.17 + +- core: 修复繁体中文 i18n 自动检测 +- scoreboard-xcpcio: 修复子域中自动重定向 +- core: 比赛导航优化 +- core&ui: 繁体中文翻译完善 +- core&ui: 支持搜索训练计划 +- core: 修复 judge 特定情况下的竞态 +- onsite-toolkit: 添加比赛模式 +- ui: 支持自动填写测试数据输入到在线 IDE +- ui: 默认禁用提交列表页面统计数据 +- judge: 支持同时运行多组自测数据 +- ui: 细节优化 + +## Hydro 5.0.0-beta.15 / UI 4.58.0-beta.16 - core: 修复题目创建页面多语言切换 - ui: 修复比赛题目列表显示 diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index 307231254..28ee3e587 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "5.0.0-beta.15", + "version": "5.0.0-beta.16", "bin": "bin/hydrooj.js", "main": "src/plugin-api", "module": "src/plugin-api", @@ -31,7 +31,7 @@ "csv-stringify": "^6.6.0", "emoji-regex": "^10.6.0", "emojis-list": "2.1.0", - "fs-extra": "^11.3.2", + "fs-extra": "^11.3.3", "js-yaml": "^4.1.1", "koa-proxies": "^0.12.4", "koa-static-cache": "^5.1.4", @@ -42,7 +42,7 @@ "mongodb": "^7.0.0", "mongodb-uri": "^0.9.7", "nanoid": "^5.1.6", - "nodemailer": "^7.0.11", + "nodemailer": "^7.0.12", "notp": "^2.0.3", "p-queue": "^9.0.1", "sanitize-filename": "^1.6.3", diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 6a76a78ac..87f7ba385 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -1,6 +1,6 @@ { "name": "@hydrooj/ui-default", - "version": "4.58.0-beta.16", + "version": "4.58.0-beta.17", "author": "undefined ", "license": "AGPL-3.0", "main": "index.ts", @@ -23,7 +23,7 @@ "@mantine/core": "^8.3.10", "@mantine/hooks": "^8.3.10", "@mantine/notifications": "^8.3.10", - "@sentry/browser": "^10.31.0", + "@sentry/browser": "^10.32.1", "@sentry/webpack-plugin": "^4.6.1", "@simplewebauthn/browser": "13.2.2", "@svgr/webpack": "^8.1.0", @@ -43,7 +43,7 @@ "@types/webpack-env": "^1.18.8", "@vscode/codicons": "^0.0.44", "ajv": "^8.17.1", - "allotment": "^1.20.4", + "allotment": "^1.20.5", "autoprefixer": "^10.4.23", "browser-update": "^3.3.63", "chalk": "^5.6.2", @@ -60,7 +60,7 @@ "echarts": "^6.0.0", "emojis-keywords": "2.0.0", "emojis-list": "2.1.0", - "esbuild-loader": "^4.4.0", + "esbuild-loader": "^4.4.1", "flatpickr": "^4.6.13", "idb": "^8.0.3", "jquery": "^3.7.1", @@ -101,7 +101,7 @@ "redux-promise-middleware": "^6.2.0", "redux-thunk": "^3.1.0", "rupture": "^0.7.1", - "sass": "^1.97.0", + "sass": "^1.97.1", "sass-loader": "^16.0.6", "schemastery": "^3.17.2", "shorty.js": "^1.0.1", @@ -117,7 +117,7 @@ "timeago.js": "^4.0.2", "ts-loader": "^9.5.4", "web-streams-polyfill": "^4.2.0", - "webpack": "^5.104.0", + "webpack": "^5.104.1", "webpack-bundle-analyzer": "^5.1.0", "webpack-dev-server": "^5.2.2", "webpack-manifest-plugin": "^6.0.1", @@ -128,7 +128,7 @@ "ansi_up": "^6.0.6", "cssfilter": "^0.0.11", "esbuild": "0.25.2", - "fs-extra": "^11.3.2", + "fs-extra": "^11.3.3", "html-to-text": "^9.0.5", "js-yaml": "^4.1.1", "jsesc": "^3.1.0", diff --git a/packages/ui-default/pages/manage_dashboard.page.js b/packages/ui-default/pages/manage_dashboard.page.js index 5ea014ada..abb95203e 100644 --- a/packages/ui-default/pages/manage_dashboard.page.js +++ b/packages/ui-default/pages/manage_dashboard.page.js @@ -11,16 +11,14 @@ const page = new NamedPage('manage_dashboard', async () => { sock.onmessage = (message) => { const msg = JSON.parse(message.data); - if (msg.type === 'log') { - const div = $('
').appendTo('#messages'); - $(`

${msg.payload}

`).appendTo(div); - } else if (msg.type === 'warn') { - const div = $('
').appendTo('#messages'); - $(`

${msg.payload}

`).appendTo(div); - } else if (msg.type === 'error') { - const div = $('
').appendTo('#messages'); - $(`

${msg.payload}

`).appendTo(div); - } + const color = { + log: 'blue', + warn: 'yellow', + error: 'red', + }; + const div = $(`
`).appendTo('#messages'); + // message come from backend checks, mark as trusted + for (const line of (msg.payload || '').split('\n')) $(`

${line}

`).appendTo(div); }; sock.onclose = (message) => {