Files
ObsidianHome/03 - Sport/Workout test.md

984 B

cssclasses
cssclasses
wide-page
const zip = (a, b) => a.map((k, i) => [k, b[i]]);

let workout = [
	"Pullup",
	"Pushup",
	"Barbell squat"
]
let folderName = "03 - Sport/Exercises"
let pages = Array.from(workout, ex => `"${folderName}/${ex}.md"`)
let pagesAsStr = pages.join(" or ")
let muscleGroups = [
	"Name", 
	"Biceps", 
	"Triceps", 
	"Front delts", 
	"Side delts", 
	"Rear delts", 
	"Pecs", 
	"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)])