From b7b284c0769d88ea23d21c2fbaf14c56f3547235 Mon Sep 17 00:00:00 2001 From: miteruzo Date: Sat, 11 Jul 2026 05:02:23 +0900 Subject: [PATCH] =?UTF-8?q?=E3=82=B9=E3=83=9E=E3=83=9B=E3=81=A7=E3=81=AE?= =?UTF-8?q?=E3=83=A1=E3=83=8B=E3=83=A5=E3=83=BC=E8=A1=A8=E7=A4=BA=E3=83=87?= =?UTF-8?q?=E3=82=B6=E3=82=A4=E3=83=B3=E3=83=BB=E3=83=90=E3=82=B0=20(#405)?= =?UTF-8?q?=20(#408)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reviewed-on: http://git.miteruzo.com/miteruzo/btrc-hub/pulls/408 Co-authored-by: miteruzo Co-committed-by: miteruzo --- frontend/src/index.css | 5 +++++ frontend/src/index.test.ts | 22 ++++++++++++++++++++++ frontend/src/lib/settings.test.ts | 6 +++++- 3 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 frontend/src/index.test.ts diff --git a/frontend/src/index.css b/frontend/src/index.css index 3423883..032eb85 100644 --- a/frontend/src/index.css +++ b/frontend/src/index.css @@ -239,6 +239,11 @@ body background: var(--top-nav-submenu-bg); } +.top-nav-mobile-menu .top-nav-submenu +{ + background: var(--top-nav-mobile-active-bg); +} + .top-nav-mobile-menu { background: var(--top-nav-mobile-menu-bg); diff --git a/frontend/src/index.test.ts b/frontend/src/index.test.ts new file mode 100644 index 0000000..9167579 --- /dev/null +++ b/frontend/src/index.test.ts @@ -0,0 +1,22 @@ +import { readFileSync } from 'node:fs' +import { resolve } from 'node:path' + +import { describe, expect, it } from 'vitest' + + +const indexCss = readFileSync ( + resolve (process.cwd (), 'src/index.css'), + 'utf8') +const compactIndexCss = indexCss.replace (/\s+/g, ' ') +const mobileActiveRule = '.top-nav-mobile-active {' + + ' background: var(--top-nav-mobile-active-bg); }' +const mobileSubmenuRule = '.top-nav-mobile-menu .top-nav-submenu {' + + ' background: var(--top-nav-mobile-active-bg); }' + + +describe ('TopNav mobile menu colours', () => { + it ('uses one background variable for active rows and expanded submenus', () => { + expect (compactIndexCss).toContain (mobileActiveRule) + expect (compactIndexCss).toContain (mobileSubmenuRule) + }) +}) diff --git a/frontend/src/lib/settings.test.ts b/frontend/src/lib/settings.test.ts index 9ec1d66..b7edf49 100644 --- a/frontend/src/lib/settings.test.ts +++ b/frontend/src/lib/settings.test.ts @@ -89,8 +89,12 @@ describe ('settings', () => { }) it ('derives TopNav colours without mixing mobile active backgrounds', () => { - expect (buildThemeTokens ('light', { }).topNavMobileActiveBackground).toBe ( + const tokens = buildThemeTokens ('light', { }) + + expect (tokens.topNavMobileActiveBackground).toBe ( LIGHT_THEME_TOKENS.topNavRootBackgroundDesktop) + expect (tokens.topNavMobileActiveBackground).not.toBe ( + tokens.topNavRootBackgroundMobile) expect (buildThemeTokens ('dark', { }).topNavMobileActiveBackground).toBe ( DARK_THEME_TOKENS.topNavActiveBackground) })