feat(train): strength plans and sessions (ADR 0035)
Strength plans of exercises from a catalogue or the person's own, in blocks of one exercise or several done in turn (supersets, circuits), each with its sets, reps or seconds, weights and rests; each a sealed `strength_plan` row. Plans are marked with what the place chosen lacks, and a session offers swaps moving the same way that the place allows. A session runs on every device, set by set with the rest counted down, each weight made up from the place's plates, bars and fixed weights with the plate changes between sets, kept in strength_session.json after each change so one cut off is carried on, and saved as a workout of the new activity Strength with its sets, listed on its page; strength training in Health Connect and FIT, no GPX. Migration 20261102113104496-strength-plans is purely additive: it creates the table strength_plan (id uuid v7, spaceId, keyId, the sealed payload and its nonce), its index on spaceId, and a foreign key to offline_sync_spaces with ON DELETE CASCADE, so deleting a person's sync spaces deletes their plans; then the modules' version rows. The gen_random_uuid_v7 function is created or replaced as in every migration. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
064b911aa2
commit
508994be3a
5 changed files with 27612 additions and 25 deletions
|
|
@ -20,6 +20,7 @@
|
|||
"activityWalking": "Gehen",
|
||||
"activityHiking": "Wandern",
|
||||
"activityCycling": "Radfahren",
|
||||
"activityStrength": "Krafttraining",
|
||||
"activityIndoorRowing": "Rudern drinnen",
|
||||
"activityOther": "Anderes Training",
|
||||
"recordAutoPause": "Von selbst pausieren",
|
||||
|
|
@ -60,7 +61,7 @@
|
|||
"recordingNotificationChannel": "Aufzeichnung",
|
||||
"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}}",
|
||||
"workoutName": "{when, select, morning_strength{Krafttraining am Morgen} afternoon_strength{Krafttraining am Nachmittag} evening_strength{Krafttraining am Abend} night_strength{Krafttraining in der Nacht} 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",
|
||||
|
|
@ -634,5 +635,77 @@
|
|||
"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}"
|
||||
"plateSet": "Satz {number}",
|
||||
|
||||
"exerciseName": "{id, select, backSquat{Kniebeuge} frontSquat{Frontkniebeuge} gobletSquat{Goblet Squat} kettlebellGobletSquat{Goblet Squat mit Kettlebell} bodyweightSquat{Kniebeuge ohne Gewicht} lunge{Ausfallschritt} bulgarianSplitSquat{Bulgarische Kniebeuge} bodyweightLunge{Ausfallschritt ohne Gewicht} deadlift{Kreuzheben} romanianDeadlift{Rumänisches Kreuzheben} trapBarDeadlift{Kreuzheben mit Trap Bar} dumbbellRomanianDeadlift{Rumänisches Kreuzheben mit Kurzhanteln} kettlebellSwing{Kettlebell Swing} hipThrust{Hip Thrust} gluteBridge{Glute Bridge} benchPress{Bankdrücken} inclineBenchPress{Schrägbankdrücken} dumbbellBenchPress{Kurzhantel-Bankdrücken} pushUp{Liegestütz} dip{Dip} overheadPress{Schulterdrücken} dumbbellShoulderPress{Kurzhantel-Schulterdrücken} pikePushUp{Pike-Liegestütz} barbellRow{Langhantelrudern} dumbbellRow{Einarmiges Kurzhantelrudern} cableRow{Rudern am Kabelzug} invertedRow{Umgekehrtes Rudern} bandPullApart{Band Pull-Apart} facePull{Face Pull} pullUp{Klimmzug} chinUp{Klimmzug im Untergriff} latPulldown{Latzug} bandPulldown{Latzug mit Band} barbellCurl{Langhantel-Curl} ezBarCurl{SZ-Curl} dumbbellCurl{Kurzhantel-Curl} hammerCurl{Hammer-Curl} tricepsPushdown{Trizepsdrücken am Kabel} skullCrusher{French Press} overheadTricepsExtension{Trizepsstrecken über Kopf} benchDip{Dip an der Bank} lateralRaise{Seitheben} cableLateralRaise{Seitheben am Kabel} calfRaise{Wadenheben} plank{Unterarmstütz} sidePlank{Seitstütz} hangingLegRaise{Beinheben im Hang} crunch{Crunch} farmersCarry{Farmer’s Walk} other{Übung}}",
|
||||
"exerciseNeed": "{need, select, barbell{eine Langhantel} ezBar{eine SZ-Stange} trapBar{eine Trap Bar} dumbbells{Kurzhanteln} kettlebell{eine Kettlebell} bench{eine Bank} rack{ein Rack} pullUpBar{eine Klimmzugstange} dipBars{eine Dipstation} cableMachine{einen Kabelzug} bands{Widerstandsbänder} other{etwas}}",
|
||||
"exercisePattern": "{pattern, select, squat{Kniebeugen} lunge{Ausfallschritte} hinge{Hüftstreckung} horizontalPush{Drücken} verticalPush{Drücken über Kopf} horizontalPull{Rudern} verticalPull{Klimmzüge und Latzug} curl{Curls} extension{Trizeps} raise{Heben} calf{Waden} core{Rumpf} carry{Tragen} other{Andere}}",
|
||||
"exerciseLoad": "{load, select, barbell{Langhantel mit Scheiben} ezBar{SZ-Stange mit Scheiben} trapBar{Trap Bar mit Scheiben} dumbbellPair{Eine Kurzhantel in jeder Hand} dumbbell{Eine Kurzhantel} kettlebell{Kettlebell} cable{Kabelzug} band{Band} body{Körpergewicht} other{Anderes}}",
|
||||
"activityStrengthCard": "Kraft",
|
||||
"strengthPlansHeading": "Kraftpläne",
|
||||
"strengthPlansNew": "Neuer Kraftplan",
|
||||
"strengthPlansEmpty": "Kraftpläne listen Übungen mit Sätzen, Wiederholungen, Gewichten und Pausen auf, einzeln oder als Supersätze und Zirkel.",
|
||||
"strengthPlanLocked": "Lässt sich auf diesem Gerät nicht öffnen",
|
||||
"strengthPlanDeleted": "Kraftplan gelöscht",
|
||||
"strengthStart": "Start",
|
||||
"strengthChoosePlan": "Welcher Plan?",
|
||||
"strengthNoPlans": "Leg zuerst einen Kraftplan an: Die Liste unten hat „Neuer Kraftplan“.",
|
||||
"strengthPlanTitle": "Kraftplan",
|
||||
"strengthPlanName": "Name",
|
||||
"strengthPlanSave": "Speichern",
|
||||
"strengthPlanDelete": "Löschen",
|
||||
"strengthAddExercise": "Übung hinzufügen",
|
||||
"strengthAddToBlock": "Übung im Wechsel hinzufügen",
|
||||
"strengthOwnExercise": "Eigene Übung",
|
||||
"strengthOwnExercises": "Eigene",
|
||||
"strengthExerciseName": "Was es ist",
|
||||
"strengthExerciseNeeds": "Was es braucht",
|
||||
"strengthExerciseLoad": "Womit",
|
||||
"strengthExercisePattern": "Bewegung",
|
||||
"strengthExerciseTimed": "Wird gehalten",
|
||||
"strengthExerciseDone": "Fertig",
|
||||
"strengthAddSet": "Satz hinzufügen",
|
||||
"strengthReps": "Wdh.",
|
||||
"strengthSeconds": "Sekunden",
|
||||
"strengthKg": "kg",
|
||||
"strengthRemoveExercise": "Übung entfernen",
|
||||
"strengthRemoveSet": "Satz entfernen",
|
||||
"strengthMoveUp": "Nach oben",
|
||||
"strengthMoveDown": "Nach unten",
|
||||
"strengthRest": "Pause",
|
||||
"strengthRestBetween": "Pause zwischen den Übungen",
|
||||
"strengthDiscardTitle": "Änderungen verwerfen?",
|
||||
"strengthDiscard": "Verwerfen",
|
||||
"strengthDiscardMessage": "Was du an diesem Plan geändert hast, geht verloren.",
|
||||
"strengthAbandon": "Ohne Speichern beenden",
|
||||
"strengthAbandonMessage": "Die bisherigen Sätze werden von diesem Gerät gelöscht. Dies kann nicht rückgängig gemacht werden.",
|
||||
"strengthFinish": "Beenden und speichern",
|
||||
"strengthAllDone": "Alle Sätze sind durch.",
|
||||
"strengthSetDone": "Geschafft",
|
||||
"strengthSkip": "Satz überspringen",
|
||||
"strengthSwap": "Übung tauschen",
|
||||
"strengthSwapTitle": "Stattdessen",
|
||||
"strengthNoSwaps": "Nichts anderes hier bewegt sich so.",
|
||||
"strengthRestSkip": "Pause überspringen",
|
||||
"strengthResting": "Pause",
|
||||
"strengthCarryOn": "Ein Training läuft",
|
||||
"strengthCarryOnAction": "Weiter",
|
||||
"strengthWeightNotMadeUp": "Hier lässt sich dieses Gewicht nicht zusammenstellen.",
|
||||
"strengthFixed": "{weight} kg, das nächste darunter",
|
||||
"strengthNoPlace": "Kein Ort gewählt: Gewichte wie geplant.",
|
||||
"strengthTrainsAt": "In {place}",
|
||||
"strengthWorkoutVolume": "{weight} kg bewegt",
|
||||
"strengthWorkoutSets": "{count, plural, =1{1 Satz} other{{count} Sätze}}",
|
||||
"strengthMissing": "Fehlt hier: {needs}",
|
||||
"strengthPlanSummary": "{exercises, plural, =1{1 Übung} other{{exercises} Übungen}} · {sets, plural, =1{1 Satz} other{{sets} Sätze}}",
|
||||
"strengthBlockKind": "{kind, select, superset{Supersatz} circuit{Zirkel} other{Übung}}",
|
||||
"strengthSetOf": "Satz {set} von {sets}",
|
||||
"strengthRoundOf": "Runde {round} von {rounds}",
|
||||
"strengthTarget": "{reps} × {weight} kg",
|
||||
"strengthTargetReps": "{reps, plural, =1{1 Wdh.} other{{reps} Wdh.}}",
|
||||
"strengthTargetSeconds": "{seconds} s",
|
||||
"strengthNextUp": "Als Nächstes: {exercise}",
|
||||
"strengthBarAndPlates": "{bar}-kg-Stange, jede Seite: {plates}",
|
||||
"strengthHandlesAndPlates": "{bar}-kg-Griffe, jede Seite: {plates}",
|
||||
"strengthWeightShort": "{weight} kg unter dem Plan"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
"activityWalking": "Walking",
|
||||
"activityHiking": "Hiking",
|
||||
"activityCycling": "Cycling",
|
||||
"activityStrength": "Strength training",
|
||||
"activityIndoorRowing": "Rowing indoors",
|
||||
"activityOther": "Other workout",
|
||||
"recordAutoPause": "Pause by itself",
|
||||
|
|
@ -75,7 +76,7 @@
|
|||
"recordingNotificationPaused": "{activity} · paused",
|
||||
"@recordingNotificationPaused": {"description": "The notification's title while paused.", "placeholders": {"activity": {"type": "String", "example": "Running"}}},
|
||||
|
||||
"workoutName": "{when, select, morning_running{Morning run} morning_walking{Morning walk} morning_hiking{Morning hike} morning_cycling{Morning ride} morning_indoorRowing{Morning row} afternoon_running{Afternoon run} afternoon_walking{Afternoon walk} afternoon_hiking{Afternoon hike} afternoon_cycling{Afternoon ride} afternoon_indoorRowing{Afternoon row} evening_running{Evening run} evening_walking{Evening walk} evening_hiking{Evening hike} evening_cycling{Evening ride} evening_indoorRowing{Evening row} night_running{Night run} night_walking{Night walk} night_hiking{Night hike} night_cycling{Night ride} night_indoorRowing{Night row} other{Workout}}",
|
||||
"workoutName": "{when, select, morning_strength{Morning strength} afternoon_strength{Afternoon strength} evening_strength{Evening strength} night_strength{Night strength} morning_running{Morning run} morning_walking{Morning walk} morning_hiking{Morning hike} morning_cycling{Morning ride} morning_indoorRowing{Morning row} afternoon_running{Afternoon run} afternoon_walking{Afternoon walk} afternoon_hiking{Afternoon hike} afternoon_cycling{Afternoon ride} afternoon_indoorRowing{Afternoon row} evening_running{Evening run} evening_walking{Evening walk} evening_hiking{Evening hike} evening_cycling{Evening ride} evening_indoorRowing{Evening row} night_running{Night run} night_walking{Night walk} night_hiking{Night hike} night_cycling{Night ride} night_indoorRowing{Night row} other{Workout}}",
|
||||
"@workoutName": {"description": "A workout's name where the person gave none: the time of day it started (morning 5–12, afternoon 12–17, evening 17–22, night) and its activity, as Strava names them.", "placeholders": {"when": {"type": "String"}}},
|
||||
"workoutLocked": "Locked workout",
|
||||
"workoutLockedHint": "This device doesn't hold the key it's sealed with.",
|
||||
|
|
@ -801,5 +802,93 @@
|
|||
"plateMoves": "{count, plural, =0{No plate moves} =1{1 plate moves on each side} other{{count} plates move on each side}}",
|
||||
"@plateMoves": {"placeholders": {"count": {"type": "int"}}},
|
||||
"plateSet": "Set {number}",
|
||||
"@plateSet": {"placeholders": {"number": {"type": "int"}}}
|
||||
"@plateSet": {"placeholders": {"number": {"type": "int"}}},
|
||||
|
||||
"exerciseName": "{id, select, backSquat{Back squat} frontSquat{Front squat} gobletSquat{Goblet squat} kettlebellGobletSquat{Kettlebell goblet squat} bodyweightSquat{Bodyweight squat} lunge{Lunge} bulgarianSplitSquat{Bulgarian split squat} bodyweightLunge{Bodyweight lunge} deadlift{Deadlift} romanianDeadlift{Romanian deadlift} trapBarDeadlift{Trap bar deadlift} dumbbellRomanianDeadlift{Dumbbell Romanian deadlift} kettlebellSwing{Kettlebell swing} hipThrust{Hip thrust} gluteBridge{Glute bridge} benchPress{Bench press} inclineBenchPress{Incline bench press} dumbbellBenchPress{Dumbbell bench press} pushUp{Push-up} dip{Dip} overheadPress{Overhead press} dumbbellShoulderPress{Dumbbell shoulder press} pikePushUp{Pike push-up} barbellRow{Barbell row} dumbbellRow{One-arm dumbbell row} cableRow{Seated cable row} invertedRow{Inverted row} bandPullApart{Band pull-apart} facePull{Face pull} pullUp{Pull-up} chinUp{Chin-up} latPulldown{Lat pulldown} bandPulldown{Band pulldown} barbellCurl{Barbell curl} ezBarCurl{EZ bar curl} dumbbellCurl{Dumbbell curl} hammerCurl{Hammer curl} tricepsPushdown{Triceps pushdown} skullCrusher{Skull crusher} overheadTricepsExtension{Overhead triceps extension} benchDip{Bench dip} lateralRaise{Lateral raise} cableLateralRaise{Cable lateral raise} calfRaise{Calf raise} plank{Plank} sidePlank{Side plank} hangingLegRaise{Hanging leg raise} crunch{Crunch} farmersCarry{Farmer's carry} other{Exercise}}",
|
||||
"@exerciseName": {"placeholders": {"id": {"type": "String"}}, "description": "A catalogue exercise's name, by its id (ADR 0035, D1)."},
|
||||
"exerciseNeed": "{need, select, barbell{a barbell} ezBar{an EZ bar} trapBar{a trap bar} dumbbells{dumbbells} kettlebell{a kettlebell} bench{a bench} rack{a rack} pullUpBar{a pull-up bar} dipBars{dip bars} cableMachine{a cable machine} bands{bands} other{something}}",
|
||||
"@exerciseNeed": {"placeholders": {"need": {"type": "String"}}, "description": "What an exercise needs, as in \"Missing here: a rack, dip bars\"."},
|
||||
"exercisePattern": "{pattern, select, squat{Squats} lunge{Lunges} hinge{Hinges} horizontalPush{Pushes} verticalPush{Pushes overhead} horizontalPull{Rows} verticalPull{Pull-ups and pulldowns} curl{Curls} extension{Triceps} raise{Raises} calf{Calves} core{Core} carry{Carries} other{Other}}",
|
||||
"@exercisePattern": {"placeholders": {"pattern": {"type": "String"}}},
|
||||
"exerciseLoad": "{load, select, barbell{Barbell with plates} ezBar{EZ bar with plates} trapBar{Trap bar with plates} dumbbellPair{A dumbbell in each hand} dumbbell{One dumbbell} kettlebell{Kettlebell} cable{Cable stack} band{Band} body{Body weight} other{Other}}",
|
||||
"@exerciseLoad": {"placeholders": {"load": {"type": "String"}}},
|
||||
"activityStrengthCard": "Strength",
|
||||
"strengthPlansHeading": "Strength plans",
|
||||
"strengthPlansNew": "New strength plan",
|
||||
"strengthPlansEmpty": "Strength plans list exercises with their sets, repetitions, weights and rests, alone or as supersets and circuits.",
|
||||
"strengthPlanLocked": "Can't be opened on this device",
|
||||
"strengthPlanDeleted": "Strength plan deleted",
|
||||
"strengthStart": "Start",
|
||||
"strengthChoosePlan": "Which plan?",
|
||||
"strengthNoPlans": "Make a strength plan first: the list below has New strength plan.",
|
||||
"strengthPlanTitle": "Strength plan",
|
||||
"strengthPlanName": "Name",
|
||||
"strengthPlanSave": "Save",
|
||||
"strengthPlanDelete": "Delete",
|
||||
"strengthAddExercise": "Add exercise",
|
||||
"strengthAddToBlock": "Add an exercise to do in turn",
|
||||
"strengthOwnExercise": "Your own exercise",
|
||||
"strengthOwnExercises": "Your own",
|
||||
"strengthExerciseName": "What it is",
|
||||
"strengthExerciseNeeds": "What it needs",
|
||||
"strengthExerciseLoad": "What it is done with",
|
||||
"strengthExercisePattern": "How it moves",
|
||||
"strengthExerciseTimed": "Held for a time",
|
||||
"strengthExerciseDone": "Done",
|
||||
"strengthAddSet": "Add a set",
|
||||
"strengthReps": "Reps",
|
||||
"strengthSeconds": "Seconds",
|
||||
"strengthKg": "kg",
|
||||
"strengthRemoveExercise": "Remove exercise",
|
||||
"strengthRemoveSet": "Remove set",
|
||||
"strengthMoveUp": "Move up",
|
||||
"strengthMoveDown": "Move down",
|
||||
"strengthRest": "Rest",
|
||||
"strengthRestBetween": "Rest between exercises",
|
||||
"strengthDiscardTitle": "Discard changes?",
|
||||
"strengthDiscard": "Discard",
|
||||
"strengthDiscardMessage": "What you changed in this plan is not kept.",
|
||||
"strengthAbandon": "End without saving",
|
||||
"strengthAbandonMessage": "The sets done so far are deleted from this device. This can't be undone.",
|
||||
"strengthFinish": "Finish and save",
|
||||
"strengthAllDone": "Every set is through.",
|
||||
"strengthSetDone": "Done",
|
||||
"strengthSkip": "Skip set",
|
||||
"strengthSwap": "Swap exercise",
|
||||
"strengthSwapTitle": "Do instead",
|
||||
"strengthNoSwaps": "Nothing else here moves this way.",
|
||||
"strengthRestSkip": "Skip rest",
|
||||
"strengthResting": "Rest",
|
||||
"strengthCarryOn": "A session is under way",
|
||||
"strengthCarryOnAction": "Carry on",
|
||||
"strengthWeightNotMadeUp": "Nothing here makes this weight up.",
|
||||
"strengthFixed": "{weight} kg, nearest at or below",
|
||||
"strengthNoPlace": "No place chosen: weights as planned.",
|
||||
"strengthTrainsAt": "At {place}",
|
||||
"strengthWorkoutVolume": "{weight} kg moved",
|
||||
"strengthWorkoutSets": "{count, plural, =1{1 set} other{{count} sets}}",
|
||||
"strengthMissing": "Missing here: {needs}",
|
||||
"@strengthMissing": {"placeholders": {"needs": {"type": "String"}}},
|
||||
"strengthPlanSummary": "{exercises, plural, =1{1 exercise} other{{exercises} exercises}} · {sets, plural, =1{1 set} other{{sets} sets}}",
|
||||
"@strengthPlanSummary": {"placeholders": {"exercises": {"type": "int"}, "sets": {"type": "int"}}},
|
||||
"strengthBlockKind": "{kind, select, superset{Superset} circuit{Circuit} other{Exercise}}",
|
||||
"@strengthBlockKind": {"placeholders": {"kind": {"type": "String"}}},
|
||||
"strengthSetOf": "Set {set} of {sets}",
|
||||
"@strengthSetOf": {"placeholders": {"set": {"type": "int"}, "sets": {"type": "int"}}},
|
||||
"strengthRoundOf": "Round {round} of {rounds}",
|
||||
"@strengthRoundOf": {"placeholders": {"round": {"type": "int"}, "rounds": {"type": "int"}}},
|
||||
"strengthTarget": "{reps} × {weight} kg",
|
||||
"@strengthTarget": {"placeholders": {"reps": {"type": "int"}, "weight": {"type": "String"}}},
|
||||
"strengthTargetReps": "{reps, plural, =1{1 rep} other{{reps} reps}}",
|
||||
"@strengthTargetReps": {"placeholders": {"reps": {"type": "int"}}},
|
||||
"strengthTargetSeconds": "{seconds} s",
|
||||
"@strengthTargetSeconds": {"placeholders": {"seconds": {"type": "int"}}},
|
||||
"strengthNextUp": "Next: {exercise}",
|
||||
"@strengthNextUp": {"placeholders": {"exercise": {"type": "String"}}},
|
||||
"strengthBarAndPlates": "{bar} kg bar, each side: {plates}",
|
||||
"@strengthBarAndPlates": {"placeholders": {"bar": {"type": "String"}, "plates": {"type": "String"}}},
|
||||
"strengthHandlesAndPlates": "{bar} kg handles, each side: {plates}",
|
||||
"@strengthHandlesAndPlates": {"placeholders": {"bar": {"type": "String"}, "plates": {"type": "String"}}},
|
||||
"strengthWeightShort": "{weight} kg below what was planned",
|
||||
"@strengthWeightShort": {"placeholders": {"weight": {"type": "String"}}}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -184,6 +184,12 @@ abstract class AppLocalizations {
|
|||
/// **'Cycling'**
|
||||
String get activityCycling;
|
||||
|
||||
/// No description provided for @activityStrength.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength training'**
|
||||
String get activityStrength;
|
||||
|
||||
/// No description provided for @activityIndoorRowing.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
|
@ -421,7 +427,7 @@ abstract class AppLocalizations {
|
|||
/// A workout's name where the person gave none: the time of day it started (morning 5–12, afternoon 12–17, evening 17–22, night) and its activity, as Strava names them.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{when, select, morning_running{Morning run} morning_walking{Morning walk} morning_hiking{Morning hike} morning_cycling{Morning ride} morning_indoorRowing{Morning row} afternoon_running{Afternoon run} afternoon_walking{Afternoon walk} afternoon_hiking{Afternoon hike} afternoon_cycling{Afternoon ride} afternoon_indoorRowing{Afternoon row} evening_running{Evening run} evening_walking{Evening walk} evening_hiking{Evening hike} evening_cycling{Evening ride} evening_indoorRowing{Evening row} night_running{Night run} night_walking{Night walk} night_hiking{Night hike} night_cycling{Night ride} night_indoorRowing{Night row} other{Workout}}'**
|
||||
/// **'{when, select, morning_strength{Morning strength} afternoon_strength{Afternoon strength} evening_strength{Evening strength} night_strength{Night strength} morning_running{Morning run} morning_walking{Morning walk} morning_hiking{Morning hike} morning_cycling{Morning ride} morning_indoorRowing{Morning row} afternoon_running{Afternoon run} afternoon_walking{Afternoon walk} afternoon_hiking{Afternoon hike} afternoon_cycling{Afternoon ride} afternoon_indoorRowing{Afternoon row} evening_running{Evening run} evening_walking{Evening walk} evening_hiking{Evening hike} evening_cycling{Evening ride} evening_indoorRowing{Evening row} night_running{Night run} night_walking{Night walk} night_hiking{Night hike} night_cycling{Night ride} night_indoorRowing{Night row} other{Workout}}'**
|
||||
String workoutName(String when);
|
||||
|
||||
/// No description provided for @workoutLocked.
|
||||
|
|
@ -3825,6 +3831,432 @@ abstract class AppLocalizations {
|
|||
/// In en, this message translates to:
|
||||
/// **'Set {number}'**
|
||||
String plateSet(int number);
|
||||
|
||||
/// A catalogue exercise's name, by its id (ADR 0035, D1).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{id, select, backSquat{Back squat} frontSquat{Front squat} gobletSquat{Goblet squat} kettlebellGobletSquat{Kettlebell goblet squat} bodyweightSquat{Bodyweight squat} lunge{Lunge} bulgarianSplitSquat{Bulgarian split squat} bodyweightLunge{Bodyweight lunge} deadlift{Deadlift} romanianDeadlift{Romanian deadlift} trapBarDeadlift{Trap bar deadlift} dumbbellRomanianDeadlift{Dumbbell Romanian deadlift} kettlebellSwing{Kettlebell swing} hipThrust{Hip thrust} gluteBridge{Glute bridge} benchPress{Bench press} inclineBenchPress{Incline bench press} dumbbellBenchPress{Dumbbell bench press} pushUp{Push-up} dip{Dip} overheadPress{Overhead press} dumbbellShoulderPress{Dumbbell shoulder press} pikePushUp{Pike push-up} barbellRow{Barbell row} dumbbellRow{One-arm dumbbell row} cableRow{Seated cable row} invertedRow{Inverted row} bandPullApart{Band pull-apart} facePull{Face pull} pullUp{Pull-up} chinUp{Chin-up} latPulldown{Lat pulldown} bandPulldown{Band pulldown} barbellCurl{Barbell curl} ezBarCurl{EZ bar curl} dumbbellCurl{Dumbbell curl} hammerCurl{Hammer curl} tricepsPushdown{Triceps pushdown} skullCrusher{Skull crusher} overheadTricepsExtension{Overhead triceps extension} benchDip{Bench dip} lateralRaise{Lateral raise} cableLateralRaise{Cable lateral raise} calfRaise{Calf raise} plank{Plank} sidePlank{Side plank} hangingLegRaise{Hanging leg raise} crunch{Crunch} farmersCarry{Farmer\'s carry} other{Exercise}}'**
|
||||
String exerciseName(String id);
|
||||
|
||||
/// What an exercise needs, as in "Missing here: a rack, dip bars".
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{need, select, barbell{a barbell} ezBar{an EZ bar} trapBar{a trap bar} dumbbells{dumbbells} kettlebell{a kettlebell} bench{a bench} rack{a rack} pullUpBar{a pull-up bar} dipBars{dip bars} cableMachine{a cable machine} bands{bands} other{something}}'**
|
||||
String exerciseNeed(String need);
|
||||
|
||||
/// No description provided for @exercisePattern.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{pattern, select, squat{Squats} lunge{Lunges} hinge{Hinges} horizontalPush{Pushes} verticalPush{Pushes overhead} horizontalPull{Rows} verticalPull{Pull-ups and pulldowns} curl{Curls} extension{Triceps} raise{Raises} calf{Calves} core{Core} carry{Carries} other{Other}}'**
|
||||
String exercisePattern(String pattern);
|
||||
|
||||
/// No description provided for @exerciseLoad.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{load, select, barbell{Barbell with plates} ezBar{EZ bar with plates} trapBar{Trap bar with plates} dumbbellPair{A dumbbell in each hand} dumbbell{One dumbbell} kettlebell{Kettlebell} cable{Cable stack} band{Band} body{Body weight} other{Other}}'**
|
||||
String exerciseLoad(String load);
|
||||
|
||||
/// No description provided for @activityStrengthCard.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength'**
|
||||
String get activityStrengthCard;
|
||||
|
||||
/// No description provided for @strengthPlansHeading.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength plans'**
|
||||
String get strengthPlansHeading;
|
||||
|
||||
/// No description provided for @strengthPlansNew.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'New strength plan'**
|
||||
String get strengthPlansNew;
|
||||
|
||||
/// No description provided for @strengthPlansEmpty.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength plans list exercises with their sets, repetitions, weights and rests, alone or as supersets and circuits.'**
|
||||
String get strengthPlansEmpty;
|
||||
|
||||
/// No description provided for @strengthPlanLocked.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Can\'t be opened on this device'**
|
||||
String get strengthPlanLocked;
|
||||
|
||||
/// No description provided for @strengthPlanDeleted.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength plan deleted'**
|
||||
String get strengthPlanDeleted;
|
||||
|
||||
/// No description provided for @strengthStart.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Start'**
|
||||
String get strengthStart;
|
||||
|
||||
/// No description provided for @strengthChoosePlan.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Which plan?'**
|
||||
String get strengthChoosePlan;
|
||||
|
||||
/// No description provided for @strengthNoPlans.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Make a strength plan first: the list below has New strength plan.'**
|
||||
String get strengthNoPlans;
|
||||
|
||||
/// No description provided for @strengthPlanTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Strength plan'**
|
||||
String get strengthPlanTitle;
|
||||
|
||||
/// No description provided for @strengthPlanName.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Name'**
|
||||
String get strengthPlanName;
|
||||
|
||||
/// No description provided for @strengthPlanSave.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Save'**
|
||||
String get strengthPlanSave;
|
||||
|
||||
/// No description provided for @strengthPlanDelete.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Delete'**
|
||||
String get strengthPlanDelete;
|
||||
|
||||
/// No description provided for @strengthAddExercise.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Add exercise'**
|
||||
String get strengthAddExercise;
|
||||
|
||||
/// No description provided for @strengthAddToBlock.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Add an exercise to do in turn'**
|
||||
String get strengthAddToBlock;
|
||||
|
||||
/// No description provided for @strengthOwnExercise.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your own exercise'**
|
||||
String get strengthOwnExercise;
|
||||
|
||||
/// No description provided for @strengthOwnExercises.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your own'**
|
||||
String get strengthOwnExercises;
|
||||
|
||||
/// No description provided for @strengthExerciseName.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'What it is'**
|
||||
String get strengthExerciseName;
|
||||
|
||||
/// No description provided for @strengthExerciseNeeds.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'What it needs'**
|
||||
String get strengthExerciseNeeds;
|
||||
|
||||
/// No description provided for @strengthExerciseLoad.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'What it is done with'**
|
||||
String get strengthExerciseLoad;
|
||||
|
||||
/// No description provided for @strengthExercisePattern.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'How it moves'**
|
||||
String get strengthExercisePattern;
|
||||
|
||||
/// No description provided for @strengthExerciseTimed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Held for a time'**
|
||||
String get strengthExerciseTimed;
|
||||
|
||||
/// No description provided for @strengthExerciseDone.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Done'**
|
||||
String get strengthExerciseDone;
|
||||
|
||||
/// No description provided for @strengthAddSet.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Add a set'**
|
||||
String get strengthAddSet;
|
||||
|
||||
/// No description provided for @strengthReps.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Reps'**
|
||||
String get strengthReps;
|
||||
|
||||
/// No description provided for @strengthSeconds.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Seconds'**
|
||||
String get strengthSeconds;
|
||||
|
||||
/// No description provided for @strengthKg.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'kg'**
|
||||
String get strengthKg;
|
||||
|
||||
/// No description provided for @strengthRemoveExercise.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove exercise'**
|
||||
String get strengthRemoveExercise;
|
||||
|
||||
/// No description provided for @strengthRemoveSet.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove set'**
|
||||
String get strengthRemoveSet;
|
||||
|
||||
/// No description provided for @strengthMoveUp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Move up'**
|
||||
String get strengthMoveUp;
|
||||
|
||||
/// No description provided for @strengthMoveDown.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Move down'**
|
||||
String get strengthMoveDown;
|
||||
|
||||
/// No description provided for @strengthRest.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Rest'**
|
||||
String get strengthRest;
|
||||
|
||||
/// No description provided for @strengthRestBetween.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Rest between exercises'**
|
||||
String get strengthRestBetween;
|
||||
|
||||
/// No description provided for @strengthDiscardTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Discard changes?'**
|
||||
String get strengthDiscardTitle;
|
||||
|
||||
/// No description provided for @strengthDiscard.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Discard'**
|
||||
String get strengthDiscard;
|
||||
|
||||
/// No description provided for @strengthDiscardMessage.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'What you changed in this plan is not kept.'**
|
||||
String get strengthDiscardMessage;
|
||||
|
||||
/// No description provided for @strengthAbandon.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'End without saving'**
|
||||
String get strengthAbandon;
|
||||
|
||||
/// No description provided for @strengthAbandonMessage.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The sets done so far are deleted from this device. This can\'t be undone.'**
|
||||
String get strengthAbandonMessage;
|
||||
|
||||
/// No description provided for @strengthFinish.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Finish and save'**
|
||||
String get strengthFinish;
|
||||
|
||||
/// No description provided for @strengthAllDone.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Every set is through.'**
|
||||
String get strengthAllDone;
|
||||
|
||||
/// No description provided for @strengthSetDone.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Done'**
|
||||
String get strengthSetDone;
|
||||
|
||||
/// No description provided for @strengthSkip.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Skip set'**
|
||||
String get strengthSkip;
|
||||
|
||||
/// No description provided for @strengthSwap.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Swap exercise'**
|
||||
String get strengthSwap;
|
||||
|
||||
/// No description provided for @strengthSwapTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Do instead'**
|
||||
String get strengthSwapTitle;
|
||||
|
||||
/// No description provided for @strengthNoSwaps.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Nothing else here moves this way.'**
|
||||
String get strengthNoSwaps;
|
||||
|
||||
/// No description provided for @strengthRestSkip.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Skip rest'**
|
||||
String get strengthRestSkip;
|
||||
|
||||
/// No description provided for @strengthResting.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Rest'**
|
||||
String get strengthResting;
|
||||
|
||||
/// No description provided for @strengthCarryOn.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'A session is under way'**
|
||||
String get strengthCarryOn;
|
||||
|
||||
/// No description provided for @strengthCarryOnAction.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Carry on'**
|
||||
String get strengthCarryOnAction;
|
||||
|
||||
/// No description provided for @strengthWeightNotMadeUp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Nothing here makes this weight up.'**
|
||||
String get strengthWeightNotMadeUp;
|
||||
|
||||
/// No description provided for @strengthFixed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{weight} kg, nearest at or below'**
|
||||
String strengthFixed(Object weight);
|
||||
|
||||
/// No description provided for @strengthNoPlace.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'No place chosen: weights as planned.'**
|
||||
String get strengthNoPlace;
|
||||
|
||||
/// No description provided for @strengthTrainsAt.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'At {place}'**
|
||||
String strengthTrainsAt(Object place);
|
||||
|
||||
/// No description provided for @strengthWorkoutVolume.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{weight} kg moved'**
|
||||
String strengthWorkoutVolume(Object weight);
|
||||
|
||||
/// No description provided for @strengthWorkoutSets.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{1 set} other{{count} sets}}'**
|
||||
String strengthWorkoutSets(num count);
|
||||
|
||||
/// No description provided for @strengthMissing.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Missing here: {needs}'**
|
||||
String strengthMissing(String needs);
|
||||
|
||||
/// No description provided for @strengthPlanSummary.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{exercises, plural, =1{1 exercise} other{{exercises} exercises}} · {sets, plural, =1{1 set} other{{sets} sets}}'**
|
||||
String strengthPlanSummary(int exercises, int sets);
|
||||
|
||||
/// No description provided for @strengthBlockKind.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{kind, select, superset{Superset} circuit{Circuit} other{Exercise}}'**
|
||||
String strengthBlockKind(String kind);
|
||||
|
||||
/// No description provided for @strengthSetOf.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Set {set} of {sets}'**
|
||||
String strengthSetOf(int set, int sets);
|
||||
|
||||
/// No description provided for @strengthRoundOf.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Round {round} of {rounds}'**
|
||||
String strengthRoundOf(int round, int rounds);
|
||||
|
||||
/// No description provided for @strengthTarget.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{reps} × {weight} kg'**
|
||||
String strengthTarget(int reps, String weight);
|
||||
|
||||
/// No description provided for @strengthTargetReps.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{reps, plural, =1{1 rep} other{{reps} reps}}'**
|
||||
String strengthTargetReps(int reps);
|
||||
|
||||
/// No description provided for @strengthTargetSeconds.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{seconds} s'**
|
||||
String strengthTargetSeconds(int seconds);
|
||||
|
||||
/// No description provided for @strengthNextUp.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Next: {exercise}'**
|
||||
String strengthNextUp(String exercise);
|
||||
|
||||
/// No description provided for @strengthBarAndPlates.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{bar} kg bar, each side: {plates}'**
|
||||
String strengthBarAndPlates(String bar, String plates);
|
||||
|
||||
/// No description provided for @strengthHandlesAndPlates.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{bar} kg handles, each side: {plates}'**
|
||||
String strengthHandlesAndPlates(String bar, String plates);
|
||||
|
||||
/// No description provided for @strengthWeightShort.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{weight} kg below what was planned'**
|
||||
String strengthWeightShort(String weight);
|
||||
}
|
||||
|
||||
class _AppLocalizationsDelegate
|
||||
|
|
|
|||
|
|
@ -54,6 +54,9 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
@override
|
||||
String get activityCycling => 'Radfahren';
|
||||
|
||||
@override
|
||||
String get activityStrength => 'Krafttraining';
|
||||
|
||||
@override
|
||||
String get activityIndoorRowing => 'Rudern drinnen';
|
||||
|
||||
|
|
@ -199,6 +202,10 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
String _temp0 = intl.Intl.selectLogic(
|
||||
when,
|
||||
{
|
||||
'morning_strength': 'Krafttraining am Morgen',
|
||||
'afternoon_strength': 'Krafttraining am Nachmittag',
|
||||
'evening_strength': 'Krafttraining am Abend',
|
||||
'night_strength': 'Krafttraining in der Nacht',
|
||||
'morning_running': 'Morgenlauf',
|
||||
'morning_walking': 'Morgenspaziergang',
|
||||
'morning_hiking': 'Morgenwanderung',
|
||||
|
|
@ -2332,4 +2339,400 @@ class AppLocalizationsDe extends AppLocalizations {
|
|||
String plateSet(int number) {
|
||||
return 'Satz $number';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseName(String id) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
id,
|
||||
{
|
||||
'backSquat': 'Kniebeuge',
|
||||
'frontSquat': 'Frontkniebeuge',
|
||||
'gobletSquat': 'Goblet Squat',
|
||||
'kettlebellGobletSquat': 'Goblet Squat mit Kettlebell',
|
||||
'bodyweightSquat': 'Kniebeuge ohne Gewicht',
|
||||
'lunge': 'Ausfallschritt',
|
||||
'bulgarianSplitSquat': 'Bulgarische Kniebeuge',
|
||||
'bodyweightLunge': 'Ausfallschritt ohne Gewicht',
|
||||
'deadlift': 'Kreuzheben',
|
||||
'romanianDeadlift': 'Rumänisches Kreuzheben',
|
||||
'trapBarDeadlift': 'Kreuzheben mit Trap Bar',
|
||||
'dumbbellRomanianDeadlift': 'Rumänisches Kreuzheben mit Kurzhanteln',
|
||||
'kettlebellSwing': 'Kettlebell Swing',
|
||||
'hipThrust': 'Hip Thrust',
|
||||
'gluteBridge': 'Glute Bridge',
|
||||
'benchPress': 'Bankdrücken',
|
||||
'inclineBenchPress': 'Schrägbankdrücken',
|
||||
'dumbbellBenchPress': 'Kurzhantel-Bankdrücken',
|
||||
'pushUp': 'Liegestütz',
|
||||
'dip': 'Dip',
|
||||
'overheadPress': 'Schulterdrücken',
|
||||
'dumbbellShoulderPress': 'Kurzhantel-Schulterdrücken',
|
||||
'pikePushUp': 'Pike-Liegestütz',
|
||||
'barbellRow': 'Langhantelrudern',
|
||||
'dumbbellRow': 'Einarmiges Kurzhantelrudern',
|
||||
'cableRow': 'Rudern am Kabelzug',
|
||||
'invertedRow': 'Umgekehrtes Rudern',
|
||||
'bandPullApart': 'Band Pull-Apart',
|
||||
'facePull': 'Face Pull',
|
||||
'pullUp': 'Klimmzug',
|
||||
'chinUp': 'Klimmzug im Untergriff',
|
||||
'latPulldown': 'Latzug',
|
||||
'bandPulldown': 'Latzug mit Band',
|
||||
'barbellCurl': 'Langhantel-Curl',
|
||||
'ezBarCurl': 'SZ-Curl',
|
||||
'dumbbellCurl': 'Kurzhantel-Curl',
|
||||
'hammerCurl': 'Hammer-Curl',
|
||||
'tricepsPushdown': 'Trizepsdrücken am Kabel',
|
||||
'skullCrusher': 'French Press',
|
||||
'overheadTricepsExtension': 'Trizepsstrecken über Kopf',
|
||||
'benchDip': 'Dip an der Bank',
|
||||
'lateralRaise': 'Seitheben',
|
||||
'cableLateralRaise': 'Seitheben am Kabel',
|
||||
'calfRaise': 'Wadenheben',
|
||||
'plank': 'Unterarmstütz',
|
||||
'sidePlank': 'Seitstütz',
|
||||
'hangingLegRaise': 'Beinheben im Hang',
|
||||
'crunch': 'Crunch',
|
||||
'farmersCarry': 'Farmer’s Walk',
|
||||
'other': 'Übung',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseNeed(String need) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
need,
|
||||
{
|
||||
'barbell': 'eine Langhantel',
|
||||
'ezBar': 'eine SZ-Stange',
|
||||
'trapBar': 'eine Trap Bar',
|
||||
'dumbbells': 'Kurzhanteln',
|
||||
'kettlebell': 'eine Kettlebell',
|
||||
'bench': 'eine Bank',
|
||||
'rack': 'ein Rack',
|
||||
'pullUpBar': 'eine Klimmzugstange',
|
||||
'dipBars': 'eine Dipstation',
|
||||
'cableMachine': 'einen Kabelzug',
|
||||
'bands': 'Widerstandsbänder',
|
||||
'other': 'etwas',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exercisePattern(String pattern) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
pattern,
|
||||
{
|
||||
'squat': 'Kniebeugen',
|
||||
'lunge': 'Ausfallschritte',
|
||||
'hinge': 'Hüftstreckung',
|
||||
'horizontalPush': 'Drücken',
|
||||
'verticalPush': 'Drücken über Kopf',
|
||||
'horizontalPull': 'Rudern',
|
||||
'verticalPull': 'Klimmzüge und Latzug',
|
||||
'curl': 'Curls',
|
||||
'extension': 'Trizeps',
|
||||
'raise': 'Heben',
|
||||
'calf': 'Waden',
|
||||
'core': 'Rumpf',
|
||||
'carry': 'Tragen',
|
||||
'other': 'Andere',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseLoad(String load) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
load,
|
||||
{
|
||||
'barbell': 'Langhantel mit Scheiben',
|
||||
'ezBar': 'SZ-Stange mit Scheiben',
|
||||
'trapBar': 'Trap Bar mit Scheiben',
|
||||
'dumbbellPair': 'Eine Kurzhantel in jeder Hand',
|
||||
'dumbbell': 'Eine Kurzhantel',
|
||||
'kettlebell': 'Kettlebell',
|
||||
'cable': 'Kabelzug',
|
||||
'band': 'Band',
|
||||
'body': 'Körpergewicht',
|
||||
'other': 'Anderes',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get activityStrengthCard => 'Kraft';
|
||||
|
||||
@override
|
||||
String get strengthPlansHeading => 'Kraftpläne';
|
||||
|
||||
@override
|
||||
String get strengthPlansNew => 'Neuer Kraftplan';
|
||||
|
||||
@override
|
||||
String get strengthPlansEmpty =>
|
||||
'Kraftpläne listen Übungen mit Sätzen, Wiederholungen, Gewichten und Pausen auf, einzeln oder als Supersätze und Zirkel.';
|
||||
|
||||
@override
|
||||
String get strengthPlanLocked => 'Lässt sich auf diesem Gerät nicht öffnen';
|
||||
|
||||
@override
|
||||
String get strengthPlanDeleted => 'Kraftplan gelöscht';
|
||||
|
||||
@override
|
||||
String get strengthStart => 'Start';
|
||||
|
||||
@override
|
||||
String get strengthChoosePlan => 'Welcher Plan?';
|
||||
|
||||
@override
|
||||
String get strengthNoPlans =>
|
||||
'Leg zuerst einen Kraftplan an: Die Liste unten hat „Neuer Kraftplan“.';
|
||||
|
||||
@override
|
||||
String get strengthPlanTitle => 'Kraftplan';
|
||||
|
||||
@override
|
||||
String get strengthPlanName => 'Name';
|
||||
|
||||
@override
|
||||
String get strengthPlanSave => 'Speichern';
|
||||
|
||||
@override
|
||||
String get strengthPlanDelete => 'Löschen';
|
||||
|
||||
@override
|
||||
String get strengthAddExercise => 'Übung hinzufügen';
|
||||
|
||||
@override
|
||||
String get strengthAddToBlock => 'Übung im Wechsel hinzufügen';
|
||||
|
||||
@override
|
||||
String get strengthOwnExercise => 'Eigene Übung';
|
||||
|
||||
@override
|
||||
String get strengthOwnExercises => 'Eigene';
|
||||
|
||||
@override
|
||||
String get strengthExerciseName => 'Was es ist';
|
||||
|
||||
@override
|
||||
String get strengthExerciseNeeds => 'Was es braucht';
|
||||
|
||||
@override
|
||||
String get strengthExerciseLoad => 'Womit';
|
||||
|
||||
@override
|
||||
String get strengthExercisePattern => 'Bewegung';
|
||||
|
||||
@override
|
||||
String get strengthExerciseTimed => 'Wird gehalten';
|
||||
|
||||
@override
|
||||
String get strengthExerciseDone => 'Fertig';
|
||||
|
||||
@override
|
||||
String get strengthAddSet => 'Satz hinzufügen';
|
||||
|
||||
@override
|
||||
String get strengthReps => 'Wdh.';
|
||||
|
||||
@override
|
||||
String get strengthSeconds => 'Sekunden';
|
||||
|
||||
@override
|
||||
String get strengthKg => 'kg';
|
||||
|
||||
@override
|
||||
String get strengthRemoveExercise => 'Übung entfernen';
|
||||
|
||||
@override
|
||||
String get strengthRemoveSet => 'Satz entfernen';
|
||||
|
||||
@override
|
||||
String get strengthMoveUp => 'Nach oben';
|
||||
|
||||
@override
|
||||
String get strengthMoveDown => 'Nach unten';
|
||||
|
||||
@override
|
||||
String get strengthRest => 'Pause';
|
||||
|
||||
@override
|
||||
String get strengthRestBetween => 'Pause zwischen den Übungen';
|
||||
|
||||
@override
|
||||
String get strengthDiscardTitle => 'Änderungen verwerfen?';
|
||||
|
||||
@override
|
||||
String get strengthDiscard => 'Verwerfen';
|
||||
|
||||
@override
|
||||
String get strengthDiscardMessage =>
|
||||
'Was du an diesem Plan geändert hast, geht verloren.';
|
||||
|
||||
@override
|
||||
String get strengthAbandon => 'Ohne Speichern beenden';
|
||||
|
||||
@override
|
||||
String get strengthAbandonMessage =>
|
||||
'Die bisherigen Sätze werden von diesem Gerät gelöscht. Dies kann nicht rückgängig gemacht werden.';
|
||||
|
||||
@override
|
||||
String get strengthFinish => 'Beenden und speichern';
|
||||
|
||||
@override
|
||||
String get strengthAllDone => 'Alle Sätze sind durch.';
|
||||
|
||||
@override
|
||||
String get strengthSetDone => 'Geschafft';
|
||||
|
||||
@override
|
||||
String get strengthSkip => 'Satz überspringen';
|
||||
|
||||
@override
|
||||
String get strengthSwap => 'Übung tauschen';
|
||||
|
||||
@override
|
||||
String get strengthSwapTitle => 'Stattdessen';
|
||||
|
||||
@override
|
||||
String get strengthNoSwaps => 'Nichts anderes hier bewegt sich so.';
|
||||
|
||||
@override
|
||||
String get strengthRestSkip => 'Pause überspringen';
|
||||
|
||||
@override
|
||||
String get strengthResting => 'Pause';
|
||||
|
||||
@override
|
||||
String get strengthCarryOn => 'Ein Training läuft';
|
||||
|
||||
@override
|
||||
String get strengthCarryOnAction => 'Weiter';
|
||||
|
||||
@override
|
||||
String get strengthWeightNotMadeUp =>
|
||||
'Hier lässt sich dieses Gewicht nicht zusammenstellen.';
|
||||
|
||||
@override
|
||||
String strengthFixed(Object weight) {
|
||||
return '$weight kg, das nächste darunter';
|
||||
}
|
||||
|
||||
@override
|
||||
String get strengthNoPlace => 'Kein Ort gewählt: Gewichte wie geplant.';
|
||||
|
||||
@override
|
||||
String strengthTrainsAt(Object place) {
|
||||
return 'In $place';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWorkoutVolume(Object weight) {
|
||||
return '$weight kg bewegt';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWorkoutSets(num count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count Sätze',
|
||||
one: '1 Satz',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthMissing(String needs) {
|
||||
return 'Fehlt hier: $needs';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthPlanSummary(int exercises, int sets) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
exercises,
|
||||
locale: localeName,
|
||||
other: '$exercises Übungen',
|
||||
one: '1 Übung',
|
||||
);
|
||||
String _temp1 = intl.Intl.pluralLogic(
|
||||
sets,
|
||||
locale: localeName,
|
||||
other: '$sets Sätze',
|
||||
one: '1 Satz',
|
||||
);
|
||||
return '$_temp0 · $_temp1';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthBlockKind(String kind) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
kind,
|
||||
{
|
||||
'superset': 'Supersatz',
|
||||
'circuit': 'Zirkel',
|
||||
'other': 'Übung',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthSetOf(int set, int sets) {
|
||||
return 'Satz $set von $sets';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthRoundOf(int round, int rounds) {
|
||||
return 'Runde $round von $rounds';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTarget(int reps, String weight) {
|
||||
return '$reps × $weight kg';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTargetReps(int reps) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
reps,
|
||||
locale: localeName,
|
||||
other: '$reps Wdh.',
|
||||
one: '1 Wdh.',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTargetSeconds(int seconds) {
|
||||
return '$seconds s';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthNextUp(String exercise) {
|
||||
return 'Als Nächstes: $exercise';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthBarAndPlates(String bar, String plates) {
|
||||
return '$bar-kg-Stange, jede Seite: $plates';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthHandlesAndPlates(String bar, String plates) {
|
||||
return '$bar-kg-Griffe, jede Seite: $plates';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWeightShort(String weight) {
|
||||
return '$weight kg unter dem Plan';
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,6 +53,9 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
@override
|
||||
String get activityCycling => 'Cycling';
|
||||
|
||||
@override
|
||||
String get activityStrength => 'Strength training';
|
||||
|
||||
@override
|
||||
String get activityIndoorRowing => 'Rowing indoors';
|
||||
|
||||
|
|
@ -197,6 +200,10 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
String _temp0 = intl.Intl.selectLogic(
|
||||
when,
|
||||
{
|
||||
'morning_strength': 'Morning strength',
|
||||
'afternoon_strength': 'Afternoon strength',
|
||||
'evening_strength': 'Evening strength',
|
||||
'night_strength': 'Night strength',
|
||||
'morning_running': 'Morning run',
|
||||
'morning_walking': 'Morning walk',
|
||||
'morning_hiking': 'Morning hike',
|
||||
|
|
@ -2320,6 +2327,401 @@ class AppLocalizationsEn extends AppLocalizations {
|
|||
String plateSet(int number) {
|
||||
return 'Set $number';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseName(String id) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
id,
|
||||
{
|
||||
'backSquat': 'Back squat',
|
||||
'frontSquat': 'Front squat',
|
||||
'gobletSquat': 'Goblet squat',
|
||||
'kettlebellGobletSquat': 'Kettlebell goblet squat',
|
||||
'bodyweightSquat': 'Bodyweight squat',
|
||||
'lunge': 'Lunge',
|
||||
'bulgarianSplitSquat': 'Bulgarian split squat',
|
||||
'bodyweightLunge': 'Bodyweight lunge',
|
||||
'deadlift': 'Deadlift',
|
||||
'romanianDeadlift': 'Romanian deadlift',
|
||||
'trapBarDeadlift': 'Trap bar deadlift',
|
||||
'dumbbellRomanianDeadlift': 'Dumbbell Romanian deadlift',
|
||||
'kettlebellSwing': 'Kettlebell swing',
|
||||
'hipThrust': 'Hip thrust',
|
||||
'gluteBridge': 'Glute bridge',
|
||||
'benchPress': 'Bench press',
|
||||
'inclineBenchPress': 'Incline bench press',
|
||||
'dumbbellBenchPress': 'Dumbbell bench press',
|
||||
'pushUp': 'Push-up',
|
||||
'dip': 'Dip',
|
||||
'overheadPress': 'Overhead press',
|
||||
'dumbbellShoulderPress': 'Dumbbell shoulder press',
|
||||
'pikePushUp': 'Pike push-up',
|
||||
'barbellRow': 'Barbell row',
|
||||
'dumbbellRow': 'One-arm dumbbell row',
|
||||
'cableRow': 'Seated cable row',
|
||||
'invertedRow': 'Inverted row',
|
||||
'bandPullApart': 'Band pull-apart',
|
||||
'facePull': 'Face pull',
|
||||
'pullUp': 'Pull-up',
|
||||
'chinUp': 'Chin-up',
|
||||
'latPulldown': 'Lat pulldown',
|
||||
'bandPulldown': 'Band pulldown',
|
||||
'barbellCurl': 'Barbell curl',
|
||||
'ezBarCurl': 'EZ bar curl',
|
||||
'dumbbellCurl': 'Dumbbell curl',
|
||||
'hammerCurl': 'Hammer curl',
|
||||
'tricepsPushdown': 'Triceps pushdown',
|
||||
'skullCrusher': 'Skull crusher',
|
||||
'overheadTricepsExtension': 'Overhead triceps extension',
|
||||
'benchDip': 'Bench dip',
|
||||
'lateralRaise': 'Lateral raise',
|
||||
'cableLateralRaise': 'Cable lateral raise',
|
||||
'calfRaise': 'Calf raise',
|
||||
'plank': 'Plank',
|
||||
'sidePlank': 'Side plank',
|
||||
'hangingLegRaise': 'Hanging leg raise',
|
||||
'crunch': 'Crunch',
|
||||
'farmersCarry': 'Farmer\'s carry',
|
||||
'other': 'Exercise',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseNeed(String need) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
need,
|
||||
{
|
||||
'barbell': 'a barbell',
|
||||
'ezBar': 'an EZ bar',
|
||||
'trapBar': 'a trap bar',
|
||||
'dumbbells': 'dumbbells',
|
||||
'kettlebell': 'a kettlebell',
|
||||
'bench': 'a bench',
|
||||
'rack': 'a rack',
|
||||
'pullUpBar': 'a pull-up bar',
|
||||
'dipBars': 'dip bars',
|
||||
'cableMachine': 'a cable machine',
|
||||
'bands': 'bands',
|
||||
'other': 'something',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exercisePattern(String pattern) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
pattern,
|
||||
{
|
||||
'squat': 'Squats',
|
||||
'lunge': 'Lunges',
|
||||
'hinge': 'Hinges',
|
||||
'horizontalPush': 'Pushes',
|
||||
'verticalPush': 'Pushes overhead',
|
||||
'horizontalPull': 'Rows',
|
||||
'verticalPull': 'Pull-ups and pulldowns',
|
||||
'curl': 'Curls',
|
||||
'extension': 'Triceps',
|
||||
'raise': 'Raises',
|
||||
'calf': 'Calves',
|
||||
'core': 'Core',
|
||||
'carry': 'Carries',
|
||||
'other': 'Other',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String exerciseLoad(String load) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
load,
|
||||
{
|
||||
'barbell': 'Barbell with plates',
|
||||
'ezBar': 'EZ bar with plates',
|
||||
'trapBar': 'Trap bar with plates',
|
||||
'dumbbellPair': 'A dumbbell in each hand',
|
||||
'dumbbell': 'One dumbbell',
|
||||
'kettlebell': 'Kettlebell',
|
||||
'cable': 'Cable stack',
|
||||
'band': 'Band',
|
||||
'body': 'Body weight',
|
||||
'other': 'Other',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get activityStrengthCard => 'Strength';
|
||||
|
||||
@override
|
||||
String get strengthPlansHeading => 'Strength plans';
|
||||
|
||||
@override
|
||||
String get strengthPlansNew => 'New strength plan';
|
||||
|
||||
@override
|
||||
String get strengthPlansEmpty =>
|
||||
'Strength plans list exercises with their sets, repetitions, weights and rests, alone or as supersets and circuits.';
|
||||
|
||||
@override
|
||||
String get strengthPlanLocked => 'Can\'t be opened on this device';
|
||||
|
||||
@override
|
||||
String get strengthPlanDeleted => 'Strength plan deleted';
|
||||
|
||||
@override
|
||||
String get strengthStart => 'Start';
|
||||
|
||||
@override
|
||||
String get strengthChoosePlan => 'Which plan?';
|
||||
|
||||
@override
|
||||
String get strengthNoPlans =>
|
||||
'Make a strength plan first: the list below has New strength plan.';
|
||||
|
||||
@override
|
||||
String get strengthPlanTitle => 'Strength plan';
|
||||
|
||||
@override
|
||||
String get strengthPlanName => 'Name';
|
||||
|
||||
@override
|
||||
String get strengthPlanSave => 'Save';
|
||||
|
||||
@override
|
||||
String get strengthPlanDelete => 'Delete';
|
||||
|
||||
@override
|
||||
String get strengthAddExercise => 'Add exercise';
|
||||
|
||||
@override
|
||||
String get strengthAddToBlock => 'Add an exercise to do in turn';
|
||||
|
||||
@override
|
||||
String get strengthOwnExercise => 'Your own exercise';
|
||||
|
||||
@override
|
||||
String get strengthOwnExercises => 'Your own';
|
||||
|
||||
@override
|
||||
String get strengthExerciseName => 'What it is';
|
||||
|
||||
@override
|
||||
String get strengthExerciseNeeds => 'What it needs';
|
||||
|
||||
@override
|
||||
String get strengthExerciseLoad => 'What it is done with';
|
||||
|
||||
@override
|
||||
String get strengthExercisePattern => 'How it moves';
|
||||
|
||||
@override
|
||||
String get strengthExerciseTimed => 'Held for a time';
|
||||
|
||||
@override
|
||||
String get strengthExerciseDone => 'Done';
|
||||
|
||||
@override
|
||||
String get strengthAddSet => 'Add a set';
|
||||
|
||||
@override
|
||||
String get strengthReps => 'Reps';
|
||||
|
||||
@override
|
||||
String get strengthSeconds => 'Seconds';
|
||||
|
||||
@override
|
||||
String get strengthKg => 'kg';
|
||||
|
||||
@override
|
||||
String get strengthRemoveExercise => 'Remove exercise';
|
||||
|
||||
@override
|
||||
String get strengthRemoveSet => 'Remove set';
|
||||
|
||||
@override
|
||||
String get strengthMoveUp => 'Move up';
|
||||
|
||||
@override
|
||||
String get strengthMoveDown => 'Move down';
|
||||
|
||||
@override
|
||||
String get strengthRest => 'Rest';
|
||||
|
||||
@override
|
||||
String get strengthRestBetween => 'Rest between exercises';
|
||||
|
||||
@override
|
||||
String get strengthDiscardTitle => 'Discard changes?';
|
||||
|
||||
@override
|
||||
String get strengthDiscard => 'Discard';
|
||||
|
||||
@override
|
||||
String get strengthDiscardMessage =>
|
||||
'What you changed in this plan is not kept.';
|
||||
|
||||
@override
|
||||
String get strengthAbandon => 'End without saving';
|
||||
|
||||
@override
|
||||
String get strengthAbandonMessage =>
|
||||
'The sets done so far are deleted from this device. This can\'t be undone.';
|
||||
|
||||
@override
|
||||
String get strengthFinish => 'Finish and save';
|
||||
|
||||
@override
|
||||
String get strengthAllDone => 'Every set is through.';
|
||||
|
||||
@override
|
||||
String get strengthSetDone => 'Done';
|
||||
|
||||
@override
|
||||
String get strengthSkip => 'Skip set';
|
||||
|
||||
@override
|
||||
String get strengthSwap => 'Swap exercise';
|
||||
|
||||
@override
|
||||
String get strengthSwapTitle => 'Do instead';
|
||||
|
||||
@override
|
||||
String get strengthNoSwaps => 'Nothing else here moves this way.';
|
||||
|
||||
@override
|
||||
String get strengthRestSkip => 'Skip rest';
|
||||
|
||||
@override
|
||||
String get strengthResting => 'Rest';
|
||||
|
||||
@override
|
||||
String get strengthCarryOn => 'A session is under way';
|
||||
|
||||
@override
|
||||
String get strengthCarryOnAction => 'Carry on';
|
||||
|
||||
@override
|
||||
String get strengthWeightNotMadeUp => 'Nothing here makes this weight up.';
|
||||
|
||||
@override
|
||||
String strengthFixed(Object weight) {
|
||||
return '$weight kg, nearest at or below';
|
||||
}
|
||||
|
||||
@override
|
||||
String get strengthNoPlace => 'No place chosen: weights as planned.';
|
||||
|
||||
@override
|
||||
String strengthTrainsAt(Object place) {
|
||||
return 'At $place';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWorkoutVolume(Object weight) {
|
||||
return '$weight kg moved';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWorkoutSets(num count) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: '$count sets',
|
||||
one: '1 set',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthMissing(String needs) {
|
||||
return 'Missing here: $needs';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthPlanSummary(int exercises, int sets) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
exercises,
|
||||
locale: localeName,
|
||||
other: '$exercises exercises',
|
||||
one: '1 exercise',
|
||||
);
|
||||
String _temp1 = intl.Intl.pluralLogic(
|
||||
sets,
|
||||
locale: localeName,
|
||||
other: '$sets sets',
|
||||
one: '1 set',
|
||||
);
|
||||
return '$_temp0 · $_temp1';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthBlockKind(String kind) {
|
||||
String _temp0 = intl.Intl.selectLogic(
|
||||
kind,
|
||||
{
|
||||
'superset': 'Superset',
|
||||
'circuit': 'Circuit',
|
||||
'other': 'Exercise',
|
||||
},
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthSetOf(int set, int sets) {
|
||||
return 'Set $set of $sets';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthRoundOf(int round, int rounds) {
|
||||
return 'Round $round of $rounds';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTarget(int reps, String weight) {
|
||||
return '$reps × $weight kg';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTargetReps(int reps) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
reps,
|
||||
locale: localeName,
|
||||
other: '$reps reps',
|
||||
one: '1 rep',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthTargetSeconds(int seconds) {
|
||||
return '$seconds s';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthNextUp(String exercise) {
|
||||
return 'Next: $exercise';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthBarAndPlates(String bar, String plates) {
|
||||
return '$bar kg bar, each side: $plates';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthHandlesAndPlates(String bar, String plates) {
|
||||
return '$bar kg handles, each side: $plates';
|
||||
}
|
||||
|
||||
@override
|
||||
String strengthWeightShort(String weight) {
|
||||
return '$weight kg below what was planned';
|
||||
}
|
||||
}
|
||||
|
||||
/// The translations for English, as used in the United Kingdom (`en_GB`).
|
||||
|
|
|
|||
Loading…
Reference in a new issue