feat: Gezeiten im Logbuch per Open-Meteo Marine

HW/NW-Felder im Reisetag und Live-Journal mit Server-Proxy auf Basis von
Open-Meteo Marine am GPS-Standort; neueste Position und frischer DB-Stand
vor dem Abruf, Bestätigung nach Übernehmen, Accordion-Layout bereinigt.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-11 14:22:25 +02:00
parent d667062ec2
commit 5d4e498528
26 changed files with 1353 additions and 7 deletions
+20
View File
@@ -72,3 +72,23 @@ describe('buildLogEntryPayload greywater', () => {
expect(payload.greywater).toBeUndefined()
})
})
describe('buildLogEntryPayload tides', () => {
const base = {
date: '2026-06-11',
dayOfTravel: '1',
departure: 'Norddeich',
destination: 'Juist',
freshwater: { morning: 0, refilled: 0, evening: 0, consumption: 0 },
fuel: { morning: 0, refilled: 0, evening: 0, consumption: 0 },
events: [] as LogEventPayload[]
}
it('persists high and low water times', () => {
const payload = buildLogEntryPayload({
...base,
tides: { highWater: '18:34', lowWater: '12:05' }
})
expect(payload.tides).toEqual({ highWater: '18:34', lowWater: '12:05' })
})
})