diff --git a/src/components/FullNodeViewer/FullNodeViewer.js b/src/components/FullNodeViewer/FullNodeViewer.js deleted file mode 100644 index 7c2ac3717..000000000 --- a/src/components/FullNodeViewer/FullNodeViewer.js +++ /dev/null @@ -1,89 +0,0 @@ -import React from 'react'; -import cn from 'bem-cn-lite'; -import PropTypes from 'prop-types'; - -import InfoViewer from '../InfoViewer/InfoViewer'; -import ProgressViewer from '../ProgressViewer/ProgressViewer'; -import {PoolUsage} from '../PoolUsage/PoolUsage'; - -import {LOAD_AVERAGE_TIME_INTERVALS} from '../../utils/constants'; -import {calcUptime} from '../../utils'; - -import './FullNodeViewer.scss'; - -const b = cn('full-node-viewer'); - -class FullNodeViewer extends React.Component { - static propTypes = { - className: PropTypes.string, - node: PropTypes.object.isRequired, - backend: PropTypes.string, - singleClusterMode: PropTypes.bool, - }; - - static defaultProps = { - className: '', - }; - - render() { - const {node, className} = this.props; - - const endpointsInfo = node.Endpoints?.map(({Name, Address}) => ({ - label: Name, - value: Address, - })); - - const commonInfo = [ - {label: 'Version', value: node.Version}, - {label: 'Uptime', value: calcUptime(node.StartTime)}, - {label: 'DC', value: node.DataCenterDescription}, - {label: 'Rack', value: node.Rack}, - ]; - - const averageInfo = node.LoadAverage.map((load, loadIndex) => ({ - label: LOAD_AVERAGE_TIME_INTERVALS[`${loadIndex}`], - value: , - })); - - return ( -
- {node ? ( -
-
-
Pools
-
- {node.PoolStats.map((pool, poolIndex) => ( - - ))} -
-
- - {endpointsInfo && endpointsInfo.length && ( - - )} - - - - -
- ) : ( -
no data
- )} -
- ); - } -} - -export default FullNodeViewer; diff --git a/src/components/FullNodeViewer/FullNodeViewer.tsx b/src/components/FullNodeViewer/FullNodeViewer.tsx new file mode 100644 index 000000000..e631b58b2 --- /dev/null +++ b/src/components/FullNodeViewer/FullNodeViewer.tsx @@ -0,0 +1,73 @@ +import cn from 'bem-cn-lite'; + +import type {TSystemStateInfo} from '../../types/api/nodes'; + +import {LOAD_AVERAGE_TIME_INTERVALS} from '../../utils/constants'; +import {calcUptime} from '../../utils'; + +import InfoViewer from '../InfoViewer/InfoViewer'; +import ProgressViewer from '../ProgressViewer/ProgressViewer'; +import {PoolUsage} from '../PoolUsage/PoolUsage'; + +import './FullNodeViewer.scss'; + +const b = cn('full-node-viewer'); + +interface FullNodeViewerProps { + node: TSystemStateInfo | undefined; + className?: string; +} + +export const FullNodeViewer = ({node, className}: FullNodeViewerProps) => { + const endpointsInfo = node?.Endpoints?.map(({Name, Address}) => ({ + label: Name, + value: Address, + })); + + const commonInfo = [ + {label: 'Version', value: node?.Version}, + {label: 'Uptime', value: calcUptime(node?.StartTime)}, + {label: 'DC', value: node?.DataCenterDescription}, + {label: 'Rack', value: node?.Rack}, + ]; + + const averageInfo = node?.LoadAverage?.map((load, loadIndex) => ({ + label: LOAD_AVERAGE_TIME_INTERVALS[loadIndex], + value: , + })); + + return ( +
+ {node ? ( +
+
+
Pools
+
+ {node?.PoolStats?.map((pool, poolIndex) => ( + + ))} +
+
+ + {endpointsInfo && endpointsInfo.length && ( + + )} + + + + +
+ ) : ( +
no data
+ )} +
+ ); +}; diff --git a/src/containers/Node/Node.tsx b/src/containers/Node/Node.tsx index 5d727044e..6c316624d 100644 --- a/src/containers/Node/Node.tsx +++ b/src/containers/Node/Node.tsx @@ -10,10 +10,10 @@ import {Link} from 'react-router-dom'; import {TABLETS, STORAGE, NODE_PAGES, OVERVIEW, STRUCTURE} from './NodePages'; import {Tablets} from '../Tablets'; import Storage from '../Storage/Storage'; -import NodeOverview from './NodeOverview/NodeOverview'; import NodeStructure from './NodeStructure/NodeStructure'; import {Loader} from '../../components/Loader'; import {BasicNodeViewer} from '../../components/BasicNodeViewer'; +import {FullNodeViewer} from '../../components/FullNodeViewer/FullNodeViewer'; import {getNodeInfo, resetNode} from '../../store/reducers/node/node'; import routes, {createHref, parseQuery} from '../../routes'; @@ -128,7 +128,7 @@ function Node(props: NodeProps) { } case OVERVIEW: { - return ; + return ; } case STRUCTURE: { diff --git a/src/containers/Node/NodeOverview/NodeOverview.scss b/src/containers/Node/NodeOverview/NodeOverview.scss deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/containers/Node/NodeOverview/NodeOverview.tsx b/src/containers/Node/NodeOverview/NodeOverview.tsx deleted file mode 100644 index 6c88fd78b..000000000 --- a/src/containers/Node/NodeOverview/NodeOverview.tsx +++ /dev/null @@ -1,21 +0,0 @@ - -//@ts-ignore -import FullNodeViewer from '../../../components/FullNodeViewer/FullNodeViewer'; -import {backend} from '../../../store'; - -interface NodeOverviewProps { - node: any; - className?: string; -} - -function NodeOverview({node, className}: NodeOverviewProps) { - return ( - - ); -} - -export default NodeOverview;