From 0ed8fc0a29aea81cf9ddcb8cba1d74163f1469b4 Mon Sep 17 00:00:00 2001 From: Hermes Team Date: Mon, 31 Aug 2026 01:45:26 +0700 Subject: [PATCH] =?UTF-8?q?fix(web):=20=D1=82=D0=B5=D0=BC=D1=83=20Medium?= =?UTF-8?q?=20=D0=BD=D0=B5=D0=BB=D1=8C=D0=B7=D1=8F=20=D0=B1=D1=8B=D0=BB?= =?UTF-8?q?=D0=BE=20=D0=B2=D1=8B=D0=B1=D1=80=D0=B0=D1=82=D1=8C,=20=D1=85?= =?UTF-8?q?=D0=BE=D1=82=D1=8F=20=D0=BE=D0=BD=D0=B0=20=D0=BF=D0=BE=D0=BB?= =?UTF-8?q?=D0=BD=D0=BE=D1=81=D1=82=D1=8C=D1=8E=20=D1=80=D0=B5=D0=B0=D0=BB?= =?UTF-8?q?=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Брендбук требует три темы, причём Medium — отдельная, а не осветлённая Dark: тёмно-зелёный холст #1A2A1F со светлыми кремовыми карточками #F7F1E3. В style.css она описана целиком и отрисовывается верно — проверено подстановкой data-theme вручную. Но в список выбора не попала, а applyTheme знал только light и dark, поэтому любое другое значение сбрасывало тему в системную. Выбрать Medium было невозможно. После правки все три переключаются: dark фон #101510 карточки #1A2A1F medium фон #1A2A1F карточки #F7F1E3 light фон #F7F1E3 карточки белые Цвета совпадают с палитрой брендбука. 486 passed, ruff чисто. Co-Authored-By: Claude Opus 5 --- .../router/web/static/app.js | 18 ++++++++++++------ .../router/web/static/index.html | 8 ++++++++ 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/antigravity_provider/router/web/static/app.js b/src/antigravity_provider/router/web/static/app.js index 62e0753..8f4742c 100644 --- a/src/antigravity_provider/router/web/static/app.js +++ b/src/antigravity_provider/router/web/static/app.js @@ -1814,13 +1814,19 @@ function formatIsoDate(isoStr) { // ── THEME SWITCHER ── function applyTheme(theme) { - if (theme === 'light') { - document.body.setAttribute('data-theme', 'light'); - document.body.classList.add('theme-light'); - } else if (theme === 'dark') { - document.body.setAttribute('data-theme', 'dark'); - document.body.classList.remove('theme-light'); + // Тем три, а не две. + // + // Medium была полностью описана в style.css, но здесь не обрабатывалась и в + // список выбора не попадала — выбрать её было нельзя. По брендбуку это + // отдельная тема, а не осветлённая Dark: тёмно-зелёный холст #1A2A1F со + // светлыми кремовыми карточками #F7F1E3. Проверено подстановкой атрибута + // вручную — отрисовывается верно и отличается от Dark и фоном, и карточками. + const known = ['light', 'medium', 'dark']; + if (known.includes(theme)) { + document.body.setAttribute('data-theme', theme); + document.body.classList.toggle('theme-light', theme === 'light'); } else { + // Системная: отдаём выбор prefers-color-scheme. document.body.removeAttribute('data-theme'); document.body.classList.remove('theme-light'); } diff --git a/src/antigravity_provider/router/web/static/index.html b/src/antigravity_provider/router/web/static/index.html index 1c043e2..efdedfc 100644 --- a/src/antigravity_provider/router/web/static/index.html +++ b/src/antigravity_provider/router/web/static/index.html @@ -445,6 +445,14 @@