|
|
@@ -20,7 +20,7 @@ import { formatDate } from '@/utils/date'; |
|
|
import { to } from '@/utils/promise'; |
|
|
import { to } from '@/utils/promise'; |
|
|
import { mirrorNameKey, setSessionStorageItem } from '@/utils/sessionStorage'; |
|
|
import { mirrorNameKey, setSessionStorageItem } from '@/utils/sessionStorage'; |
|
|
import { modalConfirm } from '@/utils/ui'; |
|
|
import { modalConfirm } from '@/utils/ui'; |
|
|
import { useNavigate, useParams, useSearchParams } from '@umijs/max'; |
|
|
|
|
|
|
|
|
import { useNavigate, useParams } from '@umijs/max'; |
|
|
import { |
|
|
import { |
|
|
App, |
|
|
App, |
|
|
Button, |
|
|
Button, |
|
|
@@ -33,7 +33,7 @@ import { |
|
|
type TableProps, |
|
|
type TableProps, |
|
|
} from 'antd'; |
|
|
} from 'antd'; |
|
|
import classNames from 'classnames'; |
|
|
import classNames from 'classnames'; |
|
|
import { useEffect, useState } from 'react'; |
|
|
|
|
|
|
|
|
import { useEffect, useMemo, useState } from 'react'; |
|
|
import MirrorStatusCell from '../components/MirrorStatusCell'; |
|
|
import MirrorStatusCell from '../components/MirrorStatusCell'; |
|
|
import styles from './index.less'; |
|
|
import styles from './index.less'; |
|
|
|
|
|
|
|
|
@@ -42,6 +42,7 @@ type MirrorInfoData = { |
|
|
description?: string; |
|
|
description?: string; |
|
|
version_count?: string; |
|
|
version_count?: string; |
|
|
create_time?: string; |
|
|
create_time?: string; |
|
|
|
|
|
image_type?: number; |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
type MirrorVersionData = { |
|
|
type MirrorVersionData = { |
|
|
@@ -56,7 +57,6 @@ type MirrorVersionData = { |
|
|
function MirrorInfo() { |
|
|
function MirrorInfo() { |
|
|
const navigate = useNavigate(); |
|
|
const navigate = useNavigate(); |
|
|
const urlParams = useParams(); |
|
|
const urlParams = useParams(); |
|
|
const [searchParams] = useSearchParams(); |
|
|
|
|
|
const [cacheState, setCacheState] = useCacheState(); |
|
|
const [cacheState, setCacheState] = useCacheState(); |
|
|
const [mirrorInfo, setMirrorInfo] = useState<MirrorInfoData>({}); |
|
|
const [mirrorInfo, setMirrorInfo] = useState<MirrorInfoData>({}); |
|
|
const [tableData, setTableData] = useState<MirrorVersionData[]>([]); |
|
|
const [tableData, setTableData] = useState<MirrorVersionData[]>([]); |
|
|
@@ -69,7 +69,7 @@ function MirrorInfo() { |
|
|
}, |
|
|
}, |
|
|
); |
|
|
); |
|
|
const { message } = App.useApp(); |
|
|
const { message } = App.useApp(); |
|
|
const isPublic = searchParams.get('isPublic') === 'true'; |
|
|
|
|
|
|
|
|
const isPublic = useMemo(() => mirrorInfo.image_type === 1, [mirrorInfo]); |
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
useEffect(() => { |
|
|
getMirrorInfo(); |
|
|
getMirrorInfo(); |
|
|
@@ -84,14 +84,7 @@ function MirrorInfo() { |
|
|
const id = Number(urlParams.id); |
|
|
const id = Number(urlParams.id); |
|
|
const [res] = await to(getMirrorInfoReq(id)); |
|
|
const [res] = await to(getMirrorInfoReq(id)); |
|
|
if (res && res.data) { |
|
|
if (res && res.data) { |
|
|
const { name = '', description = '', version_count = '', create_time: time } = res.data; |
|
|
|
|
|
const create_time = formatDate(time); |
|
|
|
|
|
setMirrorInfo({ |
|
|
|
|
|
name, |
|
|
|
|
|
description, |
|
|
|
|
|
version_count, |
|
|
|
|
|
create_time, |
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
setMirrorInfo(res.data); |
|
|
} |
|
|
} |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
@@ -258,7 +251,7 @@ function MirrorInfo() { |
|
|
<Col span={10}> |
|
|
<Col span={10}> |
|
|
<div className={styles['mirror-info__basic__item']}> |
|
|
<div className={styles['mirror-info__basic__item']}> |
|
|
<div className={styles['label']}>创建时间:</div> |
|
|
<div className={styles['label']}>创建时间:</div> |
|
|
<div className={styles['value']}>{mirrorInfo.create_time}</div> |
|
|
|
|
|
|
|
|
<div className={styles['value']}>{formatDate(mirrorInfo.create_time)}</div> |
|
|
</div> |
|
|
</div> |
|
|
</Col> |
|
|
</Col> |
|
|
</Row> |
|
|
</Row> |
|
|
@@ -270,7 +263,7 @@ function MirrorInfo() { |
|
|
></SubAreaTitle> |
|
|
></SubAreaTitle> |
|
|
{!isPublic && ( |
|
|
{!isPublic && ( |
|
|
<Button |
|
|
<Button |
|
|
style={{ marginRight: 0, marginLeft: 'auto' }} |
|
|
|
|
|
|
|
|
style={{ marginLeft: 'auto' }} |
|
|
type="default" |
|
|
type="default" |
|
|
onClick={createMirrorVersion} |
|
|
onClick={createMirrorVersion} |
|
|
icon={<KFIcon type="icon-xinjian2" />} |
|
|
icon={<KFIcon type="icon-xinjian2" />} |
|
|
@@ -279,7 +272,7 @@ function MirrorInfo() { |
|
|
</Button> |
|
|
</Button> |
|
|
)} |
|
|
)} |
|
|
<Button |
|
|
<Button |
|
|
style={{ marginLeft: '20px' }} |
|
|
|
|
|
|
|
|
style={{ marginLeft: isPublic ? 'auto' : '20px', marginRight: 0 }} |
|
|
type="default" |
|
|
type="default" |
|
|
onClick={getMirrorVersionList} |
|
|
onClick={getMirrorVersionList} |
|
|
icon={<KFIcon type="icon-shuaxin" />} |
|
|
icon={<KFIcon type="icon-shuaxin" />} |
|
|
|