+
{tour.name}
+
{tour.location}
- {/* Price and Duration */}
-
-
- {tour.price.toLocaleString('en-IN')}
-
-
- {tour.duration}
-
-
+
+
+
+ {tour.rating}
+
-
-
- {locked ? (
-
Locked by {locked.lockedBy}
- ) : null}
-
+
+
+
-
+
+ );
+};
+
+const Interested = () => {
+ const { interestedTours, removeFromInterested } = useInterested();
+ const { theme, toggleTheme } = useTheme();
+ const navigate = useNavigate();
+ const isDarkMode = theme === "dark";
+
+ const EmptyState = () => (
+
+
+ {/* Decorative blobs */}
+
+
+
+
+ {/* Floating Heart Icon */}
+
+
+
+
+
+
+
+
+
+
+ Your Adventure Awaits
+
+
+
+ Discover amazing destinations and save your favorite tours. Start
+ building your dream travel collection today.
+
+
+
+ navigate("/plan")}
+ className="flex items-center justify-center gap-3 px-8 py-4 bg-[#27A343] text-white rounded-xl hover:bg-[#239a3d] transition-all duration-300 font-semibold text-base shadow-lg focus:outline-none focus:ring-2 focus:ring-[#27A343] focus:ring-offset-2"
+ aria-label="Explore Tours"
+ >
+
+ Explore Tours
+
+
+
+
+ View Map
+
+
+
+
+
+ );
+
+ // Return main Interested page
+};
+
+const InterestedPage = () => {
+ const { interestedTours, removeFromInterested } = useInterested();
+ const { theme, toggleTheme } = useTheme();
+ const isDarkMode = theme === "dark";
+
+ const navigate = useNavigate();
+
+ return (
+
+
+ {/* Theme Toggle */}
+
+
+ {isDarkMode ? : }
+
+
+
+ {/* Header */}
+
+
+
+
+ Interested Tours
+
+
+
+
+ {/* Tours Grid */}
+
+
+ {interestedTours.length > 0
+ ? interestedTours.map((tour, index) => (
+
+ ))
+ : null}
+
+
+
);
};
-export default Card;
\ No newline at end of file
+export default Interested;
diff --git a/src/Components/Navbar.jsx b/src/Components/Navbar.jsx
index c340d463..b2b4d4b7 100644
--- a/src/Components/Navbar.jsx
+++ b/src/Components/Navbar.jsx
@@ -34,14 +34,10 @@ const Navbar = ({ isLoggedIn }) => {
setActiveDropdown(null);
}
};
-
document.addEventListener("mousedown", handleClickOutside);
- return () => {
- document.removeEventListener("mousedown", handleClickOutside);
- };
+ return () => document.removeEventListener("mousedown", handleClickOutside);
}, []);
- // Standalone menu items (Plan Trip comes before AI Assistant now)
const standaloneItems = [
{ to: "/plan", text: "Plan Trip" },
{ to: "/api/chat", text: "AI Assistant" },
@@ -49,7 +45,6 @@ const Navbar = ({ isLoggedIn }) => {
{ to: "/about", text: "About" },
];
- // Organized menu structure with dropdowns
const menuStructure = [
{
title: "Tools",
@@ -57,7 +52,7 @@ const Navbar = ({ isLoggedIn }) => {
items: [
{ to: "/activity-planner", text: "Activity Planner" },
{ to: "/currency-converter", text: "Currency Converter" },
- ]
+ ],
},
{
title: "Discover",
@@ -66,22 +61,19 @@ const Navbar = ({ isLoggedIn }) => {
{ to: "/TripRecommender", text: "Trip Recommender" },
{ to: "/blogs", text: "Travel Blogs" },
{ to: "/interested", text: "Wishlist" },
- ]
+ ],
},
{
title: "Community",
key: "community",
- items: [
- { to: "/add-blog", text: "Write Blog" },
- ]
- }
+ items: [{ to: "/add-blog", text: "Write Blog" }],
+ },
];
const toggleDropdown = (key) => {
setActiveDropdown(activeDropdown === key ? null : key);
};
- // Theme-based classes
const navbarClasses =
theme === "dark"
? "bg-gray-800 shadow-lg border-b border-gray-700"
@@ -142,59 +134,68 @@ const Navbar = ({ isLoggedIn }) => {
? "text-blue-400 text-2xl"
: "text-blue-600 text-2xl"
}
+ aria-hidden="true"
/>
Trip Planner