summaryrefslogtreecommitdiff
path: root/client/components/home
diff options
context:
space:
mode:
authorJoseph Ditton <jditton.atomic@gmail.com>2021-11-23 14:04:12 -0700
committerJoseph Ditton <jditton.atomic@gmail.com>2021-11-23 14:04:12 -0700
commit8d0b32f8dfe45291426e58f6bf20cffac8dab6e7 (patch)
treeec4c1e08e8698d7118641612b67bce940019b3dc /client/components/home
parent4ae4e874689a71e33cdd7a5799fc0c85c4861367 (diff)
downloadlocchat-8d0b32f8dfe45291426e58f6bf20cffac8dab6e7.tar.gz
locchat-8d0b32f8dfe45291426e58f6bf20cffac8dab6e7.zip
adds api, guard, tailwind
Diffstat (limited to 'client/components/home')
-rw-r--r--client/components/home/_home.jsx31
1 files changed, 22 insertions, 9 deletions
diff --git a/client/components/home/_home.jsx b/client/components/home/_home.jsx
index 02ebe38..00a7ab3 100644
--- a/client/components/home/_home.jsx
+++ b/client/components/home/_home.jsx
@@ -1,20 +1,33 @@
-import { useContext } from 'react';
-import { SettingsContext } from '../../utils/settings_context';
+import { useContext, useEffect, useState } from 'react';
+import { ApiContext } from '../../utils/api_context';
+import { AuthContext } from '../../utils/auth_context';
export const Home = () => {
- const [, dispatch] = useContext(SettingsContext);
+ const [, setAuthToken] = useContext(AuthContext);
+ const api = useContext(ApiContext);
+
+ const [loading, setLoading] = useState(true);
+ const [user, setUser] = useState(null);
+ useEffect(async () => {
+ const res = await api.get('/users/me');
+ setUser(res.user);
+ setLoading(false);
+ }, []);
+
const logout = async () => {
- const res = await fetch('/sessions', {
- method: 'DELETE',
- });
- if (res.status === 200) {
- dispatch({ type: 'update', payload: { jwt: undefined } });
+ const res = await api.del('/sessions');
+ if (res.success) {
+ setAuthToken(null);
}
};
+ if (loading) {
+ return <div>Loading...</div>;
+ }
+
return (
<div>
- <h1>Welcome</h1>
+ <h1>Welcome {user.name}</h1>
<button type="button" onClick={logout}>
Logout
</button>