fix: default instance type, storageMode

This commit is contained in:
jialin
2026-05-26 22:40:02 +08:00
committed by jialin
parent a51f44c135
commit 2f04e01f4f
21 changed files with 213 additions and 185 deletions
@@ -1,14 +1,18 @@
import { useQueryData } from '@gpustack/core-ui';
import { useCallback } from 'react';
import React from 'react';
import { queryGPUServiceInstanceTypes } from '../apis';
import { getAcceleratorMax } from '../config';
import { InstanceTypeItem } from '../config/types';
type InstanceType = InstanceTypeItem & {
disabled?: boolean;
};
export default function useQueryInstanceTypes() {
const fetchDetail = useCallback(
(params: Global.SearchParams = { page: 1, perPage: 100 }, options?: any) =>
queryGPUServiceInstanceTypes(params, options),
[]
);
const fetchDetail = (
params: Global.SearchParams = { page: 1, perPage: 100 },
options?: any
) => queryGPUServiceInstanceTypes(params, options);
const { detailData, loading, cancelRequest, fetchData } = useQueryData<
Global.PageResponse<InstanceTypeItem>,
@@ -18,10 +22,31 @@ export default function useQueryInstanceTypes() {
key: 'instanceTypes'
});
const [dataList, setDataList] = React.useState<InstanceType[]>([]);
const isAvailable = (item: InstanceTypeItem) => {
if (!item.spec?.acceleratable) return true;
return getAcceleratorMax(item.status?.acceleratorTiers) > 0;
};
const queryInstanceTypes = async (
params: Global.SearchParams = { page: -1 }
) => {
const res = await fetchData(params);
const list = (res?.items || []).map((item) => ({
...item,
disabled: !isAvailable(item)
}));
console.log('queryInstanceTypes', list);
setDataList(list);
return list;
};
return {
detailData,
detailData: dataList,
loading,
cancelRequest,
fetchData
fetchData: queryInstanceTypes
};
}