mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-20 01:38:19 +08:00
update readme
This commit is contained in:
1 parent
a8bd6f4e16
commit
c989d1291d
5 files changed
+15
-11
No files matched your search
@@ -40,6 +40,19 @@ Telegram [@webpack_exports_undefined](https://t.me/webpack_exports_undefined)
|
|||||||
<details>
|
<details>
|
||||||
<summary><h2>更新日志(点击展开)</h2></summary>
|
<summary><h2>更新日志(点击展开)</h2></summary>
|
||||||
|
|
||||||
|
### Hydro 4.6.0 / UI 4.46.0
|
||||||
|
- core&ui: 添加 webauthn 支持
|
||||||
|
- ui: 修复题解投票
|
||||||
|
- ui: 优化比赛详情页布局
|
||||||
|
- ui: 修复快捷搜索中评测记录链接
|
||||||
|
- core: 添加 `Types.ArrayOf()` 支持
|
||||||
|
- ui: 修复侧栏预览保存
|
||||||
|
- core: 添加 CookieDomain 设置
|
||||||
|
- ui: 修复 dev 模式下页面无限刷新的问题
|
||||||
|
- vjudge: 提供 BasicFetcher 组件
|
||||||
|
- core: DomainModel 缓存
|
||||||
|
- core&ui: 其他漏洞修复
|
||||||
|
|
||||||
### Hydro 4.5.2 / UI 4.45.1
|
### Hydro 4.5.2 / UI 4.45.1
|
||||||
- core: 添加乐多赛支持
|
- core: 添加乐多赛支持
|
||||||
- vjudge: 移除 puppeteer 相关依赖
|
- vjudge: 移除 puppeteer 相关依赖
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import { generateRegistrationOptions, verifyRegistrationResponse } from '@simple
|
|||||||
import yaml from 'js-yaml';
|
import yaml from 'js-yaml';
|
||||||
import { pick } from 'lodash';
|
import { pick } from 'lodash';
|
||||||
import { Binary, ObjectID } from 'mongodb';
|
import { Binary, ObjectID } from 'mongodb';
|
||||||
import { camelCase } from '@hydrooj/utils/lib/utils';
|
|
||||||
import { Context } from '../context';
|
import { Context } from '../context';
|
||||||
import {
|
import {
|
||||||
AuthOperationError, BlacklistedError, DomainAlreadyExistsError, InvalidTokenError,
|
AuthOperationError, BlacklistedError, DomainAlreadyExistsError, InvalidTokenError,
|
||||||
@@ -33,7 +32,7 @@ import * as bus from '../service/bus';
|
|||||||
import {
|
import {
|
||||||
ConnectionHandler, Handler, param, query, requireSudo, Types,
|
ConnectionHandler, Handler, param, query, requireSudo, Types,
|
||||||
} from '../service/server';
|
} from '../service/server';
|
||||||
import { md5 } from '../utils';
|
import { camelCase, md5 } from '../utils';
|
||||||
|
|
||||||
export class HomeHandler extends Handler {
|
export class HomeHandler extends Handler {
|
||||||
uids = new Set<number>();
|
uids = new Set<number>();
|
||||||
@@ -175,7 +174,7 @@ class HomeSecurityHandler extends Handler {
|
|||||||
'authenticatorAttachment', 'regat', 'fmt',
|
'authenticatorAttachment', 'regat', 'fmt',
|
||||||
])),
|
])),
|
||||||
geoipProvider: geoip?.provider,
|
geoipProvider: geoip?.provider,
|
||||||
icon: useragent.icon,
|
icon: (str = '') => str.split(' ')[0].toLowerCase(),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -734,7 +734,6 @@ export interface Lib extends Record<string, any> {
|
|||||||
rank: typeof import('./lib/rank');
|
rank: typeof import('./lib/rank');
|
||||||
rating: typeof import('./lib/rating');
|
rating: typeof import('./lib/rating');
|
||||||
testdataConfig: typeof import('./lib/testdataConfig');
|
testdataConfig: typeof import('./lib/testdataConfig');
|
||||||
useragent: typeof import('./lib/useragent');
|
|
||||||
validator: typeof import('./lib/validator');
|
validator: typeof import('./lib/validator');
|
||||||
template?: any;
|
template?: any;
|
||||||
problemSearch: ProblemSearch;
|
problemSearch: ProblemSearch;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import './i18n';
|
import './i18n';
|
||||||
import './mail';
|
import './mail';
|
||||||
import './useragent';
|
|
||||||
import './paginate';
|
import './paginate';
|
||||||
import './hash.hydro';
|
import './hash.hydro';
|
||||||
import './rank';
|
import './rank';
|
||||||
|
|||||||
@@ -3,9 +3,3 @@ import * as browser from 'detect-browser';
|
|||||||
export function parse(str: string) {
|
export function parse(str: string) {
|
||||||
return browser.parseUserAgent(str);
|
return browser.parseUserAgent(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function icon(str: string = '') {
|
|
||||||
return str.split(' ')[0].toLowerCase();
|
|
||||||
}
|
|
||||||
|
|
||||||
global.Hydro.lib.useragent = { parse, icon };
|
|
||||||
Reference in new issue
Block a user