diff --git a/client/Database/database.js b/client/Database/database.js
index aeca820bd4063c81968c942859c6ba7a8672822f..b8f9ba21f8953ca7d19e2b98dccfe060f832ceb8 100644
--- a/client/Database/database.js
+++ b/client/Database/database.js
@@ -1,62 +1,24 @@
-var __awaiter =
-  (this && this.__awaiter) ||
-  function (thisArg, _arguments, P, generator) {
-    function adopt(value) {
-      return value instanceof P
-        ? value
-        : new P(function (resolve) {
-            resolve(value);
-          });
-    }
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
     return new (P || (P = Promise))(function (resolve, reject) {
-      function fulfilled(value) {
-        try {
-          step(generator.next(value));
-        } catch (e) {
-          reject(e);
-        }
-      }
-      function rejected(value) {
-        try {
-          step(generator["throw"](value));
-        } catch (e) {
-          reject(e);
-        }
-      }
-      function step(result) {
-        result.done
-          ? resolve(result.value)
-          : adopt(result.value).then(fulfilled, rejected);
-      }
-      step((generator = generator.apply(thisArg, _arguments || [])).next());
+        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+        step((generator = generator.apply(thisArg, _arguments || [])).next());
     });
-  };
+};
 import { initializeApp } from "firebase/app";
-import {
-  getFirestore,
-  collection,
-  doc,
-  setDoc,
-  updateDoc,
-  arrayUnion,
-  getDocs,
-  getDoc,
-  where,
-  query,
-  deleteDoc,
-  orderBy,
-  arrayRemove,
-} from "firebase/firestore";
+import { getFirestore, collection, doc, setDoc, updateDoc, arrayUnion, getDocs, getDoc, where, query, deleteDoc, orderBy, arrayRemove, } from "firebase/firestore";
 import { getAuth } from "firebase/auth";
 // C3 solutions databasen - ska användas för P&S
 const firebaseConfig = {
-  apiKey: "AIzaSyB7n9YIDCmeyzeZzteFnXqOUBijzEO59ls",
-  authDomain: "backup-277c3.firebaseapp.com",
-  projectId: "backup-277c3",
-  storageBucket: "backup-277c3.appspot.com",
-  messagingSenderId: "296015398098",
-  appId: "1:296015398098:web:71e1d1ec2b0c370e5a590b",
-  measurementId: "G-E933CXWWCG",
+    apiKey: "AIzaSyB7n9YIDCmeyzeZzteFnXqOUBijzEO59ls",
+    authDomain: "backup-277c3.firebaseapp.com",
+    projectId: "backup-277c3",
+    storageBucket: "backup-277c3.appspot.com",
+    messagingSenderId: "296015398098",
+    appId: "1:296015398098:web:71e1d1ec2b0c370e5a590b",
+    measurementId: "G-E933CXWWCG",
 };
 //Backup databas - ska användas av R&D
 // const firebaseConfig = {
@@ -93,170 +55,133 @@ const userTaskCollection = collection(db, "userTask");
 // Function to create user a new user in database
 // takes in userId, unitId, firstname, lastname, email and password as string
 // throws error if transaction failed
-function createUser(
-  hsaId,
-  unitId,
-  firstName,
-  lastName,
-  email,
-  manager,
-  role,
-  uid
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    //Passwords needs to be hashed, part of atuh0?
-    try {
-      const userRef = doc(userCollection, hsaId);
-      yield setDoc(userRef, {
-        id: userRef.id,
-        uid: uid,
-        unitId: unitId,
-        firstName: firstName,
-        lastName: lastName,
-        email: email,
-        role: role,
-        manager: manager,
-        notes: "",
-      });
-    } catch (error) {
-      console.log(error);
-    }
-  });
+function createUser(hsaId, unitId, firstName, lastName, email, manager, role, uid) {
+    return __awaiter(this, void 0, void 0, function* () {
+        //Passwords needs to be hashed, part of atuh0?
+        try {
+            const userRef = doc(userCollection, hsaId);
+            yield setDoc(userRef, {
+                id: userRef.id,
+                uid: uid,
+                unitId: unitId,
+                firstName: firstName,
+                lastName: lastName,
+                email: email,
+                role: role,
+                manager: manager,
+                notes: "",
+            });
+        }
+        catch (error) {
+            console.log(error);
+        }
+    });
 }
-function createImprovementWork(
-  id,
-  name,
-  currentStage,
-  content, // Är detta description bör detta förtydligas. JA
-  unitId,
-  purpose, //Bör tas bort motsvaras av p2- mål med projektet
-  patientRiskLevel,
-  area,
-  projectLeader, //Adding projectleader & members to the project
-  members,
-  resources = "Inte definerat ännu",
-  hospitalId,
-  //Questions in planning stage
-  p1 = "",
-  p2 = "",
-  p3 = "",
-  p4 = "",
-  p5 = "",
-  p6 = "",
-  p7 = "",
-  //Questions in Doing (G) stage
-  g1 = "",
-  g2 = "",
-  g3 = "",
-  g4 = "",
-  g5 = "",
-  //Questions in stydy stage
-  s1 = "",
-  s2 = "",
-  s3 = "",
-  //Questions in acting stage
-  a1 = "",
-  a2 = "",
-  a3 = "",
-  a4 = ""
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    //ID has to be a string
-    try {
-      const improvementWorkData = {
-        name: name,
-        lowerCaseName: name.toLowerCase(),
-        currentStage: currentStage,
-        content: content,
-        purpose: purpose,
-        dateStarted: new Date(),
-        unitId: unitId,
-        completed: false,
-        ongoing: false,
-        patientRiskLevel: patientRiskLevel,
-        area: area,
-        p1: p1,
-        p2: p2,
-        p3: p3,
-        p4: p4,
-        p5: p5,
-        p6: p6,
-        p7: p7,
-        g1: g1,
-        g2: g2,
-        g3: g3,
-        g4: g4,
-        g5: g5,
-        s1: s1,
-        s2: s2,
-        s3: s3,
-        a1: a1,
-        a2: a2,
-        a3: a3,
-        a4: a4,
-        resources: resources,
-        endDate: new Date(0),
-        hospitalId: hospitalId,
-      };
-      if (id) {
-        const improvementWorkRef = doc(improvementWorkCollection, id);
-        yield setDoc(
-          improvementWorkRef,
-          Object.assign({ id: improvementWorkRef.id }, improvementWorkData)
-        );
-      } else {
-        const improvementWorkRef = doc(improvementWorkCollection);
-        yield setDoc(improvementWorkRef, improvementWorkData);
-        id = improvementWorkRef.id;
-      }
-      //adding the projectleader and users to the project
-      addMemberToImprovementWork(projectLeader, id, false, true);
-      members.forEach((member) => {
-        addMemberToImprovementWork(member, id, false, false);
-      });
-    } catch (error) {
-      console.log("Error creating improvementWork: ", error);
-      throw error;
-    }
-  });
+function createImprovementWork(id, name, currentStage, content, // Är detta description bör detta förtydligas. JA
+unitId, purpose, //Bör tas bort motsvaras av p2- mål med projektet
+patientRiskLevel, area, projectLeader, //Adding projectleader & members to the project
+members, resources = "Inte definerat ännu", hospitalId, 
+//Questions in planning stage
+p1 = "", p2 = "", p3 = "", p4 = "", p5 = "", p6 = "", p7 = "", 
+//Questions in Doing (G) stage
+g1 = "", g2 = "", g3 = "", g4 = "", g5 = "", 
+//Questions in stydy stage
+s1 = "", s2 = "", s3 = "", 
+//Questions in acting stage
+a1 = "", a2 = "", a3 = "", a4 = "") {
+    return __awaiter(this, void 0, void 0, function* () {
+        //ID has to be a string
+        try {
+            const improvementWorkData = {
+                name: name,
+                lowerCaseName: name.toLowerCase(),
+                currentStage: currentStage,
+                content: content,
+                purpose: purpose,
+                dateStarted: new Date(),
+                unitId: unitId,
+                completed: false,
+                ongoing: false,
+                patientRiskLevel: patientRiskLevel,
+                area: area,
+                p1: p1,
+                p2: p2,
+                p3: p3,
+                p4: p4,
+                p5: p5,
+                p6: p6,
+                p7: p7,
+                g1: g1,
+                g2: g2,
+                g3: g3,
+                g4: g4,
+                g5: g5,
+                s1: s1,
+                s2: s2,
+                s3: s3,
+                a1: a1,
+                a2: a2,
+                a3: a3,
+                a4: a4,
+                resources: resources,
+                endDate: new Date(0),
+                hospitalId: hospitalId,
+            };
+            if (id) {
+                const improvementWorkRef = doc(improvementWorkCollection, id);
+                yield setDoc(improvementWorkRef, Object.assign({ id: improvementWorkRef.id }, improvementWorkData));
+            }
+            else {
+                const improvementWorkRef = doc(improvementWorkCollection);
+                yield setDoc(improvementWorkRef, improvementWorkData);
+                id = improvementWorkRef.id;
+            }
+            //adding the projectleader and users to the project
+            addMemberToImprovementWork(projectLeader, id, false, true);
+            members.forEach((member) => {
+                addMemberToImprovementWork(member, id, false, false);
+            });
+        }
+        catch (error) {
+            console.log("Error creating improvementWork: ", error);
+            throw error;
+        }
+    });
 }
 function addMemberToTask(userHsaId, taskId, isResponsibleFor) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const relationRef = doc(userTaskCollection);
-      yield setDoc(relationRef, {
-        id: relationRef.id,
-        userHsaId: userHsaId,
-        taskId: taskId,
-        isResponsibleFor: isResponsibleFor,
-      });
-    } catch (error) {
-      console.log("Error adding member to task: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const relationRef = doc(userTaskCollection);
+            yield setDoc(relationRef, {
+                id: relationRef.id,
+                userHsaId: userHsaId,
+                taskId: taskId,
+                isResponsibleFor: isResponsibleFor,
+            });
+        }
+        catch (error) {
+            console.log("Error adding member to task: ", error);
+            throw error;
+        }
+    });
 }
-function addMemberToImprovementWork(
-  userHsaId,
-  improvementWorkId,
-  isOwner,
-  isResponsibleFor
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const relationRef = doc(userImprovementWorkCollection);
-      yield setDoc(relationRef, {
-        id: relationRef.id,
-        userHsaId: userHsaId,
-        improvementWorkId: improvementWorkId,
-        isOwner: isOwner,
-        isResponsibleFor: isResponsibleFor,
-      });
-    } catch (error) {
-      console.log("Error adding member to improvementWork: ", error);
-      throw error;
-    }
-  });
+function addMemberToImprovementWork(userHsaId, improvementWorkId, isOwner, isResponsibleFor) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const relationRef = doc(userImprovementWorkCollection);
+            yield setDoc(relationRef, {
+                id: relationRef.id,
+                userHsaId: userHsaId,
+                improvementWorkId: improvementWorkId,
+                isOwner: isOwner,
+                isResponsibleFor: isResponsibleFor,
+            });
+        }
+        catch (error) {
+            console.log("Error adding member to improvementWork: ", error);
+            throw error;
+        }
+    });
 }
 /**
  * async function deleteSuggestion(suggestionId: string): Promise<void> {
@@ -270,368 +195,326 @@ function addMemberToImprovementWork(
 }
  */
 function removeMemberFromImprovementWork(userHsaId, improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let constraints = [];
-      if (userHsaId && improvementWorkId) {
-        constraints.push(where("improvementWorkId", "==", improvementWorkId));
-        constraints.push(where("userHsaId", "==", userHsaId));
-        const q = query(userImprovementWorkCollection, ...constraints);
-        const querySnapshot = yield getDocs(q);
-        if (!querySnapshot.empty) {
-          const docSnapshot = querySnapshot.docs[0];
-          yield deleteDoc(doc(db, "userImprovementWork", docSnapshot.id));
-          console.log(
-            "userImprovementWork with id ",
-            docSnapshot.id,
-            " deleted"
-          );
-        }
-      } else {
-        console.log(
-          "Both improvementWorkId and userHsaId need to be provided!"
-        );
-      }
-    } catch (error) {
-      console.log("Error removing member from improvementWork: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let constraints = [];
+            if (userHsaId && improvementWorkId) {
+                constraints.push(where("improvementWorkId", "==", improvementWorkId));
+                constraints.push(where("userHsaId", "==", userHsaId));
+                const q = query(userImprovementWorkCollection, ...constraints);
+                const querySnapshot = yield getDocs(q);
+                if (!querySnapshot.empty) {
+                    const docSnapshot = querySnapshot.docs[0];
+                    yield deleteDoc(doc(db, "userImprovementWork", docSnapshot.id));
+                    console.log("userImprovementWork with id ", docSnapshot.id, " deleted");
+                }
+            }
+            else {
+                console.log("Both improvementWorkId and userHsaId need to be provided!");
+            }
+        }
+        catch (error) {
+            console.log("Error removing member from improvementWork: ", error);
+            throw error;
+        }
+    });
 }
-function createTaskOnImprovementWork(
-  taskId,
-  improvementWorkId,
-  name,
-  deadlineDate,
-  startDate,
-  stage,
-  content
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const taskData = {
-        improvementWorkId,
-        name,
-        deadlineDate,
-        startDate,
-        stage,
-        content,
-        completed: false,
-      };
-      if (taskId) {
-        const taskRef = doc(taskCollection, taskId);
-        yield setDoc(taskRef, Object.assign({ id: taskRef.id }, taskData));
-      } else {
-        const taskRef = doc(taskCollection);
-        yield setDoc(taskRef, taskData);
-      }
-    } catch (error) {
-      console.log("Error creating task: ", error);
-      throw error;
-    }
-  });
+function createTaskOnImprovementWork(taskId, improvementWorkId, name, deadlineDate, startDate, stage, content) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const taskData = {
+                improvementWorkId,
+                name,
+                deadlineDate,
+                startDate,
+                stage,
+                content,
+                completed: false,
+            };
+            if (taskId) {
+                const taskRef = doc(taskCollection, taskId);
+                yield setDoc(taskRef, Object.assign({ id: taskRef.id }, taskData));
+            }
+            else {
+                const taskRef = doc(taskCollection);
+                yield setDoc(taskRef, taskData);
+            }
+        }
+        catch (error) {
+            console.log("Error creating task: ", error);
+            throw error;
+        }
+    });
 }
 //add a document to a improvementWork
 // takes in, document url, name and improvementWork id refering to as string
 // throws error if transaction failed
 function createdDocumentInKnowledgeBank(documentUrl, name, projectId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const docRef = doc(knowledgeDocumentCollection);
-      yield setDoc(docRef, {
-        id: docRef.id,
-        documentUrl: documentUrl,
-        name: name,
-        projectId: projectId,
-      });
-    } catch (error) {
-      console.log("Error adding document: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const docRef = doc(knowledgeDocumentCollection);
+            yield setDoc(docRef, {
+                id: docRef.id,
+                documentUrl: documentUrl,
+                name: name,
+                projectId: projectId,
+            });
+        }
+        catch (error) {
+            console.log("Error adding document: ", error);
+            throw error;
+        }
+    });
 }
 //add a document to a improvementWork
 // takes in, document url, name and improvementWork id refering to as string
 // throws error if transaction failed
 function addDocumentToImprovementWork(documentUrl, name, improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const improvementWorkRef = doc(
-        improvementWorkCollection,
-        improvementWorkId
-      );
-      const docRef = doc(improvementWorkRef, "documents");
-      yield setDoc(docRef, {
-        id: docRef.id,
-        documentUrl: documentUrl,
-        timestamp: new Date(),
-        name: name,
-      });
-    } catch (error) {
-      console.log("Error adding document: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const improvementWorkRef = doc(improvementWorkCollection, improvementWorkId);
+            const docRef = doc(improvementWorkRef, "documents");
+            yield setDoc(docRef, {
+                id: docRef.id,
+                documentUrl: documentUrl,
+                timestamp: new Date(),
+                name: name,
+            });
+        }
+        catch (error) {
+            console.log("Error adding document: ", error);
+            throw error;
+        }
+    });
 }
 function getDocumentsByImprovementWork(improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      console.log("Getting documents for improvementwork: ", improvementWorkId);
-      // Query the userImprovementWork collection for relations involving this user
-      const q = query(
-        knowledgeDocumentCollection,
-        where("projectId", "==", improvementWorkId)
-      );
-      const querySnapshot = yield getDocs(q);
-      // Fetch each related improvementWork document
-      const documents = [];
-      for (const doc of querySnapshot.docs) {
-        const documentId = doc.data().id;
-        const documentDoc = yield getObjectById(
-          "knowledgeDocument",
-          documentId
-        );
-        documents.push(documentDoc);
-      }
-      return documents;
-    } catch (error) {
-      console.error("Error getting documents for improvmentwork: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            console.log("Getting documents for improvementwork: ", improvementWorkId);
+            // Query the userImprovementWork collection for relations involving this user
+            const q = query(knowledgeDocumentCollection, where("projectId", "==", improvementWorkId));
+            const querySnapshot = yield getDocs(q);
+            // Fetch each related improvementWork document
+            const documents = [];
+            for (const doc of querySnapshot.docs) {
+                const documentId = doc.data().id;
+                const documentDoc = yield getObjectById("knowledgeDocument", documentId);
+                documents.push(documentDoc);
+            }
+            return documents;
+        }
+        catch (error) {
+            console.error("Error getting documents for improvmentwork: ", error);
+            throw error;
+        }
+    });
 }
-function createHospital(
-  hospitalId, // should be auto?
-  name
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const hospitalData = {
-        name,
-      };
-      if (hospitalId) {
-        const hospitalRef = doc(hospitalCollection, hospitalId);
-        yield setDoc(
-          hospitalRef,
-          Object.assign({ id: hospitalRef.id }, hospitalData)
-        );
-      } else {
-        const hospitalRef = doc(hospitalCollection);
-        yield setDoc(hospitalRef, hospitalData);
-      }
-    } catch (error) {
-      console.log("Error creating hospital: ", error);
-      throw error;
-    }
-  });
+function createHospital(hospitalId, // should be auto?
+name) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const hospitalData = {
+                name,
+            };
+            if (hospitalId) {
+                const hospitalRef = doc(hospitalCollection, hospitalId);
+                yield setDoc(hospitalRef, Object.assign({ id: hospitalRef.id }, hospitalData));
+            }
+            else {
+                const hospitalRef = doc(hospitalCollection);
+                yield setDoc(hospitalRef, hospitalData);
+            }
+        }
+        catch (error) {
+            console.log("Error creating hospital: ", error);
+            throw error;
+        }
+    });
 }
-function createUnit(
-  unitId, //should be auto?
-  hospitalId,
-  name
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const unitData = {
-        hospitalId,
-        name,
-      };
-      if (unitId) {
-        const unitRef = doc(unitCollection, unitId);
-        yield setDoc(unitRef, Object.assign({ id: unitRef.id }, unitData));
-      } else {
-        const unitRef = doc(unitCollection);
-        yield setDoc(unitRef, unitData);
-      }
-    } catch (error) {
-      console.log("Error creating unit: ", error);
-      throw error;
-    }
-  });
+function createUnit(unitId, //should be auto?
+hospitalId, name) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const unitData = {
+                hospitalId,
+                name,
+            };
+            if (unitId) {
+                const unitRef = doc(unitCollection, unitId);
+                yield setDoc(unitRef, Object.assign({ id: unitRef.id }, unitData));
+            }
+            else {
+                const unitRef = doc(unitCollection);
+                yield setDoc(unitRef, unitData);
+            }
+        }
+        catch (error) {
+            console.log("Error creating unit: ", error);
+            throw error;
+        }
+    });
 }
-function createSuggestion(
-  id,
-  creatorHsaId,
-  name,
-  area,
-  content,
-  purpose,
-  measure,
-  ideas,
-  //need: boolean,
-  unitId,
-  departmentId,
-  isPublic
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionData = {
-        creatorHsaId,
-        name,
-        area,
-        content,
-        purpose,
-        measure,
-        ideas,
-        //need,
-        unitId,
-        departmentId,
-        public: isPublic,
-        upvotes: [],
-        comments: [],
-        dateCreated: new Date(),
-      };
-      if (id) {
-        const suggestionRef = doc(suggestionCollection, id);
-        yield setDoc(
-          suggestionRef,
-          Object.assign({ id: suggestionRef.id }, suggestionData)
-        );
-      } else {
-        const suggestionRef = doc(suggestionCollection);
-        yield setDoc(suggestionRef, suggestionData);
-      }
-    } catch (error) {
-      console.log("Error creating suggestion: ", error);
-      throw error;
-    }
-  });
+function createSuggestion(id, creatorHsaId, name, area, content, purpose, measure, ideas, 
+//need: boolean,
+unitId, departmentId, isPublic) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionData = {
+                creatorHsaId,
+                name,
+                area,
+                content,
+                purpose,
+                measure,
+                ideas,
+                //need,
+                unitId,
+                departmentId,
+                public: isPublic,
+                upvotes: [],
+                comments: [],
+                dateCreated: new Date(),
+            };
+            if (id) {
+                const suggestionRef = doc(suggestionCollection, id);
+                yield setDoc(suggestionRef, Object.assign({ id: suggestionRef.id }, suggestionData));
+            }
+            else {
+                const suggestionRef = doc(suggestionCollection);
+                yield setDoc(suggestionRef, suggestionData);
+            }
+        }
+        catch (error) {
+            console.log("Error creating suggestion: ", error);
+            throw error;
+        }
+    });
 }
 function deleteSuggestion(suggestionId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionRef = doc(suggestionCollection, suggestionId);
-      yield deleteDoc(suggestionRef);
-    } catch (error) {
-      console.log("Error deleting suggestion: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionRef = doc(suggestionCollection, suggestionId);
+            yield deleteDoc(suggestionRef);
+        }
+        catch (error) {
+            console.log("Error deleting suggestion: ", error);
+            throw error;
+        }
+    });
 }
 // Upvote a suggestion for a user
 // takes in suggestion id, user HSAid
 // returns error if transaction failed
 function upvoteSuggestion(suggestionId, userHsaId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionRef = doc(suggestionCollection, suggestionId);
-      const suggestionDoc = yield getDoc(suggestionRef);
-      // if already liked, unlike
-      if (
-        suggestionDoc.exists() &&
-        suggestionDoc.data().upvotes.includes(userHsaId)
-      ) {
-        yield updateDoc(suggestionRef, {
-          upvotes: arrayRemove(userHsaId),
-        });
-        return false;
-      } else {
-        // Atomically add a update to the upvote array field.
-        yield updateDoc(suggestionRef, {
-          upvotes: arrayUnion(userHsaId),
-        });
-        return true;
-      }
-    } catch (error) {
-      console.log("Error upvoting suggestion: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionRef = doc(suggestionCollection, suggestionId);
+            const suggestionDoc = yield getDoc(suggestionRef);
+            // if already liked, unlike
+            if (suggestionDoc.exists() &&
+                suggestionDoc.data().upvotes.includes(userHsaId)) {
+                yield updateDoc(suggestionRef, {
+                    upvotes: arrayRemove(userHsaId),
+                });
+                return false;
+            }
+            else {
+                // Atomically add a update to the upvote array field.
+                yield updateDoc(suggestionRef, {
+                    upvotes: arrayUnion(userHsaId),
+                });
+                return true;
+            }
+        }
+        catch (error) {
+            console.log("Error upvoting suggestion: ", error);
+            throw error;
+        }
+    });
 }
 //creates a comment
 // takes in commenters id, suggestion id and content as string
 // throws error if transaction failed
-function createComment(commenterHsaId, suggestionId, content) { // change to subcollection
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionRef = doc(suggestionCollection, suggestionId);
-      const commentCollection = yield collection(suggestionRef, "comment");
-      const commentRef = yield doc(commentCollection);
-      yield setDoc(commentRef, {
-        id: commentRef.id,
-        commenterHsaId: commenterHsaId,
-        content: content,
-        dateCreated: new Date(),
-        upvotes: [],
-      });
-    } catch (error) {
-      console.log("Error creating comment: ", error);
-      throw error;
-    }
-  });
+function createComment(// change to subcollection
+commenterHsaId, suggestionId, content) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionRef = doc(suggestionCollection, suggestionId);
+            const commentCollection = yield collection(suggestionRef, "comment");
+            const commentRef = yield doc(commentCollection);
+            yield setDoc(commentRef, {
+                id: commentRef.id,
+                commenterHsaId: commenterHsaId,
+                content: content,
+                dateCreated: new Date(),
+                upvotes: [],
+            });
+        }
+        catch (error) {
+            console.log("Error creating comment: ", error);
+            throw error;
+        }
+    });
 }
 // Upvote a comment for a user
 // takes in suggestionId, commentId and userId as strings
 // return error if transaction failed
 function upvoteComment(suggestionId, commentId, userHsaId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionRef = doc(suggestionCollection, suggestionId);
-      const commentRef = doc(suggestionRef, "comment", commentId);
-      // Atomically add a update to the upvote array field.
-      yield updateDoc(commentRef, {
-        upvotes: arrayUnion(userHsaId),
-      });
-    } catch (error) {
-      console.log("Error upvoting comment: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionRef = doc(suggestionCollection, suggestionId);
+            const commentRef = doc(suggestionRef, "comment", commentId);
+            // Atomically add a update to the upvote array field.
+            yield updateDoc(commentRef, {
+                upvotes: arrayUnion(userHsaId),
+            });
+        }
+        catch (error) {
+            console.log("Error upvoting comment: ", error);
+            throw error;
+        }
+    });
 }
 //add a note to a user
 // takes in userHsaId and content as string
 // throws error if transaction failed
 function addNoteToUser(userHsaId, content) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const userRef = doc(userCollection, userHsaId);
-      yield updateDoc(userRef, {
-        notes: content,
-        dateCreated: new Date(),
-      });
-    } catch (error) {
-      console.log("Error updating document: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const userRef = doc(userCollection, userHsaId);
+            yield updateDoc(userRef, {
+                notes: content,
+                dateCreated: new Date(),
+            });
+        }
+        catch (error) {
+            console.log("Error updating document: ", error);
+            throw error;
+        }
+    });
 }
 // export to setters to be able to use in other files
-export {
-  createComment,
-  createHospital,
-  createImprovementWork,
-  createSuggestion,
-  createTaskOnImprovementWork,
-  createUnit,
-  createUser,
-  createdDocumentInKnowledgeBank,
-  addNoteToUser,
-  addDocumentToImprovementWork,
-  addMemberToImprovementWork,
-  addMemberToTask,
-  upvoteSuggestion,
-  upvoteComment,
-  deleteSuggestion,
-};
+export { createComment, createHospital, createImprovementWork, createSuggestion, createTaskOnImprovementWork, createUnit, createUser, createdDocumentInKnowledgeBank, addNoteToUser, addDocumentToImprovementWork, addMemberToImprovementWork, addMemberToTask, upvoteSuggestion, upvoteComment, deleteSuggestion, };
 //////////////////////////////////////////////GETTERS/////////////////////////////////////////////////////////////////////
 // Get any object
 // input is the database type as a string.
 // output is the whole collection of that type.
 function getObject(collectionPath) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, collectionPath);
-      const querySnapshot = yield getDocs(collectionRef);
-      const result = [];
-      querySnapshot.forEach((doc) => {
-        result.push(doc.data());
-      });
-      return result;
-    } catch (error) {
-      console.error("Error getting collection data", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, collectionPath);
+            const querySnapshot = yield getDocs(collectionRef);
+            const result = [];
+            querySnapshot.forEach((doc) => {
+                result.push(doc.data());
+            });
+            return result;
+        }
+        catch (error) {
+            console.error("Error getting collection data", error);
+            throw error;
+        }
+    });
 }
 /**
  * Asynchronously retrieves a single document object from the specified collection path and document ID.
@@ -644,21 +527,23 @@ function getObject(collectionPath) {
  * @throws Will throw an error if there is an issue during retrieval from the database.
  */
 function getObjectById(collectionPath, documentId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const docRef = doc(db, collectionPath, documentId);
-      const docSnapshot = yield getDoc(docRef);
-      if (docSnapshot.exists()) {
-        return Object.assign({ id: docSnapshot.id }, docSnapshot.data());
-      } else {
-        console.warn(`No such document! ${collectionPath}/${documentId}`);
-        return null;
-      }
-    } catch (error) {
-      console.error("Error getting object", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const docRef = doc(db, collectionPath, documentId);
+            const docSnapshot = yield getDoc(docRef);
+            if (docSnapshot.exists()) {
+                return Object.assign({ id: docSnapshot.id }, docSnapshot.data());
+            }
+            else {
+                console.warn(`No such document! ${collectionPath}/${documentId}`);
+                return null;
+            }
+        }
+        catch (error) {
+            console.error("Error getting object", error);
+            throw error;
+        }
+    });
 }
 /**
  * Asynchronously retrieves comments for a given suggestion.
@@ -671,29 +556,23 @@ function getObjectById(collectionPath, documentId) {
  *
  * @throws Will throw an error if the comments cannot be retrieved.
  */
-function getComments({
-  suggestionId,
-  sortBy = "dateCreated",
-  ascending = false,
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const suggestionRef = doc(db, "suggestionCollection", suggestionId);
-      const commentsQuery = query(
-        collection(suggestionRef, "comment"),
-        orderBy(sortBy, ascending ? "asc" : "desc")
-      );
-      const commentsSnapshot = yield getDocs(commentsQuery);
-      const comments = [];
-      commentsSnapshot.forEach((doc) => {
-        comments.push(doc.data());
-      });
-      return comments;
-    } catch (error) {
-      console.error("Error getting comments for suggestion: ", error);
-      throw error;
-    }
-  });
+function getComments({ suggestionId, sortBy = "dateCreated", ascending = false, }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const suggestionRef = doc(db, "suggestionCollection", suggestionId);
+            const commentsQuery = query(collection(suggestionRef, "comment"), orderBy(sortBy, ascending ? "asc" : "desc"));
+            const commentsSnapshot = yield getDocs(commentsQuery);
+            const comments = [];
+            commentsSnapshot.forEach((doc) => {
+                comments.push(doc.data());
+            });
+            return comments;
+        }
+        catch (error) {
+            console.error("Error getting comments for suggestion: ", error);
+            throw error;
+        }
+    });
 }
 //Filtering suggestions on unitId AND creatorHsaId
 //Sort suggestions on dateCreated OR upvotes
@@ -711,50 +590,44 @@ function getComments({
  *
  * @throws Will throw an error if there is an issue retrieving suggestions.
  */
-function getSuggestions({
-  id,
-  creatorHsaId,
-  name,
-  unitId,
-  sortBy = "dateCreated", // Default sort by dateCreated
-  ascending = false, // Sort descending by default
-  isPublic = true,
-  departmentId,
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "suggestion");
-      let constraints = [];
-      if (id) {
-        constraints.push(where("id", "==", id));
-      }
-      if (unitId) {
-        constraints.push(where("unitId", "==", unitId));
-      }
-      if (creatorHsaId) {
-        constraints.push(where("creatorHsaId", "==", creatorHsaId));
-      }
-      if (name) {
-        constraints.push(where("name", "==", name));
-        sortBy = "name";
-      }
-      if (departmentId) {
-        constraints.push(where("departmentId", "==", departmentId));
-      }
-      constraints.push(where("public", "==", isPublic));
-      constraints.push(orderBy(sortBy, ascending ? "asc" : "desc"));
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      const suggestions = [];
-      querySnapshot.forEach((doc) => {
-        suggestions.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return suggestions;
-    } catch (error) {
-      console.log("Error retrieving suggestions by department: ", error);
-      throw error;
-    }
-  });
+function getSuggestions({ id, creatorHsaId, name, unitId, sortBy = "dateCreated", // Default sort by dateCreated
+ascending = false, // Sort descending by default
+isPublic = true, departmentId, }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "suggestion");
+            let constraints = [];
+            if (id) {
+                constraints.push(where("id", "==", id));
+            }
+            if (unitId) {
+                constraints.push(where("unitId", "==", unitId));
+            }
+            if (creatorHsaId) {
+                constraints.push(where("creatorHsaId", "==", creatorHsaId));
+            }
+            if (name) {
+                constraints.push(where("name", "==", name));
+                sortBy = "name";
+            }
+            if (departmentId) {
+                constraints.push(where("departmentId", "==", departmentId));
+            }
+            constraints.push(where("public", "==", isPublic));
+            constraints.push(orderBy(sortBy, ascending ? "asc" : "desc"));
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            const suggestions = [];
+            querySnapshot.forEach((doc) => {
+                suggestions.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return suggestions;
+        }
+        catch (error) {
+            console.log("Error retrieving suggestions by department: ", error);
+            throw error;
+        }
+    });
 }
 /**
  * Asynchronously searches for hospital documents in the database.
@@ -768,29 +641,30 @@ function getSuggestions({
  *
  * @throws Will throw an error if there is an issue during the retrieval process.
  */
-function getHospitals({ hospitalName, hospitalId }) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "hospital");
-      let constraints = [];
-      if (hospitalName) {
-        constraints.push(where("name", "==", hospitalName));
-      }
-      if (hospitalId) {
-        constraints.push(where("id", "==", hospitalId));
-      }
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      const hospitals = [];
-      querySnapshot.forEach((doc) => {
-        hospitals.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return hospitals;
-    } catch (error) {
-      console.log("Error retrieving Hospitals", error);
-      throw error;
-    }
-  });
+function getHospitals({ hospitalName, hospitalId, }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "hospital");
+            let constraints = [];
+            if (hospitalName) {
+                constraints.push(where("name", "==", hospitalName));
+            }
+            if (hospitalId) {
+                constraints.push(where("id", "==", hospitalId));
+            }
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            const hospitals = [];
+            querySnapshot.forEach((doc) => {
+                hospitals.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return hospitals;
+        }
+        catch (error) {
+            console.log("Error retrieving Hospitals", error);
+            throw error;
+        }
+    });
 }
 /**
  * Asynchronously retrieves an array of improvement work documents based on various filter criteria.
@@ -809,162 +683,138 @@ function getHospitals({ hospitalName, hospitalId }) {
  *
  * @throws Will throw an error if there is a problem retrieving the improvement works.
  */
-function getImprovementWorks({
-  id,
-  name,
-  nolanStage,
-  unitId,
-  completed,
-  ongoing,
-  patientRiskLevel,
-  ascendingDates = false, //Descending dates by default
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "improvementWork");
-      let constraints = [];
-      if (id) {
-        constraints.push(where("id", "==", id));
-      }
-      if (unitId) {
-        console.log("inne i ifsatsen i databasen");
-        constraints.push(where("unitId", "==", unitId));
-      }
-      if (nolanStage) {
-        constraints.push(where("currentStage", "==", nolanStage));
-      }
-      if (completed != undefined) {
-        constraints.push(where("completed", "==", completed));
-      }
-      if (ongoing !== undefined) {
-        constraints.push(where("ongoing", "==", ongoing));
-      }
-      if (patientRiskLevel) {
-        constraints.push(where("patientRiskLevel", "==", patientRiskLevel));
-      }
-      if (name) {
-        constraints.push(where("lowerCaseName", ">=", name.toLowerCase()));
-        constraints.push(
-          where("lowerCaseName", "<=", name.toLowerCase() + "~")
-        );
-      } else {
-        constraints.push(
-          orderBy("dateStarted", ascendingDates ? "asc" : "desc")
-        );
-      }
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      const improvementWorks = [];
-      querySnapshot.forEach((doc) => {
-        improvementWorks.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return improvementWorks;
-    } catch (error) {
-      console.log("Error retrieving improvementWorks: ", error);
-      throw error;
-    }
-  });
+function getImprovementWorks({ id, name, nolanStage, unitId, completed, ongoing, patientRiskLevel, ascendingDates = false, //Descending dates by default
+ }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "improvementWork");
+            let constraints = [];
+            if (id) {
+                constraints.push(where("id", "==", id));
+            }
+            if (unitId) {
+                console.log("inne i ifsatsen i databasen");
+                constraints.push(where("unitId", "==", unitId));
+            }
+            if (nolanStage) {
+                constraints.push(where("currentStage", "==", nolanStage));
+            }
+            if (completed != undefined) {
+                constraints.push(where("completed", "==", completed));
+            }
+            if (ongoing !== undefined) {
+                constraints.push(where("ongoing", "==", ongoing));
+            }
+            if (patientRiskLevel) {
+                constraints.push(where("patientRiskLevel", "==", patientRiskLevel));
+            }
+            if (name) {
+                constraints.push(where("lowerCaseName", ">=", name.toLowerCase()));
+                constraints.push(where("lowerCaseName", "<=", name.toLowerCase() + "~"));
+            }
+            else {
+                constraints.push(orderBy("dateStarted", ascendingDates ? "asc" : "desc"));
+            }
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            const improvementWorks = [];
+            querySnapshot.forEach((doc) => {
+                improvementWorks.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return improvementWorks;
+        }
+        catch (error) {
+            console.log("Error retrieving improvementWorks: ", error);
+            throw error;
+        }
+    });
 }
 // Gets improvementWorks where each field matches the union of elements in the input array for each fo the fields
-function getFilteredImprovementWorks({
-  patientRiskLevels,
-  nolanStages,
-  units,
-  ascendingDates = false, // Descending dates by default
-  completed,
-  hospitalIds,
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      console.log(
-        "Getting improvement works with the following constraints",
-        patientRiskLevels,
-        nolanStages,
-        units,
-        ascendingDates,
-        hospitalIds
-      );
-      const collectionRef = collection(db, "improvementWork");
-      let constraints = [];
-      if (patientRiskLevels && patientRiskLevels.length) {
-        constraints.push(where("patientRiskLevel", "in", patientRiskLevels));
-      }
-      if (nolanStages && nolanStages.length) {
-        constraints.push(where("currentStage", "in", nolanStages));
-      }
-      if (units && units.length) {
-        constraints.push(where("unitId", "in", units));
-      }
-      // If none of the array filters are provided, default to ordering by date.
-      if (!patientRiskLevels.length && !nolanStages.length && !units.length) {
-        constraints.push(
-          orderBy("dateStarted", ascendingDates ? "asc" : "desc")
-        );
-      }
-      // Handle filtering by completion status
-      if (completed !== null && completed !== undefined) {
-        constraints.push(where("completed", "==", completed));
-      }
-      if (hospitalIds && hospitalIds.length) {
-        constraints.push(where("hospitalId", "in", hospitalIds));
-      }
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      const improvementWorks = [];
-      querySnapshot.forEach((doc) => {
-        improvementWorks.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return improvementWorks;
-    } catch (error) {
-      console.error("Error retrieving filtered improvementWorks: ", error);
-      throw error;
-    }
-  });
+function getFilteredImprovementWorks({ patientRiskLevels, nolanStages, units, ascendingDates = false, // Descending dates by default
+completed, hospitalIds, }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            console.log("Getting improvement works with the following constraints", patientRiskLevels, nolanStages, units, ascendingDates, hospitalIds);
+            const collectionRef = collection(db, "improvementWork");
+            let constraints = [];
+            if (patientRiskLevels && patientRiskLevels.length) {
+                constraints.push(where("patientRiskLevel", "in", patientRiskLevels));
+            }
+            if (nolanStages && nolanStages.length) {
+                constraints.push(where("currentStage", "in", nolanStages));
+            }
+            if (units && units.length) {
+                constraints.push(where("unitId", "in", units));
+            }
+            // If none of the array filters are provided, default to ordering by date.
+            if (!patientRiskLevels.length && !nolanStages.length && !units.length) {
+                constraints.push(orderBy("dateStarted", ascendingDates ? "asc" : "desc"));
+            }
+            // Handle filtering by completion status
+            if (completed !== null && completed !== undefined) {
+                constraints.push(where("completed", "==", completed));
+            }
+            if (hospitalIds && hospitalIds.length) {
+                constraints.push(where("hospitalId", "in", hospitalIds));
+            }
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            const improvementWorks = [];
+            querySnapshot.forEach((doc) => {
+                improvementWorks.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return improvementWorks;
+        }
+        catch (error) {
+            console.error("Error retrieving filtered improvementWorks: ", error);
+            throw error;
+        }
+    });
 }
 function getImprovementWorkOwner(improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let constraints = [];
-      constraints.push(where("improvementWorkId", "==", improvementWorkId));
-      constraints.push(where("isOwner", "==", true));
-      const q = query(userImprovementWorkCollection, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      if (querySnapshot.empty) {
-        console.log("Improvement work ", improvementWorkId, " has no owner");
-        return null;
-      } else {
-        const owner = querySnapshot.docs[0].data().userHsaId;
-        return owner;
-      }
-    } catch (error) {
-      console.log(error);
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let constraints = [];
+            constraints.push(where("improvementWorkId", "==", improvementWorkId));
+            constraints.push(where("isOwner", "==", true));
+            const q = query(userImprovementWorkCollection, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            if (querySnapshot.empty) {
+                console.log("Improvement work ", improvementWorkId, " has no owner");
+                return null;
+            }
+            else {
+                const owner = querySnapshot.docs[0].data().userHsaId;
+                return owner;
+            }
+        }
+        catch (error) {
+            console.log(error);
+        }
+    });
 }
 function getImprovementWorkResponsible(improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let constraints = [];
-      constraints.push(where("improvementWorkId", "==", improvementWorkId));
-      constraints.push(where("isResponsibleFor", "==", true));
-      const q = query(userImprovementWorkCollection, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      if (querySnapshot.empty) {
-        console.log(
-          "Improvement work ",
-          improvementWorkId,
-          " has no responsible"
-        );
-        return null;
-      } else {
-        const responsibleId = querySnapshot.docs[0].data().userHsaId;
-        const responsible = yield getObjectById("users", responsibleId);
-        return responsible;
-      }
-    } catch (error) {
-      console.log(error);
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let constraints = [];
+            constraints.push(where("improvementWorkId", "==", improvementWorkId));
+            constraints.push(where("isResponsibleFor", "==", true));
+            const q = query(userImprovementWorkCollection, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            if (querySnapshot.empty) {
+                console.log("Improvement work ", improvementWorkId, " has no responsible");
+                return null;
+            }
+            else {
+                const responsibleId = querySnapshot.docs[0].data().userHsaId;
+                const responsible = yield getObjectById("users", responsibleId);
+                return responsible;
+            }
+        }
+        catch (error) {
+            console.log(error);
+        }
+    });
 }
 // TODO getUsersForTask!
 /**
@@ -981,44 +831,38 @@ function getImprovementWorkResponsible(improvementWorkId) {
  *
  * @throws Will throw an error if there is an issue during the retrieval process.
  */
-function getUsers({
-  hsaId,
-  name,
-  unitId,
-  ascendingFirstNames = false, // Descending names by default
-  uid,
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "users");
-      let constraints = [];
-      if (hsaId) {
-        constraints.push(where("id", "==", hsaId));
-      }
-      if (unitId) {
-        constraints.push(where("unitId", "==", unitId));
-      }
-      if (uid) {
-        constraints.push(where("uid", "==", uid));
-      }
-      if (name) {
-        constraints.push(where("name", "==", name));
-      }
-      constraints.push(
-        orderBy("firstName", ascendingFirstNames ? "asc" : "desc")
-      );
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      const users = [];
-      querySnapshot.forEach((doc) => {
-        users.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return users;
-    } catch (error) {
-      console.log("Error retrieving users by department: ", error);
-      throw error;
-    }
-  });
+function getUsers({ hsaId, name, unitId, ascendingFirstNames = false, // Descending names by default
+uid, }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "users");
+            let constraints = [];
+            if (hsaId) {
+                constraints.push(where("id", "==", hsaId));
+            }
+            if (unitId) {
+                constraints.push(where("unitId", "==", unitId));
+            }
+            if (uid) {
+                constraints.push(where("uid", "==", uid));
+            }
+            if (name) {
+                constraints.push(where("name", "==", name));
+            }
+            constraints.push(orderBy("firstName", ascendingFirstNames ? "asc" : "desc"));
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            const users = [];
+            querySnapshot.forEach((doc) => {
+                users.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return users;
+        }
+        catch (error) {
+            console.log("Error retrieving users by department: ", error);
+            throw error;
+        }
+    });
 }
 // TODO getTasksForUser!
 /**
@@ -1036,36 +880,35 @@ function getUsers({
  *
  * @throws Will throw an error if there is an issue during the retrieval process.
  */
-function getTasks({
-  // userHsaId,
-  // isResponsibleFor,
-  improvementWorkId,
-  stage,
-  ascendingDates = false, // Descending dates by default
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "task");
-      let constraints = [];
-      if (stage) {
-        constraints.push(where("stage", "==", stage));
-      }
-      if (improvementWorkId != undefined) {
-        constraints.push(where("improvementWorkId", "==", improvementWorkId));
-        constraints.push(orderBy("startDate", ascendingDates ? "asc" : "desc"));
-      }
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      let tasks = [];
-      querySnapshot.forEach((doc) => {
-        tasks.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return tasks;
-    } catch (error) {
-      console.log("Error retrieving task by department: ", error);
-      throw error;
-    }
-  });
+function getTasks({ 
+// userHsaId,
+// isResponsibleFor,
+improvementWorkId, stage, ascendingDates = false, // Descending dates by default
+ }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "task");
+            let constraints = [];
+            if (stage) {
+                constraints.push(where("stage", "==", stage));
+            }
+            if (improvementWorkId != undefined) {
+                constraints.push(where("improvementWorkId", "==", improvementWorkId));
+                constraints.push(orderBy("startDate", ascendingDates ? "asc" : "desc"));
+            }
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            let tasks = [];
+            querySnapshot.forEach((doc) => {
+                tasks.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return tasks;
+        }
+        catch (error) {
+            console.log("Error retrieving task by department: ", error);
+            throw error;
+        }
+    });
 }
 /**
  * Asynchronously retrieves an array of unit documents from the database based on various filter criteria.
@@ -1081,305 +924,246 @@ function getTasks({
  *
  * @throws Will throw an error if there is an issue during the retrieval process.
  */
-function getUnits({
-  unitId,
-  hospitalId,
-  name,
-  ascendingUnitNames = false, // Sort descending names by default
-}) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, "unit");
-      let constraints = [];
-      if (unitId) {
-        constraints.push(where("id", "==", unitId));
-      }
-      if (name) {
-        constraints.push(where("name", "==", name));
-      }
-      if (hospitalId) {
-        constraints.push(where("hospitalId", "==", hospitalId));
-        constraints.push(orderBy("name", ascendingUnitNames ? "asc" : "desc"));
-      }
-      const q = query(collectionRef, ...constraints);
-      const querySnapshot = yield getDocs(q);
-      let units = [];
-      querySnapshot.forEach((doc) => {
-        units.push(Object.assign({ id: doc.id }, doc.data()));
-      });
-      return units;
-    } catch (error) {
-      console.log("Error retrieving units by hospitalId: ", error);
-      throw error;
-    }
-  });
+function getUnits({ unitId, hospitalId, name, ascendingUnitNames = false, // Sort descending names by default
+ }) {
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, "unit");
+            let constraints = [];
+            if (unitId) {
+                constraints.push(where("id", "==", unitId));
+            }
+            if (name) {
+                constraints.push(where("name", "==", name));
+            }
+            if (hospitalId) {
+                constraints.push(where("hospitalId", "==", hospitalId));
+                constraints.push(orderBy("name", ascendingUnitNames ? "asc" : "desc"));
+            }
+            const q = query(collectionRef, ...constraints);
+            const querySnapshot = yield getDocs(q);
+            let units = [];
+            querySnapshot.forEach((doc) => {
+                units.push(Object.assign({ id: doc.id }, doc.data()));
+            });
+            return units;
+        }
+        catch (error) {
+            console.log("Error retrieving units by hospitalId: ", error);
+            throw error;
+        }
+    });
 }
 function getImprovementWorksForUser(userHsaId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      console.log("Getting improvementworks for user: ", userHsaId);
-      // Query the userImprovementWork collection for relations involving this user
-      const q = query(
-        userImprovementWorkCollection,
-        where("userHsaId", "==", userHsaId)
-      );
-      const querySnapshot = yield getDocs(q);
-      // Fetch each related improvementWork document
-      const improvementWorks = [];
-      for (const doc of querySnapshot.docs) {
-        const improvementWorkId = doc.data().improvementWorkId;
-        const improvementWorkDoc = yield getObjectById(
-          "improvementWork",
-          improvementWorkId
-        );
-        improvementWorks.push(improvementWorkDoc);
-      }
-      return improvementWorks;
-    } catch (error) {
-      console.error("Error getting improvement works for user: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            console.log("Getting improvementworks for user: ", userHsaId);
+            // Query the userImprovementWork collection for relations involving this user
+            const q = query(userImprovementWorkCollection, where("userHsaId", "==", userHsaId));
+            const querySnapshot = yield getDocs(q);
+            // Fetch each related improvementWork document
+            const improvementWorks = [];
+            for (const doc of querySnapshot.docs) {
+                const improvementWorkId = doc.data().improvementWorkId;
+                const improvementWorkDoc = yield getObjectById("improvementWork", improvementWorkId);
+                improvementWorks.push(improvementWorkDoc);
+            }
+            return improvementWorks;
+        }
+        catch (error) {
+            console.error("Error getting improvement works for user: ", error);
+            throw error;
+        }
+    });
 }
 function getUsersForImprovementWork(improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      // Query the userImprovementWork collection for relations involving this improvementWork
-      const q = query(
-        userImprovementWorkCollection,
-        where("improvementWorkId", "==", improvementWorkId)
-      );
-      const querySnapshot = yield getDocs(q);
-      // Fetch each related user document
-      const users = [];
-      for (const doc of querySnapshot.docs) {
-        const userHsaId = doc.data().userHsaId;
-        const userDoc = yield getObjectById("users", userHsaId);
-        users.push(userDoc);
-      }
-      return users;
-    } catch (error) {
-      console.error("Error getting users for improvementWork: ", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            // Query the userImprovementWork collection for relations involving this improvementWork
+            const q = query(userImprovementWorkCollection, where("improvementWorkId", "==", improvementWorkId));
+            const querySnapshot = yield getDocs(q);
+            // Fetch each related user document
+            const users = [];
+            for (const doc of querySnapshot.docs) {
+                const userHsaId = doc.data().userHsaId;
+                const userDoc = yield getObjectById("users", userHsaId);
+                users.push(userDoc);
+            }
+            return users;
+        }
+        catch (error) {
+            console.error("Error getting users for improvementWork: ", error);
+            throw error;
+        }
+    });
 }
 // export getters to be able to use in other files
-export {
-  getObject,
-  getObjectById,
-  getSuggestions,
-  getImprovementWorks,
-  getUsers,
-  getTasks,
-  getUnits,
-  getComments,
-  getHospitals,
-  getImprovementWorksForUser,
-  getUsersForImprovementWork,
-  getImprovementWorkOwner,
-  getImprovementWorkResponsible,
-  getFilteredImprovementWorks,
-  getDocumentsByImprovementWork,
-};
+export { getObject, getObjectById, getSuggestions, getImprovementWorks, getUsers, getTasks, getUnits, getComments, getHospitals, getImprovementWorksForUser, getUsersForImprovementWork, getImprovementWorkOwner, getImprovementWorkResponsible, getFilteredImprovementWorks, getDocumentsByImprovementWork, };
 ////////////////////////////////////DELETING/////////////////////////////////////////////
 // delete an instance of a type
 function deleteInstance(docType, docId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const docRef = doc(db, docType, docId);
-      yield deleteDoc(docRef);
-      console.log(`${docType} deleted successfully.`);
-    } catch (error) {
-      console.error(`Error deleting ${docType}:`, error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const docRef = doc(db, docType, docId);
+            yield deleteDoc(docRef);
+            console.log(`${docType} deleted successfully.`);
+        }
+        catch (error) {
+            console.error(`Error deleting ${docType}:`, error);
+            throw error;
+        }
+    });
 }
 // delete all instances of a type
 function deleteAllDocumentsInCollection(collectionName) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const collectionRef = collection(db, collectionName);
-      const snapshot = yield getDocs(collectionRef);
-      // Delete all documents in the collection
-      const deletePromises = snapshot.docs.map((doc) =>
-        __awaiter(this, void 0, void 0, function* () {
-          yield deleteDoc(doc.ref);
-        })
-      );
-      yield Promise.all(deletePromises);
-      console.log(
-        `All documents in the ${collectionName} collection deleted successfully.`
-      );
-    } catch (error) {
-      console.error(
-        `Error deleting all documents in ${collectionName}:`,
-        error
-      );
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const collectionRef = collection(db, collectionName);
+            const snapshot = yield getDocs(collectionRef);
+            // Delete all documents in the collection
+            const deletePromises = snapshot.docs.map((doc) => __awaiter(this, void 0, void 0, function* () {
+                yield deleteDoc(doc.ref);
+            }));
+            yield Promise.all(deletePromises);
+            console.log(`All documents in the ${collectionName} collection deleted successfully.`);
+        }
+        catch (error) {
+            console.error(`Error deleting all documents in ${collectionName}:`, error);
+            throw error;
+        }
+    });
 }
 ////////////////////////////////////UPDATING/////////////////////////////////////////////
 // update a field in an instance
 function updateInstance(docType, docId, updates) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      const docRef = doc(db, docType, docId);
-      yield updateDoc(docRef, updates);
-      console.log(`${docType} updated successfully.`);
-    } catch (error) {
-      console.error(`Error updating ${docType}:`, error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            const docRef = doc(db, docType, docId);
+            yield updateDoc(docRef, updates);
+            console.log(`${docType} updated successfully.`);
+        }
+        catch (error) {
+            console.error(`Error updating ${docType}:`, error);
+            throw error;
+        }
+    });
 }
 // changes the ongoing status of an improvement work. if ongoing it is paused, if if paused onging.
 // user must be a manager
 function startOrPauseImprovementWork(userId, improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let user = yield getObjectById("users", userId);
-      let improvementWork = yield getObjectById(
-        "improvementWork",
-        improvementWorkId
-      );
-      if (!user || !user.manager) {
-        throw new Error("User can't change improvementWork status");
-      } else {
-        if (improvementWork) {
-          let update = { ongoing: !improvementWork.ongoing };
-          yield updateInstance("improvementWork", improvementWorkId, update);
-          console.log(`Improvement work ${improvementWorkId} status updated.`);
-          return true;
-        } else {
-          console.error(
-            `Improvement work with ID ${improvementWorkId} not found.`
-          );
-          return false;
-        }
-      }
-    } catch (error) {
-      console.error("Error starting/pausing improvement work:", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let user = yield getObjectById("users", userId);
+            let improvementWork = yield getObjectById("improvementWork", improvementWorkId);
+            if (!user || !user.manager) {
+                throw new Error("User can't change improvementWork status");
+            }
+            else {
+                if (improvementWork) {
+                    let update = { ongoing: !improvementWork.ongoing };
+                    yield updateInstance("improvementWork", improvementWorkId, update);
+                    console.log(`Improvement work ${improvementWorkId} status updated.`);
+                    return true;
+                }
+                else {
+                    console.error(`Improvement work with ID ${improvementWorkId} not found.`);
+                    return false;
+                }
+            }
+        }
+        catch (error) {
+            console.error("Error starting/pausing improvement work:", error);
+            throw error;
+        }
+    });
 }
 function changePatientRiskLevel(userId, improvementWorkId, patientRiskLevel) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let user = yield getObjectById("users", userId);
-      let improvementWork = yield getObjectById(
-        "improvementWork",
-        improvementWorkId
-      );
-      if (!user || !user.manager) {
-        throw new Error(
-          "User can't change patientRiskLevel in improvement work"
-        );
-      } else {
-        if (improvementWork) {
-          let update = { patientRiskLevel: patientRiskLevel };
-          yield updateInstance("improvementWork", improvementWorkId, update);
-          console.log(`Improvement work ${improvementWorkId} status updated.`);
-        } else {
-          console.error(
-            `Improvement work with ID ${improvementWorkId} not found.`
-          );
-        }
-      }
-    } catch (error) {
-      console.error("Error starting/pausing improvement work:", error);
-      throw error;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let user = yield getObjectById("users", userId);
+            let improvementWork = yield getObjectById("improvementWork", improvementWorkId);
+            if (!user || !user.manager) {
+                throw new Error("User can't change patientRiskLevel in improvement work");
+            }
+            else {
+                if (improvementWork) {
+                    let update = { patientRiskLevel: patientRiskLevel };
+                    yield updateInstance("improvementWork", improvementWorkId, update);
+                    console.log(`Improvement work ${improvementWorkId} status updated.`);
+                }
+                else {
+                    console.error(`Improvement work with ID ${improvementWorkId} not found.`);
+                }
+            }
+        }
+        catch (error) {
+            console.error("Error starting/pausing improvement work:", error);
+            throw error;
+        }
+    });
 }
 // finalizes the improvement work. ongoing is set to false.
 // user must be a manager
 function finalizeImprovementWork(userId, improvementWorkId) {
-  return __awaiter(this, void 0, void 0, function* () {
-    try {
-      let user = yield getObjectById("users", userId);
-      if (!user || !user.manager) {
-        return false;
-      } else {
-        let update = { completed: true, ongoing: false, endDate: new Date() };
-        yield updateInstance("improvementWork", improvementWorkId, update);
-        return true;
-      }
-    } catch (error) {
-      return false;
-    }
-  });
+    return __awaiter(this, void 0, void 0, function* () {
+        try {
+            let user = yield getObjectById("users", userId);
+            if (!user || !user.manager) {
+                return false;
+            }
+            else {
+                let update = { completed: true, ongoing: false, endDate: new Date() };
+                yield updateInstance("improvementWork", improvementWorkId, update);
+                return true;
+            }
+        }
+        catch (error) {
+            return false;
+        }
+    });
 }
 function getAddAndDeleteMembersLists(listA, listB) {
-  const deleteList = listA.filter((element) => !listB.includes(element));
-  const addList = listB.filter((element) => !listA.includes(element));
-  return {
-    delete: deleteList,
-    add: addList,
-  };
+    const deleteList = listA.filter((element) => !listB.includes(element));
+    const addList = listB.filter((element) => !listA.includes(element));
+    return {
+        delete: deleteList,
+        add: addList,
+    };
 }
-export function updateImprovementWorkMembers(
-  improvementWorkId,
-  projectLeaderId,
-  membersIdList
-) {
-  return __awaiter(this, void 0, void 0, function* () {
-    const currentProjectLeader = yield getImprovementWorkResponsible(
-      improvementWorkId
-    );
-    if (currentProjectLeader.id === projectLeaderId) {
-      // Do nothing if the project leader is the same
-    } else {
-      // Remove the current project leader and add the new one
-      yield removeMemberFromImprovementWork(
-        improvementWorkId,
-        currentProjectLeader.id
-      );
-      yield addMemberToImprovementWork(
-        projectLeaderId,
-        improvementWorkId,
-        false,
-        true
-      );
-      console.log("ledare");
-    }
-    const currentMembers = yield getUsersForImprovementWork(improvementWorkId);
-    const currentMembersId = [];
-    currentMembers.forEach((member) => {
-      currentMembersId.push(member.id);
-    });
-    const differenceList = getAddAndDeleteMembersLists(
-      currentMembersId,
-      membersIdList
-    );
-    console.log("delete " + differenceList.delete);
-    console.log("add " + differenceList.add);
-    const indexOfProjectLeader = differenceList.delete.indexOf(projectLeaderId);
-    if (indexOfProjectLeader !== -1) {
-      alert(
-        "Du kan inte ta bort projektledaren från ditt förbättringsarbete. För att göra detta byt projektledare först. Alla andra ändringar kommer genomföras."
-      );
-      differenceList.delete.splice(indexOfProjectLeader, 1);
-    }
-    differenceList.delete.forEach((deleteId) => {
-      removeMemberFromImprovementWork(deleteId, improvementWorkId);
-    });
-    differenceList.add.forEach((addId) => {
-      addMemberToImprovementWork(addId, improvementWorkId, false, false);
+export function updateImprovementWorkMembers(improvementWorkId, projectLeaderId, membersIdList) {
+    return __awaiter(this, void 0, void 0, function* () {
+        const currentProjectLeader = yield getImprovementWorkResponsible(improvementWorkId);
+        if (currentProjectLeader.id === projectLeaderId) {
+            // Do nothing if the project leader is the same
+        }
+        else {
+            // Remove the current project leader and add the new one
+            yield removeMemberFromImprovementWork(improvementWorkId, currentProjectLeader.id);
+            yield addMemberToImprovementWork(projectLeaderId, improvementWorkId, false, true);
+            console.log("ledare");
+        }
+        const currentMembers = yield getUsersForImprovementWork(improvementWorkId);
+        const currentMembersId = [];
+        currentMembers.forEach((member) => {
+            currentMembersId.push(member.id);
+        });
+        const differenceList = getAddAndDeleteMembersLists(currentMembersId, membersIdList);
+        console.log("delete " + differenceList.delete);
+        console.log("add " + differenceList.add);
+        const indexOfProjectLeader = differenceList.delete.indexOf(projectLeaderId);
+        if (indexOfProjectLeader !== -1) {
+            alert("Du kan inte ta bort projektledaren från ditt förbättringsarbete. För att göra detta byt projektledare först. Alla andra ändringar kommer genomföras.");
+            differenceList.delete.splice(indexOfProjectLeader, 1);
+        }
+        differenceList.delete.forEach((deleteId) => {
+            removeMemberFromImprovementWork(deleteId, improvementWorkId);
+        });
+        differenceList.add.forEach((addId) => {
+            addMemberToImprovementWork(addId, improvementWorkId, false, false);
+        });
     });
-  });
 }
-export {
-  deleteInstance,
-  updateInstance,
-  finalizeImprovementWork,
-  deleteAllDocumentsInCollection,
-  startOrPauseImprovementWork,
-  changePatientRiskLevel,
-};
+export { deleteInstance, updateInstance, finalizeImprovementWork, deleteAllDocumentsInCollection, startOrPauseImprovementWork, changePatientRiskLevel, };
 //////////////////////////////// for later sprint
 //function add_upvotes
 //function add_notes
diff --git a/tsconfig.json b/tsconfig.json
index 062806880c0e17030ff0114d9cd75b4e85e4b05a..8199ea9232ccc6732be594fabf8a821d912f87bb 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -111,114 +111,3 @@
   },
   "include": ["client/**/*.ts", "client/*.ts", "test/**/*.ts"]
 }
-
-{
-  "compilerOptions": {
-    /* Visit https://aka.ms/tsconfig to read more about this file */
-
-    /* Projects */
-    // "incremental": true,                              /* Save .tsbuildinfo files to allow for incremental compilation of projects. */
-    // "composite": true,                                /* Enable constraints that allow a TypeScript project to be used with project references. */
-    // "tsBuildInfoFile": "./.tsbuildinfo",              /* Specify the path to .tsbuildinfo incremental compilation file. */
-    // "disableSourceOfProjectReferenceRedirect": true,  /* Disable preferring source files instead of declaration files when referencing composite projects. */
-    // "disableSolutionSearching": true,                 /* Opt a project out of multi-project reference checking when editing. */
-    // "disableReferencedProjectLoad": true,             /* Reduce the number of projects loaded automatically by TypeScript. */
-
-    /* Language and Environment */
-    "target": "es2016",                                  /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
-    "lib": ["es2016", "dom"],                            /* Specify a set of bundled library declaration files that describe the target runtime environment. */
-    // "jsx": "preserve",                                /* Specify what JSX code is generated. */
-    // "experimentalDecorators": true,                   /* Enable experimental support for legacy experimental decorators. */
-    // "emitDecoratorMetadata": true,                    /* Emit design-type metadata for decorated declarations in source files. */
-    // "jsxFactory": "",                                 /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */
-    // "jsxFragmentFactory": "",                         /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
-    // "jsxImportSource": "",                            /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */
-    // "reactNamespace": "",                             /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */
-    // "noLib": true,                                    /* Disable including any library files, including the default lib.d.ts. */
-    // "useDefineForClassFields": true,                  /* Emit ECMAScript-standard-compliant class fields. */
-    // "moduleDetection": "auto",                        /* Control what method is used to detect module-format JS files. */
-
-    /* Modules */
-    "module": "ES6",                                /* Specify what module code is generated. */
-    // "rootDir": "./",                                  /* Specify the root folder within your source files. */
-    "moduleResolution": "Node",                     /* Specify how TypeScript looks up a file from a given module specifier. */
-    // "baseUrl": "./",                                  /* Specify the base directory to resolve non-relative module names. */
-    // "paths": {},                                      /* Specify a set of entries that re-map imports to additional lookup locations. */
-    // "rootDirs": [],                                   /* Allow multiple folders to be treated as one when resolving modules. */
-    // "typeRoots": [],                                  /* Specify multiple folders that act like './node_modules/@types'. */
-    // "types": [],                                      /* Specify type package names to be included without being referenced in a source file. */
-    // "allowUmdGlobalAccess": true,                     /* Allow accessing UMD globals from modules. */
-    // "moduleSuffixes": [],                             /* List of file name suffixes to search when resolving a module. */
-    // "allowImportingTsExtensions": true,               /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */
-    // "resolvePackageJsonExports": true,                /* Use the package.json 'exports' field when resolving package imports. */
-   //  "resolvePackageJsonImports": true,                /* Use the package.json 'imports' field when resolving imports. */
-    // "customConditions": [],                           /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */
-    "resolveJsonModule": true,                        /* Enable importing .json files. */
-    // "allowArbitraryExtensions": true,                 /* Enable importing files with any extension, provided a declaration file is present. */
-    // "noResolve": true,                                /* Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project. */
-
-    /* JavaScript Support */
-    // "allowJs": true,                                  /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */
-    // "checkJs": true,                                  /* Enable error reporting in type-checked JavaScript files. */
-    // "maxNodeModuleJsDepth": 1,                        /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */
-
-    /* Emit */
-    // "declaration": true,                              /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
-    // "declarationMap": true,                           /* Create sourcemaps for d.ts files. */
-    // "emitDeclarationOnly": true,                      /* Only output d.ts files and not JavaScript files. */
-    // "sourceMap": true,                                /* Create source map files for emitted JavaScript files. */
-    // "inlineSourceMap": true,                          /* Include sourcemap files inside the emitted JavaScript. */
-    // "outFile": "./",                                  /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */
-    // "outDir": "./",                                   /* Specify an output folder for all emitted files. */
-    // "removeComments": true,                           /* Disable emitting comments. */
-    // "noEmit": true,                                   /* Disable emitting files from a compilation. */
-    // "importHelpers": true,                            /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
-    // "importsNotUsedAsValues": "remove",               /* Specify emit/checking behavior for imports that are only used for types. */
-    // "downlevelIteration": true,                       /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
-    // "sourceRoot": "",                                 /* Specify the root path for debuggers to find the reference source code. */
-    // "mapRoot": "",                                    /* Specify the location where debugger should locate map files instead of generated locations. */
-    // "inlineSources": true,                            /* Include source code in the sourcemaps inside the emitted JavaScript. */
-    // "emitBOM": true,                                  /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
-    // "newLine": "crlf",                                /* Set the newline character for emitting files. */
-    // "stripInternal": true,                            /* Disable emitting declarations that have '@internal' in their JSDoc comments. */
-    // "noEmitHelpers": true,                            /* Disable generating custom helper functions like '__extends' in compiled output. */
-    // "noEmitOnError": true,                            /* Disable emitting files if any type checking errors are reported. */
-    // "preserveConstEnums": true,                       /* Disable erasing 'const enum' declarations in generated code. */
-    // "declarationDir": "./",                           /* Specify the output directory for generated declaration files. */
-    // "preserveValueImports": true,                     /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
-
-    /* Interop Constraints */
-    // "isolatedModules": true,                          /* Ensure that each file can be safely transpiled without relying on other imports. */
-    // "verbatimModuleSyntax": true,                     /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */
-    // "allowSyntheticDefaultImports": true,             /* Allow 'import x from y' when a module doesn't have a default export. */
-    "esModuleInterop": true,                             /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
-    // "preserveSymlinks": true,                         /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
-    "forceConsistentCasingInFileNames": true,            /* Ensure that casing is correct in imports. */
-
-    /* Type Checking */
-    "strict": true,                                      /* Enable all strict type-checking options. */
-    // "noImplicitAny": true,                            /* Enable error reporting for expressions and declarations with an implied 'any' type. */
-    // "strictNullChecks": true,                         /* When type checking, take into account 'null' and 'undefined'. */
-    // "strictFunctionTypes": true,                      /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
-    // "strictBindCallApply": true,                      /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */
-    // "strictPropertyInitialization": true,             /* Check for class properties that are declared but not set in the constructor. */
-    // "noImplicitThis": true,                           /* Enable error reporting when 'this' is given the type 'any'. */
-    // "useUnknownInCatchVariables": true,               /* Default catch clause variables as 'unknown' instead of 'any'. */
-    // "alwaysStrict": true,                             /* Ensure 'use strict' is always emitted. */
-    // "noUnusedLocals": true,                           /* Enable error reporting when local variables aren't read. */
-    // "noUnusedParameters": true,                       /* Raise an error when a function parameter isn't read. */
-    // "exactOptionalPropertyTypes": true,               /* Interpret optional property types as written, rather than adding 'undefined'. */
-    // "noImplicitReturns": true,                        /* Enable error reporting for codepaths that do not explicitly return in a function. */
-    // "noFallthroughCasesInSwitch": true,               /* Enable error reporting for fallthrough cases in switch statements. */
-    // "noUncheckedIndexedAccess": true,                 /* Add 'undefined' to a type when accessed using an index. */
-    // "noImplicitOverride": true,                       /* Ensure overriding members in derived classes are marked with an override modifier. */
-    // "noPropertyAccessFromIndexSignature": true,       /* Enforces using indexed accessors for keys declared using an indexed type. */
-    // "allowUnusedLabels": true,                        /* Disable error reporting for unused labels. */
-    // "allowUnreachableCode": true,                     /* Disable error reporting for unreachable code. */
-
-    /* Completeness */
-    // "skipDefaultLibCheck": true,                      /* Skip type checking .d.ts files that are included with TypeScript. */
-    "skipLibCheck": true                                 /* Skip type checking all .d.ts files. */
-  },
-  "include": ["client/**/*.ts","client/*.ts", "test/**/*.ts"],
-}