Improve debug logging for checkout flow

Add emoji-prefixed logs to make debugging easier:
- 💳 Checkout button clicked
- ✓ Flag set/skipped actions
- 🚪 LogoutOnUnload handler
- 📡 API fetch
- 📦 API response
- 🔗 Stripe redirect
- 🗑️ Cart clearing

This makes it much easier to see the flow in the console.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
Andymick
2026-07-18 06:59:59 +01:00
co-authored by Claude Haiku 4.5
parent 7434b68a79
commit eff9a72409
2 changed files with 9 additions and 6 deletions
+4 -3
View File
@@ -10,20 +10,21 @@ import { useCart } from '@/lib/cartStore';
*/
export default function LogoutOnUnload() {
const clearCart = useCart((s) => s.clear);
const cartItems = useCart((s) => s.items);
useEffect(() => {
const handleUnload = () => {
// Don't logout if we're in the middle of checkout (navigating to Stripe)
// The checkout component sets this flag before making the API call
const isCheckingOut = typeof window !== 'undefined' && sessionStorage.getItem('isCheckingOut');
console.log('LogoutOnUnload handleUnload called, isCheckingOut flag:', isCheckingOut);
console.log('🚪 LogoutOnUnload handleUnload - cart items:', cartItems.length, 'isCheckingOut:', isCheckingOut);
if (isCheckingOut) {
console.log('Skipping logout because isCheckingOut is set');
console.log('Skipping logout - checkout in progress');
return;
}
// Clear cart on logout
console.log('Clearing cart and logging out');
console.log('🗑️ Clearing cart and logging out');
clearCart();
// Use sendBeacon to reliably send logout even when page is closing
// This doesn't wait for a response, which is fine for logout