summaryrefslogtreecommitdiff
path: root/frontend/src/components/projects/ProjectAuthList.js
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/components/projects/ProjectAuthList.js')
-rw-r--r--frontend/src/components/projects/ProjectAuthList.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/frontend/src/components/projects/ProjectAuthList.js b/frontend/src/components/projects/ProjectAuthList.js
new file mode 100644
index 00000000..5a2c6695
--- /dev/null
+++ b/frontend/src/components/projects/ProjectAuthList.js
@@ -0,0 +1,43 @@
+import PropTypes from 'prop-types'
+import React from 'react'
+import Shapes from '../../shapes/index'
+import ProjectAuthRow from './ProjectAuthRow'
+
+const ProjectAuthList = ({ 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 => (
+ <ProjectAuthRow
+ projectAuth={authorization}
+ key={authorization.project._id}
+ />
+ ))}
+ </tbody>
+ </table>
+ )}
+ </div>
+ )
+}
+
+ProjectAuthList.propTypes = {
+ authorizations: PropTypes.arrayOf(Shapes.Authorization).isRequired,
+}
+
+export default ProjectAuthList