From 1bed4bbd9a0606f9d3edfbf0ccfd1499793f8712 Mon Sep 17 00:00:00 2001 From: Adam Mathes Date: Mon, 16 Feb 2026 08:59:56 -0800 Subject: Fix v3 theme contrast and sync with v2 colors, add v3 logo, and fix v2 test stability - Sync v3 dark/light theme colors with v2 defaults - Fix v3 settings input/select contrast in dark mode - Add logo emoji to v3 sidebar - Fix duplicate key warnings and side-effect issues in FeedItems.tsx (v2) - Rebuild production assets --- frontend-vanilla/src/main.test.ts | 9 +++++++ frontend-vanilla/src/main.ts | 19 +++++++++----- frontend-vanilla/src/style.css | 52 ++++++++++++++++++++++++++++++++++----- 3 files changed, 68 insertions(+), 12 deletions(-) (limited to 'frontend-vanilla/src') diff --git a/frontend-vanilla/src/main.test.ts b/frontend-vanilla/src/main.test.ts index c9d0e0c..3798f1b 100644 --- a/frontend-vanilla/src/main.test.ts +++ b/frontend-vanilla/src/main.test.ts @@ -65,10 +65,19 @@ describe('main application logic', () => { it('renderLayout should create sidebar and main content', () => { renderLayout(); expect(document.getElementById('sidebar')).not.toBeNull(); + expect(document.querySelector('.logo')).not.toBeNull(); expect(document.getElementById('content-area')).not.toBeNull(); expect(document.getElementById('sidebar-toggle-btn')).not.toBeNull(); }); + it('should navigate to home when clicking logo', () => { + renderLayout(); + const logo = document.querySelector('.logo') as HTMLElement; + const navigateSpy = vi.spyOn(router, 'navigate'); + logo.click(); + expect(navigateSpy).toHaveBeenCalledWith('/', expect.any(Object)); + }); + it('renderFeeds should populate feed list', () => { renderLayout(); store.setFeeds([{ _id: 1, title: 'Test Feed', url: 'test', web_url: 'test', category: 'tag' }]); diff --git a/frontend-vanilla/src/main.ts b/frontend-vanilla/src/main.ts index c0adb92..f4493b8 100644 --- a/frontend-vanilla/src/main.ts +++ b/frontend-vanilla/src/main.ts @@ -30,6 +30,7 @@ export function renderLayout() {