"use client"; import { useEffect } from "react"; // Cart storage keys - same as in CartContext const CART_STORAGE_KEYS = { ITEMS: "fascano_cart_items", SPECIAL_REQUEST: "fascano_special_request", COUPON: "fascano_coupon", TIP: "fascano_tip", TABLES: "fascano_tables", LOCATION: "fascano_location", ROOM_DETAILS: "fascano_room_details", OFFICE_DETAILS: "fascano_office_details", GIFT_DETAILS: "fascano_gift_details", ESTIMATE_TIME: "fascano_estimate_time", ESTIMATE_TIME_DATE: "fascano_estimate_time_date", ESTIMATE_TIME_TIME: "fascano_estimate_time_time", COLLECTION_METHOD: "fascano_collection_method", } as const; const clearCartFromLocalStorage = () => { // Clear all cart-related data from localStorage Object.values(CART_STORAGE_KEYS).forEach((key) => { localStorage.removeItem(key); }); }; export default function LocalStorageHandler({ restaurantID, restaurantName, }: { restaurantID: string; restaurantName?: string; }) { useEffect(() => { // Check if restaurant has changed const currentStoredRestaurantID = localStorage.getItem("restaurantID"); // If there's a stored restaurant ID and it's different from the current one, clear the cart if ( currentStoredRestaurantID && currentStoredRestaurantID !== restaurantID ) { clearCartFromLocalStorage(); } // Update localStorage with new values localStorage.setItem("restaurantID", restaurantID); // localStorage.setItem("orderType", orderType); }, [restaurantID, restaurantName]); return null; }