From f963ca6ae579ca1b9f899a25b977575d71487752 Mon Sep 17 00:00:00 2001
From: Peter KW <peter.k.w.96@gmail.com>
Date: Sat, 16 Mar 2024 02:15:39 +0100
Subject: [PATCH] A component for listing an array of projects where every
 project gets a link, made for YourProjectsPage.tsx

---
 frontend/src/Components/ProjectListUser.tsx | 35 +++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 frontend/src/Components/ProjectListUser.tsx

diff --git a/frontend/src/Components/ProjectListUser.tsx b/frontend/src/Components/ProjectListUser.tsx
new file mode 100644
index 0000000..0502159
--- /dev/null
+++ b/frontend/src/Components/ProjectListUser.tsx
@@ -0,0 +1,35 @@
+import { Link } from "react-router-dom";
+import { Project } from "../Types/Project";
+
+/**
+ * The props for the ProjectsProps component
+ */
+interface ProjectProps {
+  projects: Project[];
+}
+
+/**
+ * A list of projects for users, that links the user to the right project page
+ * thanks to the state property
+ * @param props - The projects to display
+ * @returns {JSX.Element} The project list
+ * @example
+ * const projects = [{ id: 1, name: "Random name" }];
+ * return <ProjectList projects={projects} />;
+ */
+
+export function ProjectListUser(props: ProjectProps): JSX.Element {
+  return (
+    <div>
+      <ul className="font-bold underline text-[30px] cursor-pointer">
+        {props.projects.map((project) => (
+          <Link to="/project" key={project.id} state={project.name}>
+            <li className="pt-5" key={project.id}>
+              {project.name}
+            </li>
+          </Link>
+        ))}
+      </ul>
+    </div>
+  );
+}