mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-10 05:12:14 +00:00
fix(measurements): wire the six deferred Apple Health identifiers
Adds RESPIRATORY_RATE, BODY_MASS_INDEX, and the four remaining deferred quantity types to MeasurementType plus the Apple Health mapping. The batch route already returns 200 with a per-entry skip for unmappable identifiers; iOS reads that as success and advances its sync anchor, so any sample with one of these identifiers used to be dropped forever. The mapping now accepts them and the rows land. The walking-asymmetry and walking-double-support percent values adopt the project's server-side scaling convention (raw HK reading on the wire, server applies the ×100 at ingest), matching the walking-steadiness path. iOS releases that still send the pre-multiplied percent need a one-release shim and are tracked in the iOS coord notes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
b43b57f657
commit
befac0ec65
18 files changed
+552
-9
No files matched your search
@@ -71,6 +71,13 @@ export const MEASUREMENT_TYPE_LABEL_KEYS: Record<string, string> = {
|
||||
// ── v1.4.30 R-F T1.4 + T1.5 ──
|
||||
WALKING_STEADINESS: "measurements.typeWalkingSteadiness",
|
||||
AUDIO_EXPOSURE_EVENT: "measurements.typeAudioExposureEvent",
|
||||
// ── v1.5.5 iOS-coord additions ──
|
||||
RESPIRATORY_RATE: "measurements.typeRespiratoryRate",
|
||||
BODY_MASS_INDEX: "measurements.typeBodyMassIndex",
|
||||
LEAN_BODY_MASS: "measurements.typeLeanBodyMass",
|
||||
WALKING_HEART_RATE_AVERAGE: "measurements.typeWalkingHeartRateAverage",
|
||||
WALKING_ASYMMETRY: "measurements.typeWalkingAsymmetry",
|
||||
WALKING_DOUBLE_SUPPORT: "measurements.typeWalkingDoubleSupport",
|
||||
};
|
||||
|
||||
export const MEASUREMENT_TYPE_ICONS: Record<string, LucideIcon> = {
|
||||
@@ -119,6 +126,16 @@ export const MEASUREMENT_TYPE_ICONS: Record<string, LucideIcon> = {
|
||||
// event flag — the event is a louder-cousin of the env quantity.
|
||||
WALKING_STEADINESS: Gauge,
|
||||
AUDIO_EXPOSURE_EVENT: Volume2,
|
||||
// ── v1.5.5 iOS-coord additions ──
|
||||
// Wind already carries the breathing family (SpO2 uses it);
|
||||
// Scale carries body-comp; HeartPulse rounds out the cardio
|
||||
// pair; Footprints + Gauge live in the gait family.
|
||||
RESPIRATORY_RATE: Wind,
|
||||
BODY_MASS_INDEX: Scale,
|
||||
LEAN_BODY_MASS: Scale,
|
||||
WALKING_HEART_RATE_AVERAGE: HeartPulse,
|
||||
WALKING_ASYMMETRY: Footprints,
|
||||
WALKING_DOUBLE_SUPPORT: Footprints,
|
||||
};
|
||||
|
||||
export const MEASUREMENT_TYPE_COLORS: Record<string, string> = {
|
||||
@@ -161,4 +178,13 @@ export const MEASUREMENT_TYPE_COLORS: Record<string, string> = {
|
||||
// ── v1.4.30 R-F T1.4 + T1.5 ──
|
||||
WALKING_STEADINESS: "bg-chart-2/20 text-chart-2",
|
||||
AUDIO_EXPOSURE_EVENT: "bg-chart-5/20 text-chart-5",
|
||||
// ── v1.5.5 iOS-coord additions ──
|
||||
// Reuse the existing palette families: chart-5 (cardio/pulse),
|
||||
// chart-1 (mass), chart-2 (activity/gait).
|
||||
RESPIRATORY_RATE: "bg-chart-5/20 text-chart-5",
|
||||
BODY_MASS_INDEX: "bg-chart-1/20 text-chart-1",
|
||||
LEAN_BODY_MASS: "bg-chart-1/20 text-chart-1",
|
||||
WALKING_HEART_RATE_AVERAGE: "bg-chart-3/20 text-chart-3",
|
||||
WALKING_ASYMMETRY: "bg-chart-2/20 text-chart-2",
|
||||
WALKING_DOUBLE_SUPPORT: "bg-chart-2/20 text-chart-2",
|
||||
};
|
||||
Reference in new issue
Block a user