From 6cf4be65b29ce74e7dc73cb618ad17cbcd56a53f Mon Sep 17 00:00:00 2001 From: poignatov Date: Fri, 9 Jan 2026 14:40:45 +0300 Subject: [PATCH] =?UTF-8?q?fix:=20=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=BB=D0=BE=D0=B3=D0=B8=D0=BA=D0=B0?= =?UTF-8?q?=20=D1=80=D0=B0=D1=81=D0=BF=D1=80=D0=B5=D0=B4=D0=B5=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D1=81=D0=BB=D0=BE=D0=B2=20=D0=B2=20=D1=82?= =?UTF-8?q?=D0=B5=D1=81=D1=82=D0=B5=20=D0=B8=20race=20condition?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Переписан алгоритм redistributeWordsEvenly с жадным подходом - Добавлена пост-обработка для исправления последовательных дубликатов - Исключаемое слово (текущее) теперь корректно не появляется первым - Исправлен race condition с cardsShown через использование ref - Добавлена проверка на null/undefined слова в пуле v3.5.5 --- VERSION | 2 +- play-life-web/package.json | 2 +- play-life-web/src/App.jsx | 8 + .../src/components/FullStatistics.jsx | 2 +- play-life-web/src/components/Profile.jsx | 2 +- .../src/components/ProjectPriorityManager.jsx | 2 +- play-life-web/src/components/TaskList.css | 3 +- .../src/components/TestConfigSelection.css | 9 - play-life-web/src/components/TestWords.jsx | 218 ++++++++++++++---- 9 files changed, 182 insertions(+), 66 deletions(-) diff --git a/VERSION b/VERSION index 65afb3b..7d280e2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.5.4 +3.5.5 diff --git a/play-life-web/package.json b/play-life-web/package.json index a22da68..e9a33ee 100644 --- a/play-life-web/package.json +++ b/play-life-web/package.json @@ -1,6 +1,6 @@ { "name": "play-life-web", - "version": "3.5.4", + "version": "3.5.5", "type": "module", "scripts": { "dev": "vite", diff --git a/play-life-web/src/App.jsx b/play-life-web/src/App.jsx index 4a72e03..a7f10f6 100644 --- a/play-life-web/src/App.jsx +++ b/play-life-web/src/App.jsx @@ -706,12 +706,20 @@ function AppContent() { // Определяем отступы для контейнера const getContainerPadding = () => { if (!isFullscreenTab) { + // Для tasks и profile на широких экранах увеличиваем отступ + if (activeTab === 'tasks' || activeTab === 'profile') { + return 'p-4 md:p-8' + } return 'p-4 md:p-6' } // Для экрана статистики добавляем горизонтальные отступы if (activeTab === 'full') { return 'px-4 md:px-6 py-0' } + // Для экрана приоритетов используем такие же отступы как для profile + if (activeTab === 'priorities') { + return 'px-4 md:px-8 py-0' + } // Для остальных fullscreen экранов без отступов return 'p-0' } diff --git a/play-life-web/src/components/FullStatistics.jsx b/play-life-web/src/components/FullStatistics.jsx index b10ca8a..1baf12e 100644 --- a/play-life-web/src/components/FullStatistics.jsx +++ b/play-life-web/src/components/FullStatistics.jsx @@ -225,7 +225,7 @@ function FullStatistics({ selectedProject, onClearSelection, data, loading, erro ✕ )} -
+
diff --git a/play-life-web/src/components/Profile.jsx b/play-life-web/src/components/Profile.jsx index a41ae5c..eead22c 100644 --- a/play-life-web/src/components/Profile.jsx +++ b/play-life-web/src/components/Profile.jsx @@ -16,7 +16,7 @@ function Profile({ onNavigate }) { } return ( -
+
{/* Profile Header */}
diff --git a/play-life-web/src/components/ProjectPriorityManager.jsx b/play-life-web/src/components/ProjectPriorityManager.jsx index 914d00a..72fae57 100644 --- a/play-life-web/src/components/ProjectPriorityManager.jsx +++ b/play-life-web/src/components/ProjectPriorityManager.jsx @@ -865,7 +865,7 @@ function ProjectPriorityManager({ allProjectsData, currentWeekData, shouldLoad, const activeProject = allItems.find(item => item.name === activeId) return ( -
+
{onNavigate && (