diff --git a/framework/eslint-config/package.json b/framework/eslint-config/package.json index 04b69097a..bd47a3115 100644 --- a/framework/eslint-config/package.json +++ b/framework/eslint-config/package.json @@ -5,14 +5,14 @@ "main": "base.mjs", "repository": "https://github.com/hydro-dev/Hydro", "dependencies": { - "@antfu/eslint-config": "^6.6.1", + "@antfu/eslint-config": "^6.7.1", "@eslint-react/eslint-plugin": "^2.3.13", - "@typescript-eslint/eslint-plugin": "^8.49.0", - "@typescript-eslint/parser": "^8.49.0", + "@typescript-eslint/eslint-plugin": "^8.50.0", + "@typescript-eslint/parser": "^8.50.0", "eslint-plugin-de-morgan": "^2.0.0", "eslint-plugin-github": "^6.0.0", "eslint-plugin-react-hooks": "^7.0.1", - "eslint-plugin-react-refresh": "^0.4.24", + "eslint-plugin-react-refresh": "^0.4.26", "eslint-plugin-simple-import-sort": "^12.1.1", "globals": "^16.5.0" }, diff --git a/framework/framework/base.ts b/framework/framework/base.ts index 151f63c1a..1a9a4e0b8 100644 --- a/framework/framework/base.ts +++ b/framework/framework/base.ts @@ -18,12 +18,15 @@ export default (logger, xff, xhost) => async (ctx: KoaContext, next: Next) => { method: ctx.request.method.toLowerCase(), host: ctx.request.headers[xhost?.toLowerCase() || ''] as string || ctx.request.host, ip: (ctx.request.headers[xff?.toLowerCase() || ''] as string || ctx.request.ip).split(',')[0].trim(), - ...pick(ctx, ['cookies', 'query', 'path', 'params', 'originalPath', 'querystring']), + ...pick(ctx, ['cookies', 'query', 'path', 'originalPath', 'querystring']), ...pick(ctx.request, ['headers', 'body', 'hostname']), files: ctx.request.files as any, referer: ctx.request.headers.referer || '', json: (ctx.request.headers.accept || '').includes('application/json'), websocket: ctx.request.headers.upgrade === 'websocket', + get params() { + return ctx.params; + }, }; const response: HydroResponse = { body: {}, diff --git a/framework/framework/package.json b/framework/framework/package.json index dbc9b05b4..e08bb0b7f 100644 --- a/framework/framework/package.json +++ b/framework/framework/package.json @@ -9,12 +9,12 @@ }, "dependencies": { "@hydrooj/utils": "workspace:^", - "@koa/router": "^14.0.0", - "@mongodb-js/saslprep": "^1.4.0", + "@koa/router": "^15.1.0", + "@mongodb-js/saslprep": "^1.4.4", "emoji-regex": "^10.6.0", "fs-extra": "^11.3.2", "koa": "^3.1.1", - "koa-body": "^7.0.0", + "koa-body": "^7.0.1", "koa-compress": "^5.1.1", "path-to-regexp": "^8.3.0", "sanitize-filename": "^1.6.3", diff --git a/framework/framework/router.ts b/framework/framework/router.ts index 7dbad993c..c0df3fad4 100644 --- a/framework/framework/router.ts +++ b/framework/framework/router.ts @@ -1,5 +1,5 @@ import { IncomingMessage } from 'http'; -import KoaRouter from '@koa/router'; +import KoaRouter, { type RouterInstance } from '@koa/router'; import { Keys, pathToRegexp } from 'path-to-regexp'; import type WebSocket from 'ws'; import type { KoaContext } from './server'; @@ -51,7 +51,7 @@ export class Router extends KoaRouter { /** * hack into router methods to make sure that koa middlewares are disposable */ - register(...args: Parameters) { + register(...args: Parameters) { const layer = super.register(...args); this.disposeLastOp = () => remove(this.stack, layer); return layer; diff --git a/framework/utils/package.json b/framework/utils/package.json index 674993a81..2068927f6 100644 --- a/framework/utils/package.json +++ b/framework/utils/package.json @@ -18,7 +18,7 @@ "js-yaml": "^4.1.1", "reggol": "^2.1.0", "search-query-parser": "^1.6.0", - "systeminformation": "^5.27.13" + "systeminformation": "^5.27.14" }, "devDependencies": { "@types/fs-extra": "^11.0.4" diff --git a/package.json b/package.json index e06eceafa..777e16bc2 100644 --- a/package.json +++ b/package.json @@ -43,17 +43,17 @@ "cross-env": "^10.1.0", "cross-spawn": "^7.0.6", "esbuild": "0.25.2", - "eslint": "^9.39.1", + "eslint": "^9.39.2", "eslint-import-resolver-typescript": "^4.4.4", "eslint-import-resolver-webpack": "^0.13.10", "fs-extra": "^11.3.2", "globals": "^16.5.0", "globby": "~14.0.2", "inspectpack": "^4.7.1", - "mongodb-memory-server": "10.3.0", + "mongodb-memory-server": "11.0.0", "nyc": "^17.1.0", "ora": "^9.0.0", - "oxlint": "^1.32.0", + "oxlint": "^1.33.0", "package-json": "^10.0.1", "semver": "^7.7.3", "simple-git": "^3.30.0", diff --git a/packages/components/package.json b/packages/components/package.json index 2d613d526..1a8f61c98 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -21,7 +21,7 @@ "@types/diff": "^8.0.0", "@types/js-yaml": "^4.0.9", "@types/lodash": "^4.17.21", - "sass": "^1.95.1" + "sass": "^1.97.0" }, "peerDependencies": { "react": "*", diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index fa10ed8f3..307231254 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -21,7 +21,7 @@ "@hydrooj/common": "workspace:^", "@hydrooj/framework": "workspace:^", "@hydrooj/utils": "workspace:^", - "@mongodb-js/saslprep": "^1.4.0", + "@mongodb-js/saslprep": "^1.4.4", "@simplewebauthn/server": "13.2.2", "@undefined-moe/require-resolve-hook": "^1.1.0", "@zip.js/zip.js": "^2.8.11", diff --git a/packages/scoreboard-xcpcio/package.json b/packages/scoreboard-xcpcio/package.json index 572b38add..8070ae2d5 100644 --- a/packages/scoreboard-xcpcio/package.json +++ b/packages/scoreboard-xcpcio/package.json @@ -8,9 +8,9 @@ "postinstall": "node -r @hydrooj/register install.ts" }, "dependencies": { - "@xcpcio/board-app": "^0.76.4" + "@xcpcio/board-app": "^0.76.8" }, "devDependencies": { - "@xcpcio/types": "^0.76.4" + "@xcpcio/types": "^0.76.8" } } diff --git a/packages/ui-default/package.json b/packages/ui-default/package.json index 6e5167dca..6a76a78ac 100644 --- a/packages/ui-default/package.json +++ b/packages/ui-default/package.json @@ -23,7 +23,7 @@ "@mantine/core": "^8.3.10", "@mantine/hooks": "^8.3.10", "@mantine/notifications": "^8.3.10", - "@sentry/browser": "^10.29.0", + "@sentry/browser": "^10.31.0", "@sentry/webpack-plugin": "^4.6.1", "@simplewebauthn/browser": "13.2.2", "@svgr/webpack": "^8.1.0", @@ -41,10 +41,10 @@ "@types/redux-logger": "^3.0.13", "@types/uuid": "^11.0.0", "@types/webpack-env": "^1.18.8", - "@vscode/codicons": "^0.0.43", + "@vscode/codicons": "^0.0.44", "ajv": "^8.17.1", "allotment": "^1.20.4", - "autoprefixer": "^10.4.22", + "autoprefixer": "^10.4.23", "browser-update": "^3.3.63", "chalk": "^5.6.2", "classnames": "^2.5.1", @@ -89,11 +89,11 @@ "prop-types": "^15.8.1", "qface": "^1.4.1", "qrcode": "^1.5.4", - "react": "^19.2.1", + "react": "^19.2.3", "react-colorful": "^5.6.1", "react-dnd": "^16.0.1", "react-dnd-html5-backend": "^16.0.1", - "react-dom": "^19.2.1", + "react-dom": "^19.2.3", "react-redux": "^9.2.0", "reconnecting-websocket": "^4.4.0", "redux": "^5.0.1", @@ -101,7 +101,7 @@ "redux-promise-middleware": "^6.2.0", "redux-thunk": "^3.1.0", "rupture": "^0.7.1", - "sass": "^1.95.1", + "sass": "^1.97.0", "sass-loader": "^16.0.6", "schemastery": "^3.17.2", "shorty.js": "^1.0.1", @@ -117,8 +117,8 @@ "timeago.js": "^4.0.2", "ts-loader": "^9.5.4", "web-streams-polyfill": "^4.2.0", - "webpack": "^5.103.0", - "webpack-bundle-analyzer": "^5.0.1", + "webpack": "^5.104.0", + "webpack-bundle-analyzer": "^5.1.0", "webpack-dev-server": "^5.2.2", "webpack-manifest-plugin": "^6.0.1", "webpackbar": "^7.0.0" diff --git a/packages/ui-default/templates/home_security.html b/packages/ui-default/templates/home_security.html index 2a76c3422..197d7607c 100644 --- a/packages/ui-default/templates/home_security.html +++ b/packages/ui-default/templates/home_security.html @@ -148,8 +148,7 @@

{{ _('Authenticator') }}: {{ authenticator.name }} ({{ authenticator.credentialID.buffer.toString('base64')|truncate(6, end='') }})

-

{{ _('Type') }}: {{ authenticator.fmt }}

-

{{ _('Device Type') }}: {{ authenticator.credentialDeviceType }}

+

{{ _('Type') }}: {{ authenticator.credentialDeviceType }}:{{ authenticator.fmt }}

{{ _('Registered at') }}: {{ datetimeSpan(authenticator.regat)|safe }}

diff --git a/packages/ui-next/package.json b/packages/ui-next/package.json index d5cc6051c..58a72013e 100644 --- a/packages/ui-next/package.json +++ b/packages/ui-next/package.json @@ -9,13 +9,13 @@ }, "dependencies": { "@vitejs/plugin-react": "^5.1.2", - "react": "^19.2.1", - "react-dom": "^19.2.1" + "react": "^19.2.3", + "react-dom": "^19.2.3" }, "devDependencies": { "@types/react": "^19.2.7", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react-swc": "^4.2.2", - "vite": "^7.2.7" + "vite": "^7.3.0" } }