feat(train): equipment by place and a plate calculator (ADR 0034)
The places a person trains at (home, a gym), each a sealed, synced `training_place` row with its equipment: bars and handles with their own weight, plates by weight and count, dumbbells and kettlebells, the rest by count, the person's own by name. A new place starts from what a home or a gym usually has. The place last chosen is remembered on the device, never its location. The plate calculator loads each weight both sides alike, the heaviest load not above it with the fewest plates, heavier inside, and over a series of sets picks the loads making the fewest plate moves, listing what comes off and goes on. Equipment is in Settings; strength plans are to build on it. The migration only creates the table, its space index and its cascade to the sync engine's spaces. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
b7b0b937fe
commit
064b911aa2
1 changed files with 24759 additions and 7 deletions
|
|
@ -580,5 +580,59 @@
|
|||
"bodyWeight": "{kg} kg",
|
||||
"bodyResting": "Ruhepuls {bpm}",
|
||||
"bodyMax": "Maximalpuls {bpm}",
|
||||
"homeToday": "Heute"
|
||||
"homeToday": "Heute",
|
||||
|
||||
"equipmentTitle": "Ausrüstung",
|
||||
"equipmentHint": "Wo du trainierst und was es dort gibt",
|
||||
"equipmentEmptyTitle": "Noch keine Orte",
|
||||
"equipmentEmptyHint": "Füge die Orte hinzu, an denen du trainierst, etwa dein Zuhause und dein Studio, mit dem, was es dort gibt. Beginne mit dem, was ein Zuhause oder ein Studio meist hat, oder mit nichts.",
|
||||
"equipmentAddPlace": "Ort hinzufügen",
|
||||
"equipmentItems": "{count, plural, =0{Noch nichts} =1{1 Ausrüstungsstück} other{{count} Ausrüstungsstücke}}",
|
||||
"equipmentChosen": "Hier trainierst du gerade",
|
||||
"equipmentChoose": "Hier trainieren",
|
||||
"equipmentLocked": "Lässt sich auf diesem Gerät nicht öffnen",
|
||||
"placeNewTitle": "Neuer Ort",
|
||||
"placeName": "Name",
|
||||
"placeStartFrom": "Beginnen mit",
|
||||
"placeStartHome": "Zuhause",
|
||||
"placeStartGym": "Studio",
|
||||
"placeStartNothing": "Nichts",
|
||||
"placeDefaultHome": "Zuhause",
|
||||
"placeDefaultGym": "Studio",
|
||||
"placeAdd": "Hinzufügen",
|
||||
"placeRename": "Umbenennen",
|
||||
"placeSave": "Speichern",
|
||||
"placeDelete": "Ort löschen",
|
||||
"placeDeleteMessage": "Der Ort und seine Ausrüstung werden auf all deinen Geräten gelöscht.",
|
||||
"placeAddEquipment": "Ausrüstung hinzufügen",
|
||||
"placeEmptyHint": "Hier ist noch nichts. Füge die Ausrüstung hinzu, die es an diesem Ort gibt.",
|
||||
"equipmentKind": "{kind, select, barbell{Langhantel} ezBar{SZ-Stange} trapBar{Trap Bar} dumbbellHandle{Kurzhantelgriffe} plates{Hantelscheiben} fixedDumbbells{Kurzhanteln} kettlebells{Kettlebells} bench{Bank} rack{Rack} pullUpBar{Klimmzugstange} dipBars{Dipstation} cableMachine{Kabelzug} bands{Widerstandsbänder} other{Eigenes}}",
|
||||
"itemName": "Was es ist",
|
||||
"itemHowMany": "Wie viele",
|
||||
"itemOwnWeight": "Eigengewicht",
|
||||
"itemWeights": "Gewichte",
|
||||
"itemAddWeight": "Gewicht hinzufügen",
|
||||
"itemDone": "Fertig",
|
||||
"itemRemove": "Entfernen",
|
||||
"itemWeightInvalid": "Ein Gewicht in Kilogramm, über 0",
|
||||
"weightKg": "{weight} kg",
|
||||
"weightCount": "{count} × {weight} kg",
|
||||
"plateCalculatorTitle": "Scheibenrechner",
|
||||
"plateCalculatorHint": "Was du auflegst und was sich zwischen den Sätzen ändert",
|
||||
"platePlace": "Ort",
|
||||
"plateBar": "Stange",
|
||||
"plateDumbbellPair": "Zwei Kurzhantelgriffe",
|
||||
"plateTargets": "Gewichte, kg",
|
||||
"plateTargetsHelper": "Eins für jeden Satz, etwa 60, 80, 100",
|
||||
"plateNoPlace": "Füge zuerst einen Ort hinzu, an dem du trainierst, mit seinen Scheiben.",
|
||||
"plateNoBar": "An diesem Ort gibt es nichts, worauf Scheiben passen. Füge eine Langhantel oder Kurzhantelgriffe hinzu.",
|
||||
"plateBelowBar": "Unter den {weight} kg der Stange",
|
||||
"plateShort": "{weight} kg unter deinem Ziel: Näher kommen die Scheiben nicht",
|
||||
"plateSide": "Jede Seite, von innen: {plates}",
|
||||
"plateBarAlone": "Nur die Stange",
|
||||
"plateOff": "Nimm ab: {plates}",
|
||||
"plateOn": "Leg auf: {plates}",
|
||||
"plateNoChange": "Nichts ändert sich",
|
||||
"plateMoves": "{count, plural, =0{Keine Scheibe bewegt sich} =1{1 Scheibe je Seite bewegt sich} other{{count} Scheiben je Seite bewegen sich}}",
|
||||
"plateSet": "Satz {number}"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue