summaryrefslogtreecommitdiff
path: root/src/components/simulations/SimulationAuthList.js
blob: f29dc96d4240adaacb520514e00ad8ebceedbf7d (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
39
40
41
42
43
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;