/ embark-ui / src / components / Processes.js
Processes.js
 1  import PropTypes from "prop-types";
 2  import React from 'react';
 3  import {Row, Col} from 'reactstrap';
 4  import classNames from 'classnames';
 5  import Widget02 from './Widget02';
 6  
 7  function colorClasses(state){
 8    return classNames('', {
 9      'success': state === 'on',
10      'danger': state !== 'on'
11    });
12  }
13  
14  function iconClasses(state){
15    return classNames('fa', {
16      'fa-check': state === 'on',
17      'fa-times': state !== 'on'
18    });
19  }
20  
21  const Process = ({process}) => (
22    <Col xs={12} sm={6} md={4} xl={3}>
23      <Widget02 header={process.name} mainText={process.description} icon={iconClasses(process.state)} color={colorClasses(process.state)} variant="1" />
24    </Col>
25  );
26  
27  Process.propTypes = {
28    process: PropTypes.object
29  };
30  
31  const Processes = ({processes}) => (
32    <Row>
33      {processes.map((process) => <Process key={process.name} process={process} />)}
34    </Row>
35  );
36  
37  Processes.propTypes = {
38    processes: PropTypes.arrayOf(PropTypes.object)
39  };
40  
41  export default Processes;