|
@@ -4,8 +4,10 @@ import { API, showError, showNotice, timestamp2string } from '../../helpers';
|
|
|
import { StatusContext } from '../../context/Status';
|
|
import { StatusContext } from '../../context/Status';
|
|
|
import { marked } from 'marked';
|
|
import { marked } from 'marked';
|
|
|
import { StyleContext } from '../../context/Style/index.js';
|
|
import { StyleContext } from '../../context/Style/index.js';
|
|
|
|
|
+import { useTranslation } from 'react-i18next';
|
|
|
|
|
|
|
|
const Home = () => {
|
|
const Home = () => {
|
|
|
|
|
+ const { t } = useTranslation();
|
|
|
const [statusState] = useContext(StatusContext);
|
|
const [statusState] = useContext(StatusContext);
|
|
|
const [homePageContentLoaded, setHomePageContentLoaded] = useState(false);
|
|
const [homePageContentLoaded, setHomePageContentLoaded] = useState(false);
|
|
|
const [homePageContent, setHomePageContent] = useState('');
|
|
const [homePageContent, setHomePageContent] = useState('');
|
|
@@ -60,13 +62,13 @@ const Home = () => {
|
|
|
<Card
|
|
<Card
|
|
|
bordered={false}
|
|
bordered={false}
|
|
|
headerLine={false}
|
|
headerLine={false}
|
|
|
- title='系统状况'
|
|
|
|
|
|
|
+ title={t('系统状况')}
|
|
|
bodyStyle={{ padding: '10px 20px' }}
|
|
bodyStyle={{ padding: '10px 20px' }}
|
|
|
>
|
|
>
|
|
|
<Row gutter={16}>
|
|
<Row gutter={16}>
|
|
|
<Col span={12}>
|
|
<Col span={12}>
|
|
|
<Card
|
|
<Card
|
|
|
- title='系统信息'
|
|
|
|
|
|
|
+ title={t('系统信息')}
|
|
|
headerExtraContent={
|
|
headerExtraContent={
|
|
|
<span
|
|
<span
|
|
|
style={{
|
|
style={{
|
|
@@ -74,19 +76,19 @@ const Home = () => {
|
|
|
color: 'var(--semi-color-text-1)',
|
|
color: 'var(--semi-color-text-1)',
|
|
|
}}
|
|
}}
|
|
|
>
|
|
>
|
|
|
- 系统信息总览
|
|
|
|
|
|
|
+ {t('系统信息总览')}
|
|
|
</span>
|
|
</span>
|
|
|
}
|
|
}
|
|
|
>
|
|
>
|
|
|
- <p>名称:{statusState?.status?.system_name}</p>
|
|
|
|
|
|
|
+ <p>{t('名称')}:{statusState?.status?.system_name}</p>
|
|
|
<p>
|
|
<p>
|
|
|
- 版本:
|
|
|
|
|
|
|
+ {t('版本')}:
|
|
|
{statusState?.status?.version
|
|
{statusState?.status?.version
|
|
|
? statusState?.status?.version
|
|
? statusState?.status?.version
|
|
|
: 'unknown'}
|
|
: 'unknown'}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- 源码:
|
|
|
|
|
|
|
+ {t('源码')}:
|
|
|
<a
|
|
<a
|
|
|
href='https://github.com/Calcium-Ion/new-api'
|
|
href='https://github.com/Calcium-Ion/new-api'
|
|
|
target='_blank'
|
|
target='_blank'
|
|
@@ -96,7 +98,7 @@ const Home = () => {
|
|
|
</a>
|
|
</a>
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- 协议:
|
|
|
|
|
|
|
+ {t('协议')}:
|
|
|
<a
|
|
<a
|
|
|
href='https://www.apache.org/licenses/LICENSE-2.0'
|
|
href='https://www.apache.org/licenses/LICENSE-2.0'
|
|
|
target='_blank'
|
|
target='_blank'
|
|
@@ -105,12 +107,12 @@ const Home = () => {
|
|
|
Apache-2.0 License
|
|
Apache-2.0 License
|
|
|
</a>
|
|
</a>
|
|
|
</p>
|
|
</p>
|
|
|
- <p>启动时间:{getStartTimeString()}</p>
|
|
|
|
|
|
|
+ <p>{t('启动时间')}:{getStartTimeString()}</p>
|
|
|
</Card>
|
|
</Card>
|
|
|
</Col>
|
|
</Col>
|
|
|
<Col span={12}>
|
|
<Col span={12}>
|
|
|
<Card
|
|
<Card
|
|
|
- title='系统配置'
|
|
|
|
|
|
|
+ title={t('系统配置')}
|
|
|
headerExtraContent={
|
|
headerExtraContent={
|
|
|
<span
|
|
<span
|
|
|
style={{
|
|
style={{
|
|
@@ -118,45 +120,45 @@ const Home = () => {
|
|
|
color: 'var(--semi-color-text-1)',
|
|
color: 'var(--semi-color-text-1)',
|
|
|
}}
|
|
}}
|
|
|
>
|
|
>
|
|
|
- 系统配置总览
|
|
|
|
|
|
|
+ {t('系统配置总览')}
|
|
|
</span>
|
|
</span>
|
|
|
}
|
|
}
|
|
|
>
|
|
>
|
|
|
<p>
|
|
<p>
|
|
|
- 邮箱验证:
|
|
|
|
|
|
|
+ {t('邮箱验证')}:
|
|
|
{statusState?.status?.email_verification === true
|
|
{statusState?.status?.email_verification === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- GitHub 身份验证:
|
|
|
|
|
|
|
+ {t('GitHub 身份验证')}:
|
|
|
{statusState?.status?.github_oauth === true
|
|
{statusState?.status?.github_oauth === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- 微信身份验证:
|
|
|
|
|
|
|
+ {t('微信身份验证')}:
|
|
|
{statusState?.status?.wechat_login === true
|
|
{statusState?.status?.wechat_login === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- Turnstile 用户校验:
|
|
|
|
|
|
|
+ {t('Turnstile 用户校验')}:
|
|
|
{statusState?.status?.turnstile_check === true
|
|
{statusState?.status?.turnstile_check === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- Telegram 身份验证:
|
|
|
|
|
|
|
+ {t('Telegram 身份验证')}:
|
|
|
{statusState?.status?.telegram_oauth === true
|
|
{statusState?.status?.telegram_oauth === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
<p>
|
|
<p>
|
|
|
- Linux DO 身份验证:
|
|
|
|
|
|
|
+ {t('Linux DO 身份验证')}:
|
|
|
{statusState?.status?.linuxdo_oauth === true
|
|
{statusState?.status?.linuxdo_oauth === true
|
|
|
- ? '已启用'
|
|
|
|
|
- : '未启用'}
|
|
|
|
|
|
|
+ ? t('已启用')
|
|
|
|
|
+ : t('未启用')}
|
|
|
</p>
|
|
</p>
|
|
|
</Card>
|
|
</Card>
|
|
|
</Col>
|
|
</Col>
|