From fd0ea154f9f2be9696ba15ddcbb77233a3d6044a Mon Sep 17 00:00:00 2001
From: Alberto Defendi <1369-ahl-berto@users.noreply.gitlab.inf.unibz.it>
Date: Sun, 20 Jun 2021 16:16:06 +0200
Subject: [PATCH] Attach api call to hook.

See #15.
---
 src/api/getReservationsList.ts |  5 +++++
 src/hooks/useReservations.ts   | 20 ++++++++++++--------
 2 files changed, 17 insertions(+), 8 deletions(-)
 create mode 100644 src/api/getReservationsList.ts

diff --git a/src/api/getReservationsList.ts b/src/api/getReservationsList.ts
new file mode 100644
index 0000000..a5739f8
--- /dev/null
+++ b/src/api/getReservationsList.ts
@@ -0,0 +1,5 @@
+import axios from 'axios';
+import { InsertReservationType } from 'types/InsertReservationType';
+
+export const getReservationsList = async (): Promise<InsertReservationType[]> =>
+  axios(`/api/web/reservations/`).then((res) => res.data);
diff --git a/src/hooks/useReservations.ts b/src/hooks/useReservations.ts
index b671101..32fa622 100644
--- a/src/hooks/useReservations.ts
+++ b/src/hooks/useReservations.ts
@@ -1,16 +1,20 @@
-import { getReservations } from 'api/getReservations';
-import { getRole } from 'api/getRole';
-import { useEffect, useState } from 'react';
+import { getReservationsList } from 'api/getReservationsList';
+import { useMemo, useState } from 'react';
+import { InsertReservationType } from 'types/InsertReservationType';
 
-export const useReservations = (): any => {
-  useEffect(() => {
+export const useReservations = (): InsertReservationType[] => {
+  const [reservationList, setReservationList] = useState<
+    InsertReservationType[]
+  >([]);
+  useMemo(() => {
     let isMounted = true;
 
-    getReservations().then((data) => console.log(data));
-
+    getReservationsList().then((list) => {
+      if (isMounted) setReservationList(list);
+    });
     return () => {
       isMounted = false;
     };
   }, []);
-  return null;
+  return reservationList;
 };
-- 
GitLab