feat: collapse Today sections
ci / gitleaks (push) Successful in 8s
ci / docker (push) Successful in 6m1s

This commit is contained in:
2026-09-15 09:47:02 +08:00
parent 4e8045159f
commit f5a1521a4f
7 changed files with 172 additions and 17 deletions
+6 -5
View File
@@ -209,7 +209,8 @@ describe('solid cream material system', () => {
describe('approved UI detail direction', () => {
it('uses one More detail entry for ordinary parent rows while preserving Trash and overdue actions', () => {
const ordinaryRows = app.slice(app.indexOf('<section class="task-list"'), app.indexOf('</section>', app.indexOf('<section class="task-list"')))
const ordinaryStart = app.indexOf('<section :id="activeView===\'today\' ? \'today-tasks\' : undefined"')
const ordinaryRows = app.slice(ordinaryStart, app.indexOf('</section>', ordinaryStart))
expect(ordinaryRows.match(/aria-label="打开任务详情"/g)).toHaveLength(1)
expect(ordinaryRows).toContain('@click.stop="selectTask(node.task)"><Ellipsis/>')
expect(ordinaryRows).not.toContain('selectTask(subtask)')
@@ -217,7 +218,7 @@ describe('approved UI detail direction', () => {
expect(ordinaryRows).toContain('v-if="activeView===\'trash\'" class="task-actions"')
expect(ordinaryRows).toContain('restoreTask(node.task)')
expect(ordinaryRows).toContain('purgeTask(node.task)')
const overdue = app.slice(app.indexOf('<section v-if="overdueTaskTree.length"'), app.indexOf('<h3 id="today-tasks"'))
const overdue = app.slice(app.indexOf('<section v-if="overdueTaskTree.length"'), app.indexOf('id="today-tasks-heading"'))
expect(overdue).not.toContain('aria-label="打开任务详情"')
})
@@ -774,7 +775,7 @@ describe('task and habit row decoration', () => {
expect(app).toContain('const overdueTasks = ref<Task[]>([])')
expect(app).toContain("params.set('due_to', isoAtLocalDayOffset(0))")
expect(app).toContain("params.set('completed', 'false')")
expect(app).toContain('class="overdue-section"')
expect(app).toContain('class="overdue-section today-collapsible-section"')
expect(app).toContain('已过期')
expect(app).toContain('v-for="node in overdueTaskTree"')
expect(css).toContain('.overdue-section{')
@@ -807,8 +808,8 @@ describe('task and habit row decoration', () => {
expect(app).not.toContain('<p v-if="activeView===\'today\'">')
expect(app).not.toContain('class="paper today-summary"')
expect(app).not.toContain('today-summary-grid')
expect(app).toContain("scrollTodaySection('today-tasks')")
expect(app).toContain("scrollTodaySection('today-habits')")
expect(app).toContain("navigateTodaySection('tasks')")
expect(app).toContain("navigateTodaySection('habits')")
expect(app).not.toContain('<div class="today-stat"')
expect(app).toContain('@summary="updateTodayHabitSummary"')
expect(mvpPanel).toContain("summary: [value: { total: number; completed: number }]")