diff --git a/package-lock.json b/package-lock.json index 7ff1cb29..dc46ca48 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,6 +26,7 @@ "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@vitejs/plugin-react": "^4.3.0", + "react-toastify": "^10.0.5", "vite": "^5.2.12" } }, @@ -1811,6 +1812,15 @@ "node": ">=12" } }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -2387,6 +2397,19 @@ "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-toastify": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-10.0.5.tgz", + "integrity": "sha512-mNKt2jBXJg4O7pSdbNUfDdTsK9FIdikfsIE/yUCxbAEXl4HMyJaivrVFcn3Elvt5xvCQYhUZm+hqTIu1UXM3Pw==", + "dev": true, + "dependencies": { + "clsx": "^2.1.0" + }, + "peerDependencies": { + "react": ">=18", + "react-dom": ">=18" + } + }, "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -4059,6 +4082,12 @@ "wrap-ansi": "^7.0.0" } }, + "clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "dev": true + }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -4484,6 +4513,18 @@ "resolved": "https://registry.npmjs.org/react-spinners/-/react-spinners-0.13.8.tgz", "integrity": "sha512-3e+k56lUkPj0vb5NDXPVFAOkPC//XyhKPJjvcGjyMNPWsBKpplfeyialP74G7H7+It7KzhtET+MvGqbKgAqpZA==", "requires": {} +<<<<<<< HEAD + }, + "react-toastify": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-10.0.5.tgz", + "integrity": "sha512-mNKt2jBXJg4O7pSdbNUfDdTsK9FIdikfsIE/yUCxbAEXl4HMyJaivrVFcn3Elvt5xvCQYhUZm+hqTIu1UXM3Pw==", + "dev": true, + "requires": { + "clsx": "^2.1.0" + } +======= +>>>>>>> be9db53b45ec1d45ff6af208cda13aa45c8e503b }, "require-directory": { "version": "2.1.1", diff --git a/package.json b/package.json index 63de92ea..e41be2cb 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "@types/react": "^18.3.3", "@types/react-dom": "^18.3.0", "@vitejs/plugin-react": "^4.3.0", + "react-toastify": "^10.0.5", "vite": "^5.2.12" } } diff --git a/src/components/Dashboard/Dashboard.css b/src/components/Dashboard/Dashboard.css index ba73d00c..10b53fdd 100644 --- a/src/components/Dashboard/Dashboard.css +++ b/src/components/Dashboard/Dashboard.css @@ -14,7 +14,7 @@ margin: 0px; background-color: white; font-weight: 500; - z-index: 10000; + z-index: 10; max-height: 60px; /* border-radius: 5px; */ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; @@ -471,6 +471,18 @@ color: #050a3079; } +.toast-message { + background: #12229d; + color: #fff; + font-size: 12px; + width: 18vw; + padding: 10px; + z-index: 100; +} + +.toast-message:first-child{ + margin-top: 90px; +} @media (max-width: 960px) { .menu { diff --git a/src/components/Dashboard/Dashboard.jsx b/src/components/Dashboard/Dashboard.jsx index 7b63f4ae..c0b767d5 100644 --- a/src/components/Dashboard/Dashboard.jsx +++ b/src/components/Dashboard/Dashboard.jsx @@ -7,7 +7,8 @@ import { auth } from "../../firebase/auth"; import Footer from "../Footer/Footer"; import collegesData from "./colleges.json"; import ScrollToTop from "react-scroll-to-top"; - +import { ToastContainer, toast } from 'react-toastify'; +import 'react-toastify/dist/ReactToastify.css'; import CollegeCard from "./CollegeCard"; import FAQS from "../FAQs/FAQS"; @@ -19,9 +20,17 @@ const Dashboard = () => { useEffect(() => { auth.onAuthStateChanged((user) => { if (user) { + toast.success("Logged in! 🚀",{ + className: "toast-message", + }) console.log(""); } else if (!user) { - navigate("/"); + toast.success("Logged out!",{ + className: "toast-message", + }) + setTimeout(() => { + navigate("/"); + }, 1000); } }); }, []); @@ -37,10 +46,14 @@ const Dashboard = () => { const handleSignOut = () => { signOut(auth) .then(() => { - navigate("/"); + setTimeout(() => { + navigate("/"); + }, 1000); }) .catch((err) => { - alert(err.message); + toast.error(err.message,{ + className: "toast-message", + }); }); }; @@ -125,6 +138,7 @@ window.addEventListener("scroll", setFixed)