From 4b455f01b3909ec30f3be4e4cb9c51b68771ff7c Mon Sep 17 00:00:00 2001 From: Mathias Wagner <germannewsmaker@gmail.com> Date: Mon, 13 Nov 2023 13:10:07 +0100 Subject: [PATCH] Created the UserProvider.jsx context --- .../contexts/UserProvider/UserProvider.jsx | 20 +++++++++++++++++++ .../Manage/contexts/UserProvider/index.js | 1 + 2 files changed, 21 insertions(+) create mode 100644 src/states/Manage/contexts/UserProvider/UserProvider.jsx create mode 100644 src/states/Manage/contexts/UserProvider/index.js diff --git a/src/states/Manage/contexts/UserProvider/UserProvider.jsx b/src/states/Manage/contexts/UserProvider/UserProvider.jsx new file mode 100644 index 0000000..7d0744b --- /dev/null +++ b/src/states/Manage/contexts/UserProvider/UserProvider.jsx @@ -0,0 +1,20 @@ +import {createContext, useEffect, useState} from "react"; +import {jsonRequest} from "@/common/util/RequestUtil.js"; + +export const UserContext = createContext({}); + +export const UserProvider = ({children}) => { + const [user, setUser] = useState(null); + + const updateUser = async () => jsonRequest("/user/@me").then((res) => setUser(res)); + + useEffect(() => { + updateUser(); + }, []); + + return ( + <UserContext.Provider value={user}> + {children} + </UserContext.Provider> + ) +} \ No newline at end of file diff --git a/src/states/Manage/contexts/UserProvider/index.js b/src/states/Manage/contexts/UserProvider/index.js new file mode 100644 index 0000000..53f74df --- /dev/null +++ b/src/states/Manage/contexts/UserProvider/index.js @@ -0,0 +1 @@ +export * from "./UserProvider.jsx"; \ No newline at end of file