--- tags: - sport cssclasses: - wide-page --- ## Day 1 - Upper body ```dataviewjs let workout = [ "Egyptian raise", "Incline dumbell chest press", "Pullup", "Dip", "T-bar row" ] let folderName = "03 - Sport/Exercises" let pages = Array.from(workout, ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Upper pecs", "Lower pecs", "Side abs", "Abs", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Spine erectors", "Quads", "Hamstrings", "Glutes", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); console.log(dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group]))) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Day 2 - Lower body ```dataviewjs let workout = [ "Lateral dumbbell raise", "Deadlift", "Foot elevated lunge", "Leg press - narrow stance", "Cable curl", "Triceps overhead extension" ] let folderName = "03 - Sport/Exercises" let pages = Array.from(workout, ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Upper pecs", "Lower pecs", "Side abs", "Abs", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Spine erectors", "Quads", "Hamstrings", "Glutes", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); console.log(dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group]))) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Day 3 - Upper ```dataviewjs let workout = [ "Cable Y raise", "Bench press", "Pullup", "Barbell squat", "Barbell military press" ] let folderName = "03 - Sport/Exercises" let pages = Array.from(workout, ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Upper pecs", "Lower pecs", "Side abs", "Abs", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Spine erectors", "Quads", "Hamstrings", "Glutes", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); console.log(dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group]))) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ``` ## Day 4 - Lower body ```dataviewjs let workout = [ "Lateral dumbbell raise", "Foot elevated lunge", ] let folderName = "03 - Sport/Exercises" let pages = Array.from(workout, ex => `"${folderName}/${ex}.md"`) let pagesAsStr = pages.join(" or ") let muscleGroups = [ "Name", "Forearms", "Biceps", "Triceps", "Front delts", "Side delts", "Rear delts", "Upper pecs", "Lower pecs", "Side abs", "Abs", "Rotator cuff", "Upper traps", "Mid/lower traps", "Lats", "Spine erectors", "Quads", "Hamstrings", "Glutes", "Leg adductors", "Leg abductors", "Calves" ] dv.table(muscleGroups, dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => ex[group]))) let totals = muscleGroups.reduce((ac,a) => ({...ac,[a]:0}),{}); console.log(dv.pages(pagesAsStr) .map(ex => Array.from(muscleGroups, group => totals[group] += ex[group]))) totals.Name = "Totals" dv.table(muscleGroups, [Object.values(totals)]) ```