|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import React from 'react'; |
|
|
import CardPro from '../../common/ui/CardPro'; |
|
|
import LogsTable from './UsageLogsTable'; |
|
|
import LogsActions from './UsageLogsActions'; |
|
|
import LogsFilters from './UsageLogsFilters'; |
|
|
import ColumnSelectorModal from './modals/ColumnSelectorModal'; |
|
|
import UserInfoModal from './modals/UserInfoModal'; |
|
|
import { useLogsData } from '../../../hooks/usage-logs/useUsageLogsData'; |
|
|
import { useIsMobile } from '../../../hooks/common/useIsMobile'; |
|
|
import { createCardProPagination } from '../../../helpers/utils'; |
|
|
|
|
|
const LogsPage = () => { |
|
|
const logsData = useLogsData(); |
|
|
const isMobile = useIsMobile(); |
|
|
|
|
|
return ( |
|
|
<> |
|
|
{/* Modals */} |
|
|
<ColumnSelectorModal {...logsData} /> |
|
|
<UserInfoModal {...logsData} /> |
|
|
|
|
|
{/* Main Content */} |
|
|
<CardPro |
|
|
type='type2' |
|
|
statsArea={<LogsActions {...logsData} />} |
|
|
searchArea={<LogsFilters {...logsData} />} |
|
|
paginationArea={createCardProPagination({ |
|
|
currentPage: logsData.activePage, |
|
|
pageSize: logsData.pageSize, |
|
|
total: logsData.logCount, |
|
|
onPageChange: logsData.handlePageChange, |
|
|
onPageSizeChange: logsData.handlePageSizeChange, |
|
|
isMobile: isMobile, |
|
|
t: logsData.t, |
|
|
})} |
|
|
t={logsData.t} |
|
|
> |
|
|
<LogsTable {...logsData} /> |
|
|
</CardPro> |
|
|
</> |
|
|
); |
|
|
}; |
|
|
|
|
|
export default LogsPage; |
|
|
|