Milestone v1.0: FamilySync MVP #1

Merged
luckberg merged 376 commits from gsd/v1.0-milestone into main 2026-06-10 17:39:19 -04:00
Showing only changes of commit a570135a8d - Show all commits
+6 -2
View File
@@ -59,8 +59,12 @@ import { InstallPrompt } from './InstallPrompt.js'
// ── Helpers ────────────────────────────────────────────────────────────────
/**
* D-05: phone (≤767px) defaults to 'month-agenda'; tablet/desktop to 'month-grid'.
* Called once at render time; Schedule-X persists selected view internally after that.
* IN-02: this does NOT compute the D-05 phone/desktop default — that lives in the
* store's readPersistedView() (calendarStore.ts), which seeds selectedView with the
* breakpoint-aware default. By the time this runs, `persistedView` already carries that
* resolved default. The ONLY job here is the SSR guard: return a stable 'month-grid'
* when `window` is undefined (no breakpoint to read), otherwise pass the already-resolved
* view through unchanged. Do not expect breakpoint logic here.
*/
function resolveDefaultView(persistedView: string): string {
if (typeof window === 'undefined') return 'month-grid'