|
|
|
|
@ -1,6 +1,6 @@ |
|
|
|
|
import type { IInstanceStatus, IStats } from '@rocket.chat/core-typings'; |
|
|
|
|
import { Callout, ButtonGroup, Button, Icon } from '@rocket.chat/fuselage'; |
|
|
|
|
import { usePermission, useServerInformation, useEndpoint, useTranslation } from '@rocket.chat/ui-contexts'; |
|
|
|
|
import { usePermission, useServerInformation, useEndpoint, useTranslation, useMethod } from '@rocket.chat/ui-contexts'; |
|
|
|
|
import React, { useState, useEffect, memo, ReactElement } from 'react'; |
|
|
|
|
|
|
|
|
|
import Page from '../../../components/Page'; |
|
|
|
|
@ -18,10 +18,10 @@ const InformationRoute = (): ReactElement => { |
|
|
|
|
const [isLoading, setLoading] = useState(true); |
|
|
|
|
const [error, setError] = useState(false); |
|
|
|
|
const [statistics, setStatistics] = useState<IStats>(); |
|
|
|
|
const [instances, setInstances] = useState<IInstanceStatus[]>(); |
|
|
|
|
const [instances, setInstances] = useState<IInstanceStatus[]>([]); |
|
|
|
|
const [fetchStatistics, setFetchStatistics] = useState<fetchStatisticsCallback>(() => (): void => undefined); |
|
|
|
|
const getStatistics = useEndpoint('GET', '/v1/statistics'); |
|
|
|
|
const getInstances = useEndpoint('GET', '/v1/instances.get'); |
|
|
|
|
const getInstances = useMethod('instances/get'); |
|
|
|
|
|
|
|
|
|
useEffect(() => { |
|
|
|
|
let didCancel = false; |
|
|
|
|
@ -31,7 +31,7 @@ const InformationRoute = (): ReactElement => { |
|
|
|
|
setError(false); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
const [statistics, { instances }] = await Promise.all([getStatistics({ refresh: refresh ? 'true' : 'false' }), getInstances()]); |
|
|
|
|
const [statistics, instances] = await Promise.all([getStatistics({ refresh: refresh ? 'true' : 'false' }), getInstances()]); |
|
|
|
|
|
|
|
|
|
if (didCancel) { |
|
|
|
|
return; |
|
|
|
|
@ -98,7 +98,7 @@ const InformationRoute = (): ReactElement => { |
|
|
|
|
canViewStatistics={canViewStatistics} |
|
|
|
|
info={info} |
|
|
|
|
statistics={statistics} |
|
|
|
|
instances={instances || []} |
|
|
|
|
instances={instances} |
|
|
|
|
onClickRefreshButton={handleClickRefreshButton} |
|
|
|
|
onClickDownloadInfo={handleClickDownloadInfo} |
|
|
|
|
/> |
|
|
|
|
|