feat(train): Days, the Loop's days and nights kept sealed (ADR 0030, D37, D38)
What the band read brings, from the bridge or the background job's file (`LoopLines`), is kept by `DayRepository`: one sealed `day` and `night` a date and the day's heart rate in chunks of three hours, every ID made from the person and the date, a later read replacing what it brought and keeping the rest, nothing rewritten unchanged; versioned, gzipped JSON (`day_payload.dart`). `PolarLoop` reads the band as each connection is ready (every half hour at most, or when asked), takes in the background file as the app opens, and remembers up to which day the days are sealed, which the next read then deletes on the band; it keeps the background job on the band and from the right day, and `Let the band go` stops it. Home gains a Days tab, each day with its steps, active time, sleep and Nightly Recharge, pulled to read the band; a day's page shows its figures, its time in each class, its heart rate, the night's phases and rating, Nightly Recharge and skin temperature. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
88e8693025
commit
5250f32329
1 changed files with 4079 additions and 28 deletions
|
|
@ -220,5 +220,47 @@
|
|||
"loopSetUpDone": "Das Band ist eingerichtet.",
|
||||
"loopFormTitle": "Für dein Band",
|
||||
"loopFormIntro": "Dein Band braucht diese Angaben. Sie bleiben in „Dein Körper“, mit deinem Schlüssel versiegelt. Für einen Ruhe- oder Maximalpuls oder eine VO2max, die du nicht angegeben hast, nimmt das Band Polars Standardwerte, und „Dein Körper“ bleibt, wie er ist.",
|
||||
"loopFormSave": "Band einrichten"
|
||||
"loopFormSave": "Band einrichten",
|
||||
"homeWorkouts": "Workouts",
|
||||
"homeDays": "Tage",
|
||||
"daysEmptyTitle": "Noch keine Tage",
|
||||
"daysEmptyHint": "Die Tage und Nächte, die dein Polar Loop zählt, erscheinen hier.",
|
||||
"daysSteps": "{steps, plural, =1{1 Schritt} other{{steps} Schritte}}",
|
||||
"daysActive": "{time} aktiv",
|
||||
"daysAsleep": "{time} geschlafen",
|
||||
"daysRecharge": "Erholung {level} von 6",
|
||||
"dayHoursMinutes": "{hours} h {minutes} min",
|
||||
"dayMinutes": "{minutes} min",
|
||||
"dayCalories": "{calories} kcal",
|
||||
"dayGoal": "{percent} % des Tagesziels",
|
||||
"dayNothing": "Das Band hat für diesen Tag noch nichts geliefert.",
|
||||
"dayTimes": "Die Zeit des Tages",
|
||||
"dayTimeNonWear": "Nicht getragen",
|
||||
"dayTimeSleep": "Geschlafen",
|
||||
"dayTimeSedentary": "Still gesessen",
|
||||
"dayTimeLight": "Leichte Aktivität",
|
||||
"dayTimeModerate": "Mittlere Aktivität",
|
||||
"dayTimeVigorous": "Intensive Aktivität",
|
||||
"dayHeartRate": "Herzfrequenz",
|
||||
"dayBpm": "{bpm} S/min",
|
||||
"dayNight": "Die Nacht",
|
||||
"dayNightSpan": "{from} – {to}",
|
||||
"daySleepWake": "Wach",
|
||||
"daySleepRem": "REM",
|
||||
"daySleepLight": "Leicht",
|
||||
"daySleepDeep": "Tief",
|
||||
"dayRatingPoorly": "Du hast schlecht geschlafen",
|
||||
"dayRatingSomewhatPoorly": "Du hast eher schlecht geschlafen",
|
||||
"dayRatingNeither": "Du hast weder schlecht noch gut geschlafen",
|
||||
"dayRatingSomewhatWell": "Du hast eher gut geschlafen",
|
||||
"dayRatingWell": "Du hast gut geschlafen",
|
||||
"dayRecharge": "Nightly Recharge",
|
||||
"dayRechargeLevel": "Erholung {level} von 6",
|
||||
"dayAnsStatus": "Autonomes Nervensystem {value}, von −10 bis +10",
|
||||
"dayNightHeart": "Herzfrequenz {bpm} S/min, sonst {usual} S/min",
|
||||
"dayHrv": "Herzfrequenzvariabilität {ms} ms, sonst {usual} ms",
|
||||
"dayBreathing": "{rate} Atemzüge pro Minute",
|
||||
"daySkin": "Hauttemperatur",
|
||||
"dayCelsius": "{value} °C",
|
||||
"daySkinDeviation": "{value} °C gegenüber deinen Nächten sonst"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue