Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 20 additions & 2 deletions app/Sources/FreeReps/Models/HealthDataType.swift
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,26 @@ enum HealthDataTypes {
// Mobility & Fitness
.init(id: HKQuantityTypeIdentifier.vo2Max.rawValue, displayName: "VO2 Max", category: .mobility, unit: HKUnit.literUnit(with: .milli).unitDivided(by: HKUnit.gramUnit(with: .kilo).unitMultiplied(by: HKUnit.minute())), unitString: "mL/kg·min"),
// Nutrition
.init(id: HKQuantityTypeIdentifier.dietaryCaffeine.rawValue, displayName: "Caffeine", category: .nutrition, unit: .gram(), unitString: "g"),
.init(id: HKQuantityTypeIdentifier.dietaryWater.rawValue, displayName: "Water", category: .nutrition, unit: .liter(), unitString: "L"),
.init(id: HKQuantityTypeIdentifier.dietaryEnergyConsumed.rawValue, displayName: "Energy Consumed", category: .nutrition, unit: .kilocalorie(), unitString: "kcal", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryProtein.rawValue, displayName: "Protein", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryFatTotal.rawValue, displayName: "Total Fat", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryCarbohydrates.rawValue, displayName: "Carbohydrates", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietarySugar.rawValue, displayName: "Sugar", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryFiber.rawValue, displayName: "Fiber", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryFatSaturated.rawValue, displayName: "Saturated Fat", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryFatMonounsaturated.rawValue, displayName: "Monounsaturated Fat", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryFatPolyunsaturated.rawValue, displayName: "Polyunsaturated Fat", category: .nutrition, unit: .gram(), unitString: "g", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryCholesterol.rawValue, displayName: "Cholesterol", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietarySodium.rawValue, displayName: "Sodium", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryPotassium.rawValue, displayName: "Potassium", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryCalcium.rawValue, displayName: "Calcium", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryIron.rawValue, displayName: "Iron", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryMagnesium.rawValue, displayName: "Magnesium", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryZinc.rawValue, displayName: "Zinc", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryVitaminC.rawValue, displayName: "Vitamin C", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryVitaminD.rawValue, displayName: "Vitamin D", category: .nutrition, unit: .internationalUnit(), unitString: "IU", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryCaffeine.rawValue, displayName: "Caffeine", category: .nutrition, unit: .gramUnit(with: .milli), unitString: "mg", syncStrategy: .aggregateCumulative(interval: 3600)),
.init(id: HKQuantityTypeIdentifier.dietaryWater.rawValue, displayName: "Water", category: .nutrition, unit: .liter(), unitString: "L", syncStrategy: .aggregateCumulative(interval: 3600)),
// iOS 16+
.init(id: HKQuantityTypeIdentifier.heartRateRecoveryOneMinute.rawValue, displayName: "Heart Rate Recovery", category: .vitals, unit: HKUnit(from: "count/min"), unitString: "bpm"),
.init(id: HKQuantityTypeIdentifier.appleSleepingWristTemperature.rawValue, displayName: "Sleeping Wrist Temperature", category: .body, unit: .degreeCelsius(), unitString: "°C"),
Expand Down