6.3.5: Фикс пустого таба и ошибки после авторизации
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m6s

This commit is contained in:
poignatov
2026-03-08 12:51:44 +03:00
parent e1b6fcb918
commit 3a6f223aac
3 changed files with 30 additions and 5 deletions

View File

@@ -1 +1 @@
6.3.4
6.3.5

View File

@@ -1,6 +1,6 @@
{
"name": "play-life-web",
"version": "6.3.4",
"version": "6.3.5",
"type": "module",
"scripts": {
"dev": "vite",

View File

@@ -160,11 +160,33 @@ function AppContent() {
// Обновляем ref только после того, как authLoading стал false
if (!authLoading) {
const wasNotAuthenticated = prevIsAuthenticatedRef.current === false
// Обновляем ref только если инициализация завершена,
// чтобы не потерять переход false→true при ожидании isInitialized
if (isInitialized) {
prevIsAuthenticatedRef.current = isAuthenticated
}
// Проверяем, что это новая авторизация (переход с false на true)
// и что инициализация уже завершена (чтобы не конфликтовать с восстановлением из URL/localStorage)
if (wasNotAuthenticated && isAuthenticated && isInitialized) {
// Сбрасываем ошибки, кеш данных и состояние инициализации табов при повторной авторизации
setCurrentWeekError(null)
setFullStatisticsError(null)
setPrioritiesError(null)
setTasksError(null)
setTodayEntriesError(null)
setCurrentWeekData(null)
setFullStatisticsData(null)
setTasksData(null)
setTodayEntriesData(null)
// Сбрасываем инициализацию табов, чтобы данные загрузились заново
Object.keys(tabsInitializedRef.current).forEach(key => {
tabsInitializedRef.current[key] = false
})
cacheRef.current = { current: null, full: null, tasks: null, todayEntries: null }
lastLoadedTabRef.current = null
// Переключаемся на экран прогресса только если нет таба в URL
const urlParams = new URLSearchParams(window.location.search)
const tabFromUrl = urlParams.get('tab')
@@ -276,6 +298,9 @@ function AppContent() {
if (savedTab && validTabs.includes(savedTab) && mainTabs.includes(savedTab)) {
setActiveTab(savedTab)
setLoadedTabs(prev => ({ ...prev, [savedTab]: true }))
} else {
// Если нет сохранённого таба — активируем current по умолчанию
setLoadedTabs(prev => ({ ...prev, current: true }))
}
// Очищаем URL от параметров таба, если это основной таб
if (tabFromUrl && mainTabs.includes(tabFromUrl)) {