From 784e0fb5ba1d6828cef111f76b8e4da484761746 Mon Sep 17 00:00:00 2001 From: Will Estes Date: Wed, 19 Aug 2026 09:33:58 -0400 Subject: [PATCH] Order hour nav by the day, not by build/declaration order HOUR_IDS drove the nav's render order but was declared arbitrarily; reorder to Matins, Lauds, Prime, Terce, Sext, None, Vespers, Compline so the nav reads left-to-right the way the office actually unfolds. Co-Authored-By: Claude Sonnet 5 --- src/hours/types.ts | 6 +++--- tests/ui/shell.test.ts | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/hours/types.ts b/src/hours/types.ts index 20e2930..1db05f2 100644 --- a/src/hours/types.ts +++ b/src/hours/types.ts @@ -9,14 +9,14 @@ export type HourId = | 'matins'; export const HOUR_IDS: readonly HourId[] = [ + 'matins', + 'lauds', 'prime', - 'compline', 'terce', 'sext', 'none', - 'lauds', 'vespers', - 'matins', + 'compline', ]; /** Reference into one of the proper-text stores (data/propers/**). Not built yet — placeholder shape. */ diff --git a/tests/ui/shell.test.ts b/tests/ui/shell.test.ts index edb0a17..5a6f713 100644 --- a/tests/ui/shell.test.ts +++ b/tests/ui/shell.test.ts @@ -26,14 +26,14 @@ describe('shell', () => { const hourNames = Array.from(root.querySelectorAll('.hour-name')).map((el) => el.textContent); expect(hourNames).toEqual([ + 'Matins', + 'Lauds', 'Prime', - 'Compline', 'Terce', 'Sext', 'None', - 'Lauds', 'Vespers', - 'Matins', + 'Compline', ]); expect(root.querySelector('.hour-item.is-selected .hour-name')?.textContent).toBe('Prime');