frontend/app/FibreDriversComponent.jsx (27 lines of code) (raw):

import React from 'react'; import PropTypes from 'prop-types'; class FibreDriversComponent extends React.Component { static propTypes = { entryList: PropTypes.object.isRequired, showDetails: PropTypes.bool }; renderSingleEntry(entry){ //{entry.driverName}@{entry.version}; dependencies {entry.dependencies.toLowerCase()}; loaded: {entry.loaded ? "yes" : "no"} return <li key={entry.driverName} className={entry.loaded ? "" : "driver-not-loaded"}> <span style={{display: "block"}}>{entry.driverName}</span> <ul className="addressList sub-list-deep" style={{display: this.props.showDetails ? "inherit" : "none" }}> <li className="small-info">{entry.getInfoString}</li> <li className="small-info">version: {entry.version}</li> <li className="small-info">dependencies {entry.dependencies.toLowerCase()}</li> <li className="small-info">loaded: {entry.loaded ? "yes" : "no"}</li> </ul> </li> } render(){ if(!this.props.entryList) return <span className="small-info">not present</span>; return <ul className="addressList">{ this.props.entryList.map(entry=>this.renderSingleEntry(entry)) }</ul> } } export default FibreDriversComponent;