From 3772b5661777ad8b034f8343e66e652329e7660c Mon Sep 17 00:00:00 2001 From: bboysoul Date: Mon, 7 Sep 2026 17:19:17 +0800 Subject: [PATCH] feat: refine countdown timeline UI --- frontend/src/CountdownPanel.test.ts | 24 +++++- frontend/src/CountdownPanel.vue | 117 ++++++++++++++++++++-------- frontend/src/style.css | 2 +- 3 files changed, 110 insertions(+), 33 deletions(-) diff --git a/frontend/src/CountdownPanel.test.ts b/frontend/src/CountdownPanel.test.ts index de0d620..dfa12de 100644 --- a/frontend/src/CountdownPanel.test.ts +++ b/frontend/src/CountdownPanel.test.ts @@ -10,6 +10,28 @@ describe('countdown modal accessibility', () => { expect(source).toContain('@keydown.esc="closeDialog"') expect(source).toContain('ref="titleInput"') expect(source).toContain('titleInput.value?.focus()') - expect(source).toContain(':inert="open"') + expect(source).toContain(':inert="open || Boolean(detailItem)"') + }) + + it('uses a compact timeline and moves row actions into a detail sheet', () => { + expect(source).toContain('class="countdown-timeline"') + expect(source).toContain('class="countdown-row"') + expect(source).toContain('@click="openDetail(item)"') + expect(source).toContain('class="countdown-detail-sheet"') + expect(source).toContain('ref="detailCloseButton"') + expect(source).toContain('detailCloseButton.value?.focus()') + expect(source).not.toContain('class="countdown-actions"') + }) + + it('keeps advanced creation fields collapsed behind more settings', () => { + expect(source).toContain('class="countdown-advanced"') + expect(source).toContain('更多设置') + expect(source).toContain('@change="applyKindDefaults"') + expect(source).toContain(':disabled="form.ignore_year"') + }) + + it('keeps the empty state directly actionable', () => { + expect(source).toContain('添加第一个重要日子') + expect(source).toContain('@click="openFromEmpty"') }) }) diff --git a/frontend/src/CountdownPanel.vue b/frontend/src/CountdownPanel.vue index 3545076..6250284 100644 --- a/frontend/src/CountdownPanel.vue +++ b/frontend/src/CountdownPanel.vue @@ -1,6 +1,6 @@