significant refactor
This commit is contained in:
@@ -1,14 +1,9 @@
|
||||
import { createContext, PropsWithChildren, useCallback, useContext, useMemo } from "react";
|
||||
import { MantineColor, MantineColorScheme } from "@mantine/core";
|
||||
import { useQuery, useQueryClient } from "@tanstack/react-query";
|
||||
import { fetchMe } from "@/features/players/server";
|
||||
import { useQueryClient } from "@tanstack/react-query";
|
||||
import { Player } from "@/features/players/types";
|
||||
import { playerKeys, playerQueries, useMe } from "@/features/players/queries";
|
||||
|
||||
const queryKey = ['auth'];
|
||||
export const authQueryConfig = {
|
||||
queryKey,
|
||||
queryFn: fetchMe
|
||||
}
|
||||
|
||||
interface AuthData {
|
||||
user: Player | undefined;
|
||||
@@ -32,11 +27,11 @@ const AuthContext = createContext<AuthContextType>({
|
||||
});
|
||||
|
||||
export const AuthProvider: React.FC<PropsWithChildren> = ({ children }) => {
|
||||
const queryClient = useQueryClient();
|
||||
const { data, isLoading } = useQuery<AuthData>(authQueryConfig);
|
||||
|
||||
const queryClient = useQueryClient();
|
||||
const { data } = useMe();
|
||||
|
||||
const set = useCallback((updates: Partial<AuthData>) => {
|
||||
queryClient.setQueryData(queryKey, (oldData: AuthData | undefined) => {
|
||||
queryClient.setQueryData(playerKeys.auth, (oldData: AuthData | undefined) => {
|
||||
const currentData = oldData || defaultAuthData;
|
||||
return {
|
||||
...currentData,
|
||||
@@ -48,10 +43,6 @@ export const AuthProvider: React.FC<PropsWithChildren> = ({ children }) => {
|
||||
});
|
||||
}, [queryClient]);
|
||||
|
||||
if (isLoading) {
|
||||
return <p>Loading...</p>
|
||||
}
|
||||
|
||||
return (
|
||||
<AuthContext
|
||||
value={{
|
||||
|
||||
Reference in New Issue
Block a user