summaryrefslogtreecommitdiff
path: root/src/components/simulations/SimulationAuthList.js
blob: 27b141fe60764034418d2dfd38445aa9c55e702b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import PropTypes from 'prop-types';
import React from 'react';
import Shapes from "../../shapes/index";
import SimulationAuthRow from "./SimulationAuthRow";

const SimulationAuthList = ({authorizations}) => {
    return (
        <div className="vertically-expanding-container">
            {authorizations.length === 0 ?
                <div className="alert alert-info">
                    <span className="info-icon fa fa-question-circle mr-2"/>
                    <strong>No simulations here yet...</strong> Add some with the 'New Simulation' button!
                </div> :
                <table className="table table-striped">
                    <thead>
                    <tr>
                        <th>Simulation name</th>
                        <th>Last edited</th>
                        <th>Access rights</th>
                        <th/>
                    </tr>
                    </thead>
                    <tbody>
                    {authorizations.map(authorization => (
                        <SimulationAuthRow simulationAuth={authorization} key={authorization.simulation.id}/>
                    ))}
                    </tbody>
                </table>
            }
        </div>
    );
};

SimulationAuthList.propTypes = {
    authorizations: PropTypes.arrayOf(Shapes.Authorization).isRequired,
};

export default SimulationAuthList;