Feature/amiriis teleport setad

This commit is contained in:
AmirHossein Mahmoodi
2025-08-16 06:25:39 +00:00
parent f3d1d54818
commit 5a75f8b2eb
20 changed files with 217 additions and 126 deletions

View File

@@ -36,6 +36,7 @@ const AuthContext = createContext();
export const AuthProvider = ({ children }) => {
const [errorState, setErrorState] = useState({ status: null, message: "" });
const [state, dispatch] = useReducer(authReducer, initAuth);
const [tokenChecked, setTokenChecked] = useState(false);
const clearUser = useCallback(() => {
dispatch({ type: "CLEAR_USER" });
@@ -95,9 +96,12 @@ export const AuthProvider = ({ children }) => {
useEffect(() => {
const localToken = localStorage.getItem("_token");
if (localToken) dispatch({ type: "SET_TOKEN", token: localToken });
setTokenChecked(true);
}, []);
useEffect(() => {
if (!tokenChecked) return;
if (!state.token) {
clearUser();
changeAuthState(false);
@@ -105,7 +109,7 @@ export const AuthProvider = ({ children }) => {
return;
}
getUser();
}, [state.token]);
}, [tokenChecked, state.token]);
return (
<AuthContext.Provider