diff --git a/frontend/package.json b/frontend/package.json index 44ff0085e..0bd0558cb 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -19,8 +19,10 @@ }, "dependencies": { "@apollo/client": "^3.2.5", + "@radix-ui/react-tabs": "^1.0.4", "axios": "^1.2.6", "bootstrap": "^4.5.2", + "clsx": "^2.0.0", "color": "^3.1.3", "date-fns": "^2.21.1", "fuse.js": "^6.6.2", @@ -41,7 +43,7 @@ "react-select": "^5.7.2", "react-tooltip": "^5.7.2", "react-window": "^1.8.5", - "recharts": "^2.3.2", + "recharts": "^2.8.0", "redux": "^4.0.4", "redux-thunk": "^2.3.0" }, @@ -79,7 +81,7 @@ "sass": "^1.50.1", "serve": "^14.2.0", "typescript": "^4.9.5", - "vite": "^4.3.1", + "vite": "^4.4.11", "vite-plugin-html": "^3.2.0", "vite-plugin-svgr": "^2.4.0", "vite-tsconfig-paths": "^4.2.0" diff --git a/frontend/src/Berkeleytime.tsx b/frontend/src/Berkeleytime.tsx index 9d6f45d6a..dc460a79c 100644 --- a/frontend/src/Berkeleytime.tsx +++ b/frontend/src/Berkeleytime.tsx @@ -1,11 +1,10 @@ -import { memo, useEffect } from 'react'; +import { useEffect } from 'react'; import { useDispatch } from 'react-redux'; import { openBanner, enterMobile, exitMobile, openLandingModal } from './redux/common/actions'; import useDimensions from 'react-cool-dimensions'; import easterEgg from 'utils/easterEgg'; import Routes from './Routes'; -import { fetchEnrollContext } from 'redux/actions'; -import { IconoirProvider } from 'iconoir-react'; +import { fetchEnrollContext, fetchGradeContext } from 'redux/actions'; const Berkeleytime = () => { const dispatch = useDispatch(); @@ -22,8 +21,10 @@ const Berkeleytime = () => { }); useEffect(() => { + observe(document.getElementById('root')); // Fetch enrollment context early on for catalog and enrollment page. dispatch(fetchEnrollContext()); + dispatch(fetchGradeContext()); const bannerType = 'fa23recruitment'; // should match value in ./redux/common/reducer.ts if (localStorage.getItem('bt-hide-banner') !== bannerType) { @@ -41,15 +42,9 @@ const Berkeleytime = () => { if (localStorage.getItem(key) === null) { localStorage.setItem(key, key); } - }, [dispatch]); - - return ( -