JSX.Element) => (
+
+
+
+ ),
+ ],
+};
+
+export const Default = {};
diff --git a/src/stories/Header.stories.tsx b/src/stories/Header.stories.tsx
new file mode 100644
index 0000000..0d4610e
--- /dev/null
+++ b/src/stories/Header.stories.tsx
@@ -0,0 +1,30 @@
+import { JSX } from "react";
+import { MemoryRouter } from "react-router";
+import Header from "../components/Header/Header";
+import { EventProvider } from "../contexts/Events/EventProvider";
+import { PendingMembersProvider } from "../contexts/PendingMembers/PendingMembersProvider";
+import { AuthProvider } from "../contexts/Auth/AuthProvider";
+
+export default {
+ title: "Layout/Header",
+ component: Header,
+ parameters: {
+ layout: "fullscreen",
+ },
+ tags: ["autodocs"],
+ decorators: [
+ (Story: () => JSX.Element) => (
+
+
+
+
+
+
+
+
+
+ ),
+ ],
+};
+
+export const Default = {};
diff --git a/src/stories/Loading.stories.jsx b/src/stories/Loading.stories.jsx
deleted file mode 100644
index d856a7e..0000000
--- a/src/stories/Loading.stories.jsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import Loading from "../components/ui/Loading/Loading";
-
-
-export default {
- title: 'UI/Loading',
- component: Loading,
- parameters: {
- layout: 'centered',
- },
- tags: ['autodocs'],
-};
-
-export const Primary = {};
\ No newline at end of file
diff --git a/src/stories/Loading.stories.tsx b/src/stories/Loading.stories.tsx
new file mode 100644
index 0000000..c2bc6aa
--- /dev/null
+++ b/src/stories/Loading.stories.tsx
@@ -0,0 +1,14 @@
+import Loading from "../components/ui/Loading/Loading"
+
+
+export default {
+ title: "UI/Loading",
+ component: Loading,
+ parameters: {
+ layout: "centered",
+ },
+ tags: ['autodocs'],
+ argTypes: {},
+}
+
+export const Default = {}
\ No newline at end of file
diff --git a/src/utils/auth/login.js b/src/utils/auth/login.js
deleted file mode 100644
index 1d99d02..0000000
--- a/src/utils/auth/login.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
-
-export default async function login(email, password) {
- const csrfToken = await getXSRFToken();
-
- return fetchWrapper(
- "/api/users/login",
- { email, password },
- "POST",
- { "X-XSRF-TOKEN": csrfToken }
- );
-}
diff --git a/src/utils/auth/login.ts b/src/utils/auth/login.ts
new file mode 100644
index 0000000..3c7c6e2
--- /dev/null
+++ b/src/utils/auth/login.ts
@@ -0,0 +1,14 @@
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
+
+
+
+export default async function login(email: string, password: string) {
+ const csrfToken: string = await getXSRFToken();
+ return fetchWrapper(
+ "/api/users/login",
+ { email, password },
+ "POST",
+ { "X-XSRF-TOKEN": csrfToken }
+ );
+}
\ No newline at end of file
diff --git a/src/utils/auth/logout.js b/src/utils/auth/logout.ts
similarity index 100%
rename from src/utils/auth/logout.js
rename to src/utils/auth/logout.ts
diff --git a/src/utils/date/formatDateLetter.ts b/src/utils/date/formatDateLetter.ts
index f4c3f91..1da9160 100644
--- a/src/utils/date/formatDateLetter.ts
+++ b/src/utils/date/formatDateLetter.ts
@@ -1,35 +1,3 @@
-
-
-/*export function formatDateLetter(d) {
- if (!d) return "Date inconnue";
-
- const dateObj = new Date(d);
- if (isNaN(dateObj.getTime())) return "Date invalide";
-
- const monthNames = [
- "Janvier", "Février", "Mars", "Avril", "Mai", "Juin",
- "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"
- ];
-
- const day = dateObj.getDate().toString().padStart(2, "0");
- const month = monthNames[dateObj.getMonth()];
- const year = dateObj.getFullYear();
- const hours = dateObj.getHours().toString().padStart(2, "0");
- const minutes = dateObj.getMinutes().toString().padStart(2, "0");
-
- return `${day} ${month} ${year} à ${hours}:${minutes}`;
-}
-
-
-export function formatDateLetterJS(d) {
- const monthNames = [
- "Janvier", "Février", "Mars", "Avril", "Mai", "Juin",
- "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"
- ];
- const [year, month, day] = d.split('-');
- return `${day} ${monthNames[parseInt(month) - 1]} ${year}`;
-}*/
-
export function formatDateLetter(d: string | Date | null | undefined): string {
if (!d) return "Date inconnue";
diff --git a/src/utils/events/createEvent.js b/src/utils/events/createEvent.ts
similarity index 52%
rename from src/utils/events/createEvent.js
rename to src/utils/events/createEvent.ts
index 764d419..eac4b13 100644
--- a/src/utils/events/createEvent.js
+++ b/src/utils/events/createEvent.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function createEvent(name, description, start, end) {
+export default async function createEvent(name:string, description:string, start:string, end:string) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/events/deleteEvent.js b/src/utils/events/deleteEvent.ts
similarity index 57%
rename from src/utils/events/deleteEvent.js
rename to src/utils/events/deleteEvent.ts
index 10c8a49..7a748a1 100644
--- a/src/utils/events/deleteEvent.js
+++ b/src/utils/events/deleteEvent.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function deleteEvent(eventId) {
+export default async function deleteEvent(eventId:number) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/events/eventCounter.js b/src/utils/events/eventCounter.js
deleted file mode 100644
index 20ee578..0000000
--- a/src/utils/events/eventCounter.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { useEffect, useState } from "react";
-import getAllEvents from "../../utils/events/getAllEvents";
-
-function EventsCounter() {
- const [eventsCount, setEventsCount] = useState(0);
- const [loading, setLoading] = useState(true);
- useEffect(() => {
- const fetchEvents = async () => {
- try {
- const events = await getAllEvents();
- if (Array.isArray(events)) {
- setEventsCount(events.length);
- } else {
- setEventsCount(0);
- }
- } catch (err) {
- console.error(err);
- setEventsCount(0);
- } finally {
- setLoading(false);
- }
- };
- fetchEvents();
- }, []);
- if (loading) return
Chargement...
;
- return
Nombre d’événements : {eventsCount}
;
-}
-export default EventsCounter;
diff --git a/src/utils/events/getAllEvents.js b/src/utils/events/getAllEvents.ts
similarity index 68%
rename from src/utils/events/getAllEvents.js
rename to src/utils/events/getAllEvents.ts
index b35f979..79bfc67 100644
--- a/src/utils/events/getAllEvents.js
+++ b/src/utils/events/getAllEvents.ts
@@ -1,4 +1,4 @@
-import fetchWrapper from "../fetchWrapper.js";
+import fetchWrapper from "../fetchWrapper";
export default async function getAllEvents() {
return fetchWrapper("/api/events/", null, "GET");
diff --git a/src/utils/events/getEventById.js b/src/utils/events/getEventById.js
deleted file mode 100644
index 97d6272..0000000
--- a/src/utils/events/getEventById.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-
-export default async function GetEventById(id) {
- return fetchWrapper(`/api/events/${id}`, null, "GET");
-}
diff --git a/src/utils/events/getEventById.ts b/src/utils/events/getEventById.ts
new file mode 100644
index 0000000..70cb6db
--- /dev/null
+++ b/src/utils/events/getEventById.ts
@@ -0,0 +1,5 @@
+import fetchWrapper from "../fetchWrapper";
+
+export default async function GetEventById(id:number) {
+ return fetchWrapper(`/api/events/${id}`, null, "GET");
+}
diff --git a/src/utils/events/searchEvents.js b/src/utils/events/searchEvents.ts
similarity index 80%
rename from src/utils/events/searchEvents.js
rename to src/utils/events/searchEvents.ts
index aa8a327..351ae77 100644
--- a/src/utils/events/searchEvents.js
+++ b/src/utils/events/searchEvents.ts
@@ -1,4 +1,4 @@
-export default async function searchEvents(query) {
+export default async function searchEvents(query: string): Promise
{
try {
const encodedQuery = encodeURIComponent(query);
const response = await fetch(
@@ -13,7 +13,7 @@ export default async function searchEvents(query) {
}
);
const data = await response.json();
- return data.hits.map(hit => hit.document);
+ return data.hits.map((hit: any) => hit.document);
} catch (err) {
console.error("Erreur :", err);
diff --git a/src/utils/fetchWrapper.ts b/src/utils/fetchWrapper.ts
index a130373..4f04e5e 100644
--- a/src/utils/fetchWrapper.ts
+++ b/src/utils/fetchWrapper.ts
@@ -1,44 +1,3 @@
-/*export default async function fetchWrapper(path,data = null,method = "GET",headers = {}) {
- try {
- const res = await fetch(
- `${import.meta.env.VITE_API_URL}${path}`,
- {
- method,
- credentials: "include",
- headers: {
- "Accept": "application/json",
- "Content-Type": "application/json",
- ...headers,
- },
- body: data ? JSON.stringify(data) : null,
- }
- );
-
- let responseData = null;
-
- try {
- responseData = await res.json();
- } catch (_) {
- responseData = null;
- }
-
- return {
- status: res.status,
- data: responseData,
- };
-
- } catch (err) {
- console.error("❌ Erreur réseau :", err);
-
- return {
- status: 0,
- data: {
- message: "Network error",
- },
- };
- }
-}*/
-
interface FetchResponse {
status: number;
data: T | null;
@@ -79,7 +38,7 @@ export default async function fetchWrapper(
};
} catch (err) {
- console.error("❌ Erreur réseau :", err);
+ console.error("Erreur réseau :", err);
return {
status: 0,
diff --git a/src/utils/getRoles.js b/src/utils/getRoles.ts
similarity index 68%
rename from src/utils/getRoles.js
rename to src/utils/getRoles.ts
index 99cadb6..fd8d0d4 100644
--- a/src/utils/getRoles.js
+++ b/src/utils/getRoles.ts
@@ -1,4 +1,4 @@
-import fetchWrapper from "./fetchWrapper.js";
+import fetchWrapper from "./fetchWrapper";
export default async function getRoles() {
return fetchWrapper("/api/roles", null, "GET");
diff --git a/src/utils/getUser.js b/src/utils/getUser.ts
similarity index 67%
rename from src/utils/getUser.js
rename to src/utils/getUser.ts
index 6d71295..811c2b5 100644
--- a/src/utils/getUser.js
+++ b/src/utils/getUser.ts
@@ -1,5 +1,5 @@
-import fetchWrapper from "./fetchWrapper.js";
+import fetchWrapper from "./fetchWrapper";
export default async function getUser() {
return fetchWrapper("/api/users/me", null, "GET");
-}
+}
\ No newline at end of file
diff --git a/src/utils/notifications/deleteNotificationUser.js b/src/utils/notifications/deleteNotificationUser.ts
similarity index 92%
rename from src/utils/notifications/deleteNotificationUser.js
rename to src/utils/notifications/deleteNotificationUser.ts
index b7d7a93..4322722 100644
--- a/src/utils/notifications/deleteNotificationUser.js
+++ b/src/utils/notifications/deleteNotificationUser.ts
@@ -1,6 +1,6 @@
-import getXSRFToken from "../getXSRF.js";
+import getXSRFToken from "../getXSRF";
-export default async function deleteNotificationUser(notificationId) {
+export default async function deleteNotificationUser(notificationId:number) {
const csrfToken = await getXSRFToken();
try {
diff --git a/src/utils/notifications/getUserNotifications.js b/src/utils/notifications/getUserNotifications.ts
similarity index 100%
rename from src/utils/notifications/getUserNotifications.js
rename to src/utils/notifications/getUserNotifications.ts
diff --git a/src/utils/notifications/readNotifications.js b/src/utils/notifications/readNotifications.ts
similarity index 94%
rename from src/utils/notifications/readNotifications.js
rename to src/utils/notifications/readNotifications.ts
index 0f406ce..5b7f998 100644
--- a/src/utils/notifications/readNotifications.js
+++ b/src/utils/notifications/readNotifications.ts
@@ -1,4 +1,4 @@
-import getXSRFToken from "../getXSRF.js";
+import getXSRFToken from "../getXSRF";
export default async function readNotifications() {
diff --git a/src/utils/register.js b/src/utils/register.ts
similarity index 52%
rename from src/utils/register.js
rename to src/utils/register.ts
index 489f07c..69a983c 100644
--- a/src/utils/register.js
+++ b/src/utils/register.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "./fetchWrapper.js";
-import getXSRFToken from "./getXSRF.js";
+import fetchWrapper from "./fetchWrapper";
+import getXSRFToken from "./getXSRF";
-export default async function register(email, password, name, lastname, phone) {
+export default async function register(email:string, password:string, name:string, lastname:string, phone:string) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/scrollToTop.js b/src/utils/scrollToTop.ts
similarity index 100%
rename from src/utils/scrollToTop.js
rename to src/utils/scrollToTop.ts
diff --git a/src/utils/tasks/assign.ts b/src/utils/tasks/assign.ts
new file mode 100644
index 0000000..a9d7e8b
--- /dev/null
+++ b/src/utils/tasks/assign.ts
@@ -0,0 +1,13 @@
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
+
+export default async function assign(taskId: number): Promise {
+ const csrfToken = await getXSRFToken();
+
+ return fetchWrapper(
+ "/api/events/task/assign",
+ {task_id: taskId},
+ "POST",
+ {"X-XSRF-TOKEN": csrfToken}
+ );
+}
diff --git a/src/utils/tasks/assign.js b/src/utils/tasks/assignOtherUser.ts
similarity index 64%
rename from src/utils/tasks/assign.js
rename to src/utils/tasks/assignOtherUser.ts
index cb85dd3..189c06b 100644
--- a/src/utils/tasks/assign.js
+++ b/src/utils/tasks/assignOtherUser.ts
@@ -1,11 +1,11 @@
import fetchWrapper from "../fetchWrapper.js";
import getXSRFToken from "../getXSRF.js";
-export default async function assign(taskId) {
+export default async function assignOtherUser(taskId: number, userId: number): Promise {
const csrfToken = await getXSRFToken();
return fetchWrapper(
- "/api/events/task/assign",
+ `/api/events/task/assign/${userId}`,
{task_id: taskId},
"POST",
{"X-XSRF-TOKEN": csrfToken}
diff --git a/src/utils/tasks/createTask.js b/src/utils/tasks/createTask.js
deleted file mode 100644
index a023d70..0000000
--- a/src/utils/tasks/createTask.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
-
-export default async function createTask({
- eventId,
- name,
- description,
- start,
- end,
- location,
- maxParticipants,
- }) {
- const csrfToken = await getXSRFToken();
-
- return fetchWrapper(
- "/api/events/task",
- {
- event_id: eventId,
- name,
- description,
- start,
- end,
- location,
- max_participants: maxParticipants,
- },
- "POST",
- {"X-XSRF-TOKEN": csrfToken}
- );
-}
diff --git a/src/utils/tasks/createTask.ts b/src/utils/tasks/createTask.ts
new file mode 100644
index 0000000..495b67e
--- /dev/null
+++ b/src/utils/tasks/createTask.ts
@@ -0,0 +1,39 @@
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
+
+interface CreateTaskParams {
+ eventId: number;
+ name: string;
+ description: string;
+ start: string;
+ end: string;
+ location: string;
+ maxParticipants: number;
+}
+
+export default async function createTask({
+ eventId,
+ name,
+ description,
+ start,
+ end,
+ location,
+ maxParticipants,
+}: CreateTaskParams): Promise {
+ const csrfToken = await getXSRFToken();
+
+ return fetchWrapper(
+ "/api/events/task",
+ {
+ event_id: eventId,
+ name,
+ description,
+ start,
+ end,
+ location,
+ max_participants: maxParticipants,
+ },
+ "POST",
+ {"X-XSRF-TOKEN": csrfToken}
+ );
+}
diff --git a/src/utils/tasks/deleteTask.js b/src/utils/tasks/deleteTask.js
deleted file mode 100644
index 2641307..0000000
--- a/src/utils/tasks/deleteTask.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
-
-export default async function deleteTask(taskId) {
- const csrfToken = await getXSRFToken();
-
- return fetchWrapper(
- `/api/events/tasks/${taskId}`,
- { task_id: taskId },
- "DELETE",
- { "X-XSRF-TOKEN": csrfToken }
- );
-}
diff --git a/src/utils/tasks/deleteTask.ts b/src/utils/tasks/deleteTask.ts
new file mode 100644
index 0000000..bc0e163
--- /dev/null
+++ b/src/utils/tasks/deleteTask.ts
@@ -0,0 +1,13 @@
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
+
+export default async function deleteTask(taskId: number): Promise {
+ const csrfToken = await getXSRFToken();
+
+ return fetchWrapper(
+ `/api/events/tasks/${taskId}`,
+ {task_id: taskId},
+ "DELETE",
+ {"X-XSRF-TOKEN": csrfToken}
+ );
+}
diff --git a/src/utils/tasks/isAssigned.js b/src/utils/tasks/isAssigned.js
deleted file mode 100644
index 99ce6ff..0000000
--- a/src/utils/tasks/isAssigned.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-
-export default async function isAssigned(taskId) {
- return fetchWrapper(
- `/api/events/tasks/${taskId}/assigned`,
- null,
- "GET"
- );
-}
diff --git a/src/utils/tasks/isAssigned.ts b/src/utils/tasks/isAssigned.ts
new file mode 100644
index 0000000..aafd14e
--- /dev/null
+++ b/src/utils/tasks/isAssigned.ts
@@ -0,0 +1,9 @@
+import fetchWrapper from "../fetchWrapper";
+
+export default async function isAssigned(taskId: number): Promise {
+ return fetchWrapper(
+ `/api/events/tasks/${taskId}/assigned`,
+ null,
+ "GET"
+ );
+}
diff --git a/src/utils/tasks/unAssign.ts b/src/utils/tasks/unAssign.ts
new file mode 100644
index 0000000..4871a2e
--- /dev/null
+++ b/src/utils/tasks/unAssign.ts
@@ -0,0 +1,13 @@
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
+
+export default async function unAssign(taskId: number): Promise {
+ const csrfToken = await getXSRFToken();
+
+ return fetchWrapper(
+ "/api/events/task/unassign",
+ {task_id: taskId},
+ "POST",
+ {"X-XSRF-TOKEN": csrfToken}
+ );
+}
diff --git a/src/utils/tasks/unAssign.js b/src/utils/tasks/unAssignOtherUser.ts
similarity index 63%
rename from src/utils/tasks/unAssign.js
rename to src/utils/tasks/unAssignOtherUser.ts
index 7110328..0781dca 100644
--- a/src/utils/tasks/unAssign.js
+++ b/src/utils/tasks/unAssignOtherUser.ts
@@ -1,13 +1,13 @@
import fetchWrapper from "../fetchWrapper.js";
import getXSRFToken from "../getXSRF.js";
-export default async function unAssign(taskId) {
+export default async function unAssignOtherUser(taskId: number, userId: number): Promise {
const csrfToken = await getXSRFToken();
return fetchWrapper(
- "/api/events/task/unassign",
+ `/api/events/task/unassign/${userId}`,
{task_id: taskId},
"POST",
{"X-XSRF-TOKEN": csrfToken}
);
-}
+}
\ No newline at end of file
diff --git a/src/utils/users/adminCreateUser.ts b/src/utils/users/adminCreateUser.ts
index 01860d3..86f02bd 100644
--- a/src/utils/users/adminCreateUser.ts
+++ b/src/utils/users/adminCreateUser.ts
@@ -1,8 +1,8 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
import Response from "../../interfaces/response.interface";
-export default async function adminCreateUser(email: string, name: string, lastname: string, phone: string): Promise {
+export default async function adminCreateUser(email: string, name: string, lastname: string, phone: string) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/users/deactivateUser.js b/src/utils/users/deactivateUser.ts
similarity index 58%
rename from src/utils/users/deactivateUser.js
rename to src/utils/users/deactivateUser.ts
index fdf4c44..bbb4161 100644
--- a/src/utils/users/deactivateUser.js
+++ b/src/utils/users/deactivateUser.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function deactivateUser(userId) {
+export default async function deactivateUser(userId:number) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/users/deleteOtherUser.js b/src/utils/users/deleteOtherUser.ts
similarity index 56%
rename from src/utils/users/deleteOtherUser.js
rename to src/utils/users/deleteOtherUser.ts
index ece6425..daf5d4d 100644
--- a/src/utils/users/deleteOtherUser.js
+++ b/src/utils/users/deleteOtherUser.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function deleteOtherUser(userId) {
+export default async function deleteOtherUser(userId:number) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/users/deleteProfilePhoto.ts b/src/utils/users/deleteProfilePhoto.ts
index a5e830f..ca55ef4 100644
--- a/src/utils/users/deleteProfilePhoto.ts
+++ b/src/utils/users/deleteProfilePhoto.ts
@@ -1,4 +1,4 @@
-import getXSRFToken from "../getXSRF.js";
+import getXSRFToken from "../getXSRF";
export default async function deleteProfilePhoto(): Promise<{ status: number; ok: boolean; data?: any; error?: string }> {
try {
diff --git a/src/utils/users/getAllUsers.js b/src/utils/users/getAllUsers.ts
similarity index 64%
rename from src/utils/users/getAllUsers.js
rename to src/utils/users/getAllUsers.ts
index 584c39f..1b75dc9 100644
--- a/src/utils/users/getAllUsers.js
+++ b/src/utils/users/getAllUsers.ts
@@ -1,4 +1,4 @@
-import fetchWrapper from "../fetchWrapper.js";
+import fetchWrapper from "../fetchWrapper";
export default async function getAllUser() {
return fetchWrapper("/api/users");
diff --git a/src/utils/users/getUserById.js b/src/utils/users/getUserById.js
deleted file mode 100644
index e9a2c75..0000000
--- a/src/utils/users/getUserById.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import fetchWrapper from "../fetchWrapper.js";
-
-export default async function getUserById(id) {
- return fetchWrapper(`/api/users/${id}`);
-}
diff --git a/src/utils/users/getUserById.ts b/src/utils/users/getUserById.ts
new file mode 100644
index 0000000..d08943a
--- /dev/null
+++ b/src/utils/users/getUserById.ts
@@ -0,0 +1,5 @@
+import fetchWrapper from "../fetchWrapper";
+
+export default async function getUserById(id:number) {
+ return fetchWrapper(`/api/users/${id}`);
+}
diff --git a/src/utils/users/getUserToValidate.js b/src/utils/users/getUserToValidate.ts
similarity index 68%
rename from src/utils/users/getUserToValidate.js
rename to src/utils/users/getUserToValidate.ts
index 5176f1f..b0fde0e 100644
--- a/src/utils/users/getUserToValidate.js
+++ b/src/utils/users/getUserToValidate.ts
@@ -1,4 +1,4 @@
-import fetchWrapper from "../fetchWrapper.js";
+import fetchWrapper from "../fetchWrapper";
export default async function getUserToValidate() {
return fetchWrapper("/api/users/invalid");
diff --git a/src/utils/users/modifyRole.js b/src/utils/users/modifyRole.ts
similarity index 55%
rename from src/utils/users/modifyRole.js
rename to src/utils/users/modifyRole.ts
index 6526cea..592f739 100644
--- a/src/utils/users/modifyRole.js
+++ b/src/utils/users/modifyRole.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function modifyRole(role, userId) {
+export default async function modifyRole(role:number, userId:number) {
const csrfToken = await getXSRFToken();
return fetchWrapper(
diff --git a/src/utils/users/searchUsers.js b/src/utils/users/searchUsers.ts
similarity index 80%
rename from src/utils/users/searchUsers.js
rename to src/utils/users/searchUsers.ts
index ae0bd3a..6c06005 100644
--- a/src/utils/users/searchUsers.js
+++ b/src/utils/users/searchUsers.ts
@@ -1,4 +1,4 @@
-export default async function searchUsers(query) {
+export default async function searchUsers(query: string): Promise {
try {
const encodedQuery = encodeURIComponent(query);
const response = await fetch(
@@ -13,7 +13,7 @@ export default async function searchUsers(query) {
}
);
const data = await response.json();
- return data.hits.map(hit => hit.document);
+ return data.hits.map((hit: any) => hit.document);
} catch (err) {
console.error("Erreur :", err);
diff --git a/src/utils/users/updateUser.ts b/src/utils/users/updateUser.ts
index 6714250..48f5b51 100644
--- a/src/utils/users/updateUser.ts
+++ b/src/utils/users/updateUser.ts
@@ -1,33 +1,12 @@
-/*import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
-
-export default async function updateUser(name, lastname, phone) {
- const csrfToken = await getXSRFToken();
-
- return fetchWrapper(
- "/api/users/update",
- { name, lastname, phone },
- "POST",
- { "X-XSRF-TOKEN": csrfToken }
- );
-}*/
-
import fetchWrapper from "../fetchWrapper";
import getXSRFToken from "../getXSRF";
-interface UserUpdateData {
- name: string;
- lastname: string;
- phone: string | null;
+export default async function updateUser(name: string, lastname: string, phone: string | null) {
+ const csrfToken = await getXSRFToken();
+ return fetchWrapper(
+ "/api/users/update",
+ { name, lastname, phone },
+ "POST",
+ { "X-XSRF-TOKEN": csrfToken }
+ );
}
-
-interface RequestHeaders {
- "X-XSRF-TOKEN": string;
-}
-export default async function updateUser(name: string,lastname: string,phone: string | null): Promise {
- const csrfToken: string = await getXSRFToken();
- const userData: UserUpdateData = {name,lastname,phone,};
- const headers: RequestHeaders = {"X-XSRF-TOKEN": csrfToken,};
- return fetchWrapper("/api/users/update",userData,"POST",headers);
-}
-
diff --git a/src/utils/users/uploadProfilePhoto.ts b/src/utils/users/uploadProfilePhoto.ts
index ca252a2..f3341ee 100644
--- a/src/utils/users/uploadProfilePhoto.ts
+++ b/src/utils/users/uploadProfilePhoto.ts
@@ -1,4 +1,4 @@
-import getXSRFToken from "../getXSRF.js";
+import getXSRFToken from "../getXSRF";
export default async function uploadProfilePhoto(file: File): Promise<{ status: number; ok: boolean; data?: any; error?: string }> {
const formData = new FormData();
diff --git a/src/utils/users/validateUser.js b/src/utils/users/validateUser.ts
similarity index 56%
rename from src/utils/users/validateUser.js
rename to src/utils/users/validateUser.ts
index f73b3ef..de10071 100644
--- a/src/utils/users/validateUser.js
+++ b/src/utils/users/validateUser.ts
@@ -1,7 +1,7 @@
-import fetchWrapper from "../fetchWrapper.js";
-import getXSRFToken from "../getXSRF.js";
+import fetchWrapper from "../fetchWrapper";
+import getXSRFToken from "../getXSRF";
-export default async function validateUser(userId) {
+export default async function validateUser(userId:number) {
const csrfToken = await getXSRFToken();
return fetchWrapper(