summaryrefslogtreecommitdiff
path: root/opendc-web/opendc-web-ui/src/components/projects/ProjectList.js
blob: 90d423261901c9b0af064dadb46ef19e6e2c0c58 (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
import PropTypes from 'prop-types'
import React from 'react'
import { Authorization } from '../../shapes'
import ProjectRow from './ProjectRow'

const ProjectList = ({ 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 projects here yet...</strong> Add some with the 'New Project' button!
                </div>
            ) : (
                <table className="table table-striped">
                    <thead>
                        <tr>
                            <th>Project name</th>
                            <th>Last edited</th>
                            <th>Access rights</th>
                            <th />
                        </tr>
                    </thead>
                    <tbody>
                        {authorizations.map((authorization) => (
                            <ProjectRow projectAuth={authorization} key={authorization.project._id} />
                        ))}
                    </tbody>
                </table>
            )}
        </div>
    )
}

ProjectList.propTypes = {
    authorizations: PropTypes.arrayOf(Authorization).isRequired,
}

export default ProjectList