Merge branch 'AEB-71/navigation_and_dashboard' into 'main'

AEB-71: Added 3D navigation in monitoring zones

See merge request wedeving/aerbim-www!13
This commit is contained in:
Timofey Syrokvashko
2025-11-11 10:36:07 +03:00
27 changed files with 503 additions and 184 deletions

View File

@@ -60,7 +60,24 @@ async function refreshAccessToken(token: GoogleToken): Promise<GoogleToken> {
} catch {
errorData = { error: errorText }
}
throw new Error(errorData.error || 'Token refresh failed')
const errorMessage = (errorData.error as string) || (errorData.detail as string) || ''
if (typeof errorMessage === 'string' &&
(errorMessage.includes('Token is expired') ||
errorMessage.includes('expired') ||
errorData.code === 'token_not_valid')) {
console.warn('Refresh token expired, user needs to re-authenticate')
return {
...token,
error: 'RefreshTokenExpired',
}
}
console.error('Token refresh failed:', errorData.error || 'Token refresh failed')
return {
...token,
error: 'RefreshAccessTokenError',
}
}
const refreshedTokens = await response.json()
@@ -176,6 +193,11 @@ export const authOptions: NextAuthOptions = {
if (token) {
session.accessToken = token.accessToken as string
session.refreshToken = token.refreshToken as string
if (token.error === 'RefreshTokenExpired') {
session.accessToken = undefined
session.refreshToken = undefined
}
}
return session
},