import { CheckCircleOutlined } from '@ant-design/icons'; import { AutoTooltip, OverlayScroller } from '@gpustack/core-ui'; import { useIntl } from '@umijs/max'; import { Flex, Popover, Tag } from 'antd'; import _ from 'lodash'; import React from 'react'; import { categoryConfig } from '../../_components/model-tag'; import { ProviderModel } from '../config/types'; interface ProviderModelProps { dataList: ProviderModel[]; } const ProviderModels: React.FC = ({ dataList }) => { const iconsMap = { accessible: , inaccessible: null, none: null }; const intl = useIntl(); const head12Items = dataList.slice(0, 4); const restItems = dataList.slice(4); const renderModels = (dataList: ProviderModel[]) => { return ( <> {dataList.map((model, index) => ( {model.name} {categoryConfig[model.category]?.icon} ))} ); }; return (
{renderModels(head12Items)} {restItems.length > 0 && ( {renderModels(restItems)} } styles={{ root: { maxWidth: '400px' }, container: { paddingInlineEnd: 4 } }} > {intl.formatMessage( { id: 'providers.form.more' }, { count: restItems.length } )} )}
); }; export default ProviderModels;