summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-05-17 12:16:10 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2021-05-18 15:46:43 +0200
commit53623fad76274e39206b8e073e371775ea96946b (patch)
treea57d23d9c1f6a924753dbb4a3a9bc9cbca5385dd /opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js
parent688a25e560db3355e2a3ee369c2e6f4b55aab2a6 (diff)
ui: Migrate to FontAwesome 5 React library
This change updates the frontend to use the FontAwesome 5 React library that renders SVG icons as opposed to CSS icon fonts. This migration resolves a couple of issues we had with server-side rendering of the previous FontAwesome icons.
Diffstat (limited to 'opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js')
-rw-r--r--opendc-web/opendc-web-ui/src/components/app/sidebars/project/TopologyListComponent.js21
1 files changed, 10 insertions, 11 deletions
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 d5627abc..ac58669b 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,9 +1,10 @@
import PropTypes from 'prop-types'
import React from 'react'
import { Topology } from '../../../../shapes'
-import FontAwesome from 'react-fontawesome'
import { Button, Col, Row } from 'reactstrap'
import classNames from 'classnames'
+import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
+import { faPlus, faPlay, faTrash } from '@fortawesome/free-solid-svg-icons'
function TopologyListComponent({ topologies, currentTopologyId, onChooseTopology, onNewTopology, onDeleteTopology }) {
return (
@@ -11,7 +12,7 @@ function TopologyListComponent({ topologies, currentTopologyId, onChooseTopology
<h2>
Topologies
<Button color="primary" outline className="float-right" onClick={onNewTopology}>
- <FontAwesome name="plus" />
+ <FontAwesomeIcon icon={faPlus} />
</Button>
</h2>
@@ -26,19 +27,17 @@ function TopologyListComponent({ topologies, currentTopologyId, onChooseTopology
{topology.name}
</Col>
<Col xs="5" className="text-right">
- <Button
- color="primary"
- outline
- className="mr-1 fa fa-play"
- onClick={() => onChooseTopology(topology._id)}
- />
+ <Button color="primary" outline className="mr-1" onClick={() => onChooseTopology(topology._id)}>
+ <FontAwesomeIcon icon={faPlay} />
+ </Button>
<Button
color="danger"
outline
- className="fa fa-trash"
- disable={idx === 0}
+ disabled={idx === 0}
onClick={() => (idx !== 0 ? onDeleteTopology(topology._id) : undefined)}
- />
+ >
+ <FontAwesomeIcon icon={faTrash} />
+ </Button>
</Col>
</Row>
))}