fix: replicas, ready_replicas sorting
This commit is contained in:
@@ -126,16 +126,11 @@ const SummaryData: React.FC = () => {
|
||||
|
||||
<DataItem
|
||||
label={
|
||||
<span
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: intl.formatMessage(
|
||||
{ id: 'clusters.addworker.workerIP' },
|
||||
{
|
||||
type: `(${intl.formatMessage({ id: 'clusters.table.ip.internal' })})`
|
||||
}
|
||||
)
|
||||
}}
|
||||
></span>
|
||||
<span>
|
||||
{intl.formatMessage({
|
||||
id: 'clusters.addworker.workerIP'
|
||||
})}
|
||||
</span>
|
||||
}
|
||||
tips={
|
||||
workerIPConfig.enable
|
||||
@@ -151,16 +146,11 @@ const SummaryData: React.FC = () => {
|
||||
|
||||
<DataItem
|
||||
label={
|
||||
<span
|
||||
dangerouslySetInnerHTML={{
|
||||
__html: intl.formatMessage(
|
||||
{ id: 'clusters.addworker.workerIP' },
|
||||
{
|
||||
type: `(${intl.formatMessage({ id: 'clusters.table.ip.external' })})`
|
||||
}
|
||||
)
|
||||
}}
|
||||
></span>
|
||||
<span>
|
||||
{intl.formatMessage({
|
||||
id: 'clusters.addworker.workerExternalIP'
|
||||
})}
|
||||
</span>
|
||||
}
|
||||
tips={
|
||||
externalWorkerIPConfig.enable
|
||||
|
||||
@@ -2,6 +2,7 @@ import { clusterSessionAtom } from '@/atoms/clusters';
|
||||
import IconFont from '@/components/icon-font';
|
||||
import ScrollerModal from '@/components/scroller-modal/index';
|
||||
import { PageAction } from '@/config';
|
||||
import useUserSettings from '@/hooks/use-user-settings';
|
||||
import useClusterList from '@/pages/cluster-management/hooks/use-cluster-list';
|
||||
import { useIntl, useNavigate } from '@umijs/max';
|
||||
import { Button } from 'antd';
|
||||
@@ -53,14 +54,15 @@ const Content = styled.div`
|
||||
}
|
||||
`;
|
||||
|
||||
export default function useAddResource() {
|
||||
export default function useAddResource(options?: { onCreated?: () => void }) {
|
||||
const { onCreated } = options || {};
|
||||
const intl = useIntl();
|
||||
const navigate = useNavigate();
|
||||
const { setUserSettings, userSettings } = useUserSettings();
|
||||
const [, setClusterSession] = useAtom(clusterSessionAtom);
|
||||
|
||||
const [hideModalTemporarily, setHideModalTemporarily] = useState(false);
|
||||
const { fetchResource, resourceCount, resourceAtom } = useClusterList();
|
||||
|
||||
const [hiddenModal, setHiddenModal] = useState(false);
|
||||
const [loadingStatus, setLoadingStatus] = useState({
|
||||
loading: false,
|
||||
loadend: false
|
||||
@@ -73,7 +75,6 @@ export default function useAddResource() {
|
||||
}, [resourceAtom, loadingStatus]);
|
||||
|
||||
const contentInfo = useMemo(() => {
|
||||
console.log('resourceCount=', resourceCount);
|
||||
if (!resourceCount.cluster_count) {
|
||||
return {
|
||||
title: intl.formatMessage({ id: 'noresult.cluster.title' }),
|
||||
@@ -89,11 +90,12 @@ export default function useAddResource() {
|
||||
}, [resourceCount, intl]);
|
||||
|
||||
const open: boolean = useMemo(() => {
|
||||
return isNoResource && !hiddenModal;
|
||||
}, [isNoResource, hiddenModal]);
|
||||
return isNoResource && !userSettings.hideAddResourceModal;
|
||||
}, [isNoResource, userSettings.hideAddResourceModal]);
|
||||
|
||||
const handleCreate = () => {
|
||||
setHiddenModal(true);
|
||||
setHideModalTemporarily(true);
|
||||
onCreated?.();
|
||||
if (!resourceCount.cluster_count) {
|
||||
setClusterSession({
|
||||
firstAddWorker: false,
|
||||
@@ -116,23 +118,33 @@ export default function useAddResource() {
|
||||
};
|
||||
|
||||
const handleCancel = () => {
|
||||
setHiddenModal(true);
|
||||
setUserSettings({
|
||||
...userSettings,
|
||||
hideAddResourceModal: true
|
||||
});
|
||||
};
|
||||
|
||||
const fetchResourceData = async () => {
|
||||
setLoadingStatus({ loading: true, loadend: false });
|
||||
setHiddenModal(false);
|
||||
await fetchResource();
|
||||
const { hasClusters, hasWorkers } = await fetchResource();
|
||||
setLoadingStatus({ loading: false, loadend: true });
|
||||
setUserSettings({
|
||||
...userSettings,
|
||||
hideAddResourceModal: hasClusters && hasWorkers
|
||||
});
|
||||
};
|
||||
|
||||
const NoResourceModal = (
|
||||
<ScrollerModal
|
||||
open={open}
|
||||
open={open && !hideModalTemporarily}
|
||||
footer={null}
|
||||
maskClosable={false}
|
||||
keyboard={false}
|
||||
closeIcon={null}
|
||||
destroyOnHidden={false}
|
||||
style={{
|
||||
top: '25%'
|
||||
}}
|
||||
onCancel={handleCancel}
|
||||
>
|
||||
<Content>
|
||||
@@ -145,7 +157,7 @@ export default function useAddResource() {
|
||||
</div>
|
||||
<div className="btn-wrapper">
|
||||
<Button onClick={handleCancel} type="default" style={{ flex: 1 }}>
|
||||
{intl.formatMessage({ id: 'clusters.create.skipfornow' })}
|
||||
{intl.formatMessage({ id: 'common.button.dontshowagain' })}
|
||||
</Button>
|
||||
<Button onClick={handleCreate} type="primary" style={{ flex: 1 }}>
|
||||
{contentInfo.btnText}
|
||||
|
||||
@@ -105,9 +105,8 @@ const useModelsColumns = ({
|
||||
<QuestionCircleOutlined className="m-l-5" />
|
||||
</Tooltip>
|
||||
),
|
||||
dataIndex: 'ready_replicas',
|
||||
key: 'ready_replicas',
|
||||
dataField: 'replicas',
|
||||
dataIndex: 'replicas',
|
||||
key: 'replicas',
|
||||
align: 'left',
|
||||
sorter: tableSorter(4),
|
||||
span: 4,
|
||||
|
||||
@@ -316,7 +316,14 @@ const Models: React.FC = () => {
|
||||
};
|
||||
|
||||
const handleOnSortChange = (order: TableOrder | Array<TableOrder>) => {
|
||||
const sortKeys = handleMultiSortChange(order);
|
||||
let orderList = Array.isArray(order) ? order : [order];
|
||||
if (orderList[0].columnKey === 'replicas') {
|
||||
orderList.push({
|
||||
columnKey: 'ready_replicas',
|
||||
order: orderList[0].order
|
||||
});
|
||||
}
|
||||
const sortKeys = handleMultiSortChange(orderList);
|
||||
setQueryParams((pre: any) => {
|
||||
return {
|
||||
...pre,
|
||||
|
||||
@@ -142,9 +142,8 @@ const GroundImages: React.FC<MessageProps> = forwardRef((props, ref) => {
|
||||
const params = {
|
||||
..._.omitBy(finalParameters, (value: string) => !value),
|
||||
seed:
|
||||
parameters.seed || parameters.random_seed
|
||||
? generateRandomNumber()
|
||||
: null,
|
||||
parameters.seed ||
|
||||
(parameters.random_seed ? generateRandomNumber() : null),
|
||||
stream: false,
|
||||
prompt: currentPrompt
|
||||
};
|
||||
|
||||
@@ -167,9 +167,8 @@ const GroundImages: React.FC<MessageProps> = forwardRef((props, ref) => {
|
||||
const params = {
|
||||
..._.omitBy(finalParameters, (value: string) => !value),
|
||||
seed:
|
||||
parameters.seed || parameters.random_seed
|
||||
? generateRandomNumber()
|
||||
: null,
|
||||
parameters.seed ||
|
||||
(parameters.random_seed ? generateRandomNumber() : null),
|
||||
stream: false,
|
||||
prompt: currentPrompt
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user