import IconFont from '@/components/icon-font'; import { TABLE_SORT_DIRECTIONS } from '@/config/settings'; import NoResult from '@/pages/_components/no-result'; import PageBox from '@/pages/_components/page-box'; import { useIntl } from '@umijs/max'; import { ConfigProvider, Table } from 'antd'; import _ from 'lodash'; import { useEffect, useState } from 'react'; import { FilterOptionType } from '../config/types'; import useUsersColumns from '../hooks/use-models-columns'; import useQueryBreakdownList from '../services/use-query-breakdown-list'; import getBreakdownRowKey from '../utils/get-breakdown-row-key'; const Models: React.FC<{ models: FilterOptionType[]; dateRange: { start_date: string; end_date: string }; scope: string; refreshKey?: number; }> = ({ models, dateRange, scope, refreshKey = 0 }) => { const intl = useIntl(); const { loading, dataSource, fetchData } = useQueryBreakdownList({ key: 'modelsTableData' }); const [queryParams, setQueryParams] = useState<{ page: number; perPage: number; sort_by: string; }>({ page: 1, perPage: 10, sort_by: '' }); const handleTableChange = (pagination: any, filters: any, sorter: any) => {}; const handlePageChange = (page: number, pageSize: number) => {}; const columns = useUsersColumns(); const renderEmpty = (type?: string) => { if (type !== 'Table') return; return ( } filters={_.omit(queryParams, ['sort_by'])} noFoundText={intl.formatMessage({ id: 'noresult.mymodels.nofound' })} title={intl.formatMessage({ id: 'noresult.deployments.title' })} subTitle={intl.formatMessage({ id: 'noresult.deployments.subTitle' })} > ); }; useEffect(() => { fetchData({ ...queryParams, group_by: ['model'], filters: { models }, scope: scope, ...dateRange }); }, [ dateRange.end_date, dateRange.start_date, models, queryParams.page, queryParams.perPage, queryParams.sort_by, refreshKey, scope ]); return ( <>
); }; export default Models;