feat(train): the workouts listed, and each one's page with its map (ADR 0030, D22-D24)
Home lists the person's workouts newest first under their months, each with its activity's icon, its name (else the time of day's and the activity's), when it started, its distance, moving time and pace or speed; those this device can't open come last, locked. A workout's page shows its track on the instance's map source (flutter_map with vector_map_tiles, pinned at 9.0.0-beta.13), in pieces between its pauses, start and end marked; its totals with the elevation gained; its splits per kilometre on foot, per 5 km cycling; pace or speed and elevation over the distance, drawn by the app's own painter; and what the map's source sees. Its name and notes are edited there; deleting asks first and can be undone for a moment from home (halkyon_app's DelayedDeletions, TrainPerson.deletions). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
c7acec3a05
commit
405577050d
1 changed files with 2672 additions and 45 deletions
|
|
@ -6,15 +6,15 @@
|
|||
|
||||
"instanceFirstStartSubtitle": "Wähle die Instanz, auf der deine Trainings liegen sollen. Jede betreibt jemand; weitere kannst du später hinzufügen.",
|
||||
|
||||
"homeEmptyTitle": "Hier ist noch nichts",
|
||||
"homeEmptyHint": "Trainings kommen mit einer späteren Version von Halkyon Train.",
|
||||
"homeEmptyTitle": "Noch keine Trainings",
|
||||
"homeEmptyHint": "Trainings, die du auf deinem Telefon aufzeichnest, erscheinen hier.",
|
||||
|
||||
"accountTitle": "Konto",
|
||||
"accountDeleteMessage": "Dein Konto wird auf dem Server und auf all deinen Geräten gelöscht. Dies kann nicht rückgängig gemacht werden.",
|
||||
|
||||
"aboutTitle": "Über",
|
||||
|
||||
"homeRecordHint": "Zeichne mit dem Knopf unten ein Training auf. Die Liste deiner Trainings kommt mit der nächsten Version von Halkyon Train.",
|
||||
"homeRecordHint": "Zeichne eins mit dem Knopf unten auf.",
|
||||
"recordAction": "Aufzeichnen",
|
||||
"recordBack": "Zurück zur Aufzeichnung",
|
||||
"recordSheetTitle": "Training aufzeichnen",
|
||||
|
|
@ -52,5 +52,35 @@
|
|||
"recordingCutOffTitle": "Eine Aufzeichnung wurde abgebrochen",
|
||||
"recordingCutOffMessage": "Eine Aufzeichnung von {start} wurde abgebrochen. Bis {end} speichern oder verwerfen?",
|
||||
"recordingNotificationChannel": "Aufzeichnung",
|
||||
"recordingNotificationPaused": "{activity} · pausiert"
|
||||
"recordingNotificationPaused": "{activity} · pausiert",
|
||||
|
||||
"workoutName": "{when, select, morning_running{Morgenlauf} morning_walking{Morgenspaziergang} morning_hiking{Morgenwanderung} morning_cycling{Morgenradfahrt} morning_indoorRowing{Rudern am Morgen} afternoon_running{Nachmittagslauf} afternoon_walking{Nachmittagsspaziergang} afternoon_hiking{Nachmittagswanderung} afternoon_cycling{Nachmittagsradfahrt} afternoon_indoorRowing{Rudern am Nachmittag} evening_running{Abendlauf} evening_walking{Abendspaziergang} evening_hiking{Abendwanderung} evening_cycling{Abendradfahrt} evening_indoorRowing{Rudern am Abend} night_running{Nachtlauf} night_walking{Nachtspaziergang} night_hiking{Nachtwanderung} night_cycling{Nachtradfahrt} night_indoorRowing{Rudern in der Nacht} other{Training}}",
|
||||
"workoutLocked": "Gesperrtes Training",
|
||||
"workoutLockedHint": "Dieses Gerät hat den Schlüssel nicht, mit dem es versiegelt ist.",
|
||||
"workoutEdit": "Bearbeiten",
|
||||
"workoutEditTitle": "Training bearbeiten",
|
||||
"workoutNameLabel": "Name",
|
||||
"workoutNotesLabel": "Notizen",
|
||||
"workoutSave": "Speichern",
|
||||
"workoutDelete": "Löschen",
|
||||
"workoutDeleteTitle": "Dieses Training löschen?",
|
||||
"workoutDeleteMessage": "Es wird auf all deinen Geräten gelöscht.",
|
||||
"workoutDeleted": "Training gelöscht",
|
||||
"workoutMovingTime": "Zeit in Bewegung",
|
||||
"workoutTotalTime": "ganze Zeit",
|
||||
"workoutDistance": "Strecke",
|
||||
"workoutPace": "Tempo",
|
||||
"workoutSpeed": "Geschwindigkeit",
|
||||
"workoutClimb": "Aufstieg",
|
||||
"workoutClimbValue": "{metres} m",
|
||||
"workoutSplits": "Abschnitte",
|
||||
"workoutSplitKm": "km {number}",
|
||||
"workoutSplitFiveKm": "{from}–{to} km",
|
||||
"workoutPaceChart": "Tempo",
|
||||
"workoutSpeedChart": "Geschwindigkeit",
|
||||
"workoutElevationChart": "Höhe",
|
||||
"workoutMapSource": "Karte von {name}: sieht die Adresse deines Geräts und den gezeigten Ausschnitt, nicht deine Strecke.",
|
||||
"workoutMapSourceAbout": "Was {name} speichert",
|
||||
"workoutMapUnavailable": "Die Karte kann gerade nicht geladen werden.",
|
||||
"workoutNotFound": "Dieses Training gibt es nicht mehr."
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue