inventory / frontend / src / App.js
App.js
Raw
import React, { useEffect } from "react";
import LoginForm from "./features/auth/LoginForm";
import { useSelector, useDispatch } from "react-redux";
import { Home } from "./features/core/Home";
import { getUser, refreshToken } from "./features/auth/authSlice";
import {
  getInventoryTaking,
  getBranch,
  getBranches,
} from "./features/core/mainSlice";

export default function App() {
  const token = useSelector((state) => state.auth.token);

  const dispatch = useDispatch();

  useEffect(() => {
    dispatch(refreshToken());
    dispatch(getUser());
    dispatch(getBranches());
    dispatch(getBranch());
    dispatch(getInventoryTaking());
  }, [dispatch]);

  return <>{token ? <Home /> : <LoginForm />} </>;
}