Gas Station Feature Finally Working
This commit is contained in:
@@ -284,6 +284,49 @@ function App() {
|
||||
return () => window.removeEventListener('resize', checkMobileMode);
|
||||
}, []);
|
||||
|
||||
// Global error suppression for Google Maps DOM conflicts
|
||||
useEffect(() => {
|
||||
const handleGlobalError = (event: ErrorEvent) => {
|
||||
const errorMsg = event.error?.message || event.message || '';
|
||||
const isDomError =
|
||||
errorMsg.includes('removeChild') ||
|
||||
errorMsg.includes('insertBefore') ||
|
||||
errorMsg.includes('replaceChild') ||
|
||||
event.error?.name === 'NotFoundError' ||
|
||||
(event.error instanceof DOMException);
|
||||
|
||||
if (isDomError) {
|
||||
// Suppress Google Maps DOM manipulation errors
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
console.debug('[App] Suppressed harmless Google Maps DOM error');
|
||||
}
|
||||
};
|
||||
|
||||
const handleGlobalRejection = (event: PromiseRejectionEvent) => {
|
||||
const errorMsg = event.reason?.message || String(event.reason) || '';
|
||||
const isDomError =
|
||||
errorMsg.includes('removeChild') ||
|
||||
errorMsg.includes('insertBefore') ||
|
||||
errorMsg.includes('replaceChild') ||
|
||||
event.reason?.name === 'NotFoundError' ||
|
||||
(event.reason instanceof DOMException);
|
||||
|
||||
if (isDomError) {
|
||||
event.preventDefault();
|
||||
console.debug('[App] Suppressed harmless Google Maps promise rejection');
|
||||
}
|
||||
};
|
||||
|
||||
window.addEventListener('error', handleGlobalError, true); // Use capture phase
|
||||
window.addEventListener('unhandledrejection', handleGlobalRejection);
|
||||
|
||||
return () => {
|
||||
window.removeEventListener('error', handleGlobalError, true);
|
||||
window.removeEventListener('unhandledrejection', handleGlobalRejection);
|
||||
};
|
||||
}, []);
|
||||
|
||||
// Update user profile when authenticated
|
||||
useEffect(() => {
|
||||
if (isAuthenticated && user) {
|
||||
|
||||
Reference in New Issue
Block a user