diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index 965d430..714487b 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -12,6 +12,7 @@ import LoadingOverlay from "./components/LoadingOverlay";
import LuasPopup from "./components/LuasPopup";
import TrainStationPopup from "./components/TrainStationPopup";
import IrishRailTrainPopup from "./components/IrishRailTrainPopup";
+import BusPopup from "./components/BusPopup.jsx";
const TRANSIENT_DATA_API = "https://281bc6mcm5.execute-api.us-east-1.amazonaws.com/transient_data";
const PERMANENT_DATA_API = "https://a6y312dpuj.execute-api.us-east-1.amazonaws.com/permanent_data";
@@ -248,20 +249,6 @@ function App() {
icon += "NotRunning";
}
- // popupContent = (
- //
- //
{objectTitle}
- //
- // - Train Details: {splitMessage[1].split("(")[0]}
- // - Train Type: {trainType}
- // - Status: {trainStatus}
- // - Direction: {item.trainDirection}
- // - Update: {splitMessage[2]}
- // - Punctuality: {latenessMessage}
- //
- //
- // );
-
popupContent = (
- {objectTitle}
-
- - Bus ID: {item.busID}
- - Bus Route ID: {item.busRoute}
- - Bus Route Short Name: {item.busRouteShortName}
- - Bus Route Long Name: {item.busRouteLongName}
- - Agency: {item.busRouteAgencyName}
-
-
+
+ //
+ //
{objectTitle}
+ //
+ // - Bus ID: {item.busID}
+ // - Bus Route ID: {item.busRoute}
+ // - Bus Route Short Name: {item.busRouteShortName}
+ // - Bus Route Long Name: {item.busRouteLongName}
+ // - Agency: {item.busRouteAgencyName}
+ //
+ //
);
markerText = item.busRouteAgencyName + " " + item.busRouteShortName + " " + item.busRouteLongName;
diff --git a/frontend/src/components/BusPopup.jsx b/frontend/src/components/BusPopup.jsx
new file mode 100644
index 0000000..c2eef44
--- /dev/null
+++ b/frontend/src/components/BusPopup.jsx
@@ -0,0 +1,36 @@
+import React, { useState } from "react";
+import { useMap } from "react-leaflet";
+
+const BusPopup = ({ item, objectTitle, toggleFavourite, favourites }) => {
+ const [isFavourite, setIsFavourite] = useState(favourites.Bus?.includes(item.busRoute));
+
+ const handleToggleFavourite = () => {
+ toggleFavourite("Bus", item.busRoute);
+ setIsFavourite((prev) => !prev);
+ };
+
+ const map = useMap(); // Access the Leaflet map instance
+
+ return (
+
+
+
{objectTitle}
+
+
+
+ - Bus ID: {item.busID}
+ - Route: {item.busRoute}
+ - Short Name: {item.busRouteShortName}
+ - Long Name: {item.busRouteLongName}
+ - Agency: {item.busRouteAgencyName}
+
+
+ );
+};
+
+export default BusPopup;
\ No newline at end of file