From 24147cba0f5723be3525e8f40d1954144841629b Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Thu, 13 May 2021 13:00:00 +0200 Subject: ui: Address technical dept in frontend --- .../app/sidebars/project/TopologyListComponent.js | 91 ++++++++++------------ 1 file changed, 40 insertions(+), 51 deletions(-) (limited to 'opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js') diff --git a/opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js b/opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js index 2f42f7e4..a7d78c4a 100644 --- a/opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js +++ b/opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js @@ -1,60 +1,49 @@ import PropTypes from 'prop-types' import React from 'react' -import Shapes from '../../../../shapes' +import { Topology } from '../../../../shapes' import FontAwesome from 'react-fontawesome' -class TopologyListComponent extends React.Component { - static propTypes = { - topologies: PropTypes.arrayOf(Shapes.Topology), - currentTopologyId: PropTypes.string, - onChooseTopology: PropTypes.func.isRequired, - onNewTopology: PropTypes.func.isRequired, - onDeleteTopology: PropTypes.func.isRequired, - } +function TopologyListComponent({ topologies, currentTopologyId, onChooseTopology, onNewTopology, onDeleteTopology }) { + return ( +
+

+ Topologies + +

- onChoose(id) { - this.props.onChooseTopology(id) - } - - onDelete(id) { - this.props.onDeleteTopology(id) - } - - render() { - return ( -
-

- Topologies - -

- - {this.props.topologies.map((topology, idx) => ( -
-
- {topology.name} -
-
- this.onChoose(topology._id)} - /> - (idx !== 0 ? this.onDelete(topology._id) : undefined)} - /> -
+ {topologies.map((topology, idx) => ( +
+
+ {topology.name}
- ))} -
- ) - } +
+ onChooseTopology(topology._id)} + /> + (idx !== 0 ? onDeleteTopology(topology._id) : undefined)} + /> +
+
+ ))} +
+ ) +} + +TopologyListComponent.propTypes = { + topologies: PropTypes.arrayOf(Topology), + currentTopologyId: PropTypes.string, + onChooseTopology: PropTypes.func.isRequired, + onNewTopology: PropTypes.func.isRequired, + onDeleteTopology: PropTypes.func.isRequired, } export default TopologyListComponent -- cgit v1.2.3