@dofek/training 0.1.41 → 0.1.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -41,6 +41,11 @@ export interface CyclingWorkoutMetricsInput {
41
41
  samples: CyclingWorkoutSample[];
42
42
  settings: CyclingWorkoutSettings | null;
43
43
  intervals: CyclingWorkoutIntervalInput[];
44
+ streamBarriers?: {
45
+ power?: number[];
46
+ heartRate?: number[];
47
+ cadence?: number[];
48
+ };
44
49
  }
45
50
  export interface CyclingWorkoutMetrics {
46
51
  durationSeconds: number;
@@ -103,6 +108,12 @@ export interface CyclingWorkoutMetrics {
103
108
  reason: string;
104
109
  }>;
105
110
  }
111
+ interface ResampledStream {
112
+ values: Array<number | null>;
113
+ maximumValue: number | null;
114
+ coverage: StreamCoverage;
115
+ }
116
+ export declare function resampleCyclingStream<T extends CyclingWorkoutSample>(samples: T[], durationSeconds: number, select: (sample: T) => number | null | undefined, minimumValue?: number, barriers?: number[]): ResampledStream;
106
117
  /**
107
118
  * Compute per-activity cycling metrics from native samples without extrapolating
108
119
  * through dropouts. Every coverage field is expressed against elapsed duration.
@@ -1 +1 @@
1
- {"version":3,"file":"cycling-workout-metrics.d.ts","sourceRoot":"","sources":["../src/cycling-workout-metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cycling-workout-metrics.d.ts","sourceRoot":"","sources":["../src/cycling-workout-metrics.ts"],"names":[],"mappings":"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"}
@@ -26,27 +26,33 @@ function median(values) {
26
26
  return null;
27
27
  return sorted.length % 2 === 0 && lower != null ? (lower + upper) / 2 : upper;
28
28
  }
29
- function resampleStream(samples, durationSeconds, select) {
29
+ export function resampleCyclingStream(samples, durationSeconds, select, minimumValue = 0, barriers = []) {
30
30
  const byOffset = new Map();
31
31
  for (const sample of samples) {
32
32
  const value = select(sample);
33
- if (value == null || !Number.isFinite(value) || value < 0)
33
+ if (value == null || !Number.isFinite(value) || value < minimumValue)
34
34
  continue;
35
- const offset = Math.floor(sample.elapsedSeconds);
35
+ const offset = sample.elapsedSeconds;
36
36
  if (offset >= 0 && offset < durationSeconds)
37
37
  byOffset.set(offset, value);
38
38
  }
39
+ for (const offset of barriers) {
40
+ if (offset >= 0 && offset < durationSeconds)
41
+ byOffset.set(offset, null);
42
+ }
39
43
  const points = [...byOffset.entries()]
40
44
  .map(([offset, value]) => ({ offset, value }))
41
45
  .sort((left, right) => left.offset - right.offset);
42
46
  const gaps = points.slice(1).map((point, index) => point.offset - (points[index]?.offset ?? 0));
43
47
  const medianInterval = median(gaps);
44
- const nativeInterval = medianInterval ?? 1;
48
+ const nativeInterval = Math.min(10, medianInterval ?? 1);
45
49
  const continuityTolerance = Math.min(10, Math.max(5, nativeInterval * 2));
46
- const values = Array.from({ length: durationSeconds }, () => null);
50
+ const totals = Array.from({ length: durationSeconds }, () => 0);
51
+ const peaks = Array.from({ length: durationSeconds }).fill(null);
52
+ const coveredDurations = Array.from({ length: durationSeconds }, () => 0);
47
53
  for (let index = 0; index < points.length; index++) {
48
54
  const point = points[index];
49
- if (!point)
55
+ if (!point || point.value == null)
50
56
  continue;
51
57
  const next = points[index + 1];
52
58
  const intervalEnd = next
@@ -54,16 +60,27 @@ function resampleStream(samples, durationSeconds, select) {
54
60
  ? next.offset
55
61
  : point.offset + nativeInterval
56
62
  : point.offset + nativeInterval;
57
- for (let second = point.offset; second < Math.min(durationSeconds, intervalEnd); second++) {
58
- values[second] = point.value;
63
+ for (let second = Math.floor(point.offset); second < Math.min(durationSeconds, intervalEnd); second++) {
64
+ const covered = Math.min(second + 1, intervalEnd) - Math.max(second, point.offset);
65
+ totals[second] = (totals[second] ?? 0) + point.value * covered;
66
+ peaks[second] = Math.max(peaks[second] ?? point.value, point.value);
67
+ coveredDurations[second] = (coveredDurations[second] ?? 0) + covered;
59
68
  }
60
69
  }
70
+ // A partly invalid/missing bucket is unavailable, including sub-second conflicts.
71
+ const values = totals.map((total, second) => (coveredDurations[second] ?? 0) >= 1 - 1e-9 ? total : null);
61
72
  const coveredSeconds = values.reduce((count, value) => count + (value == null ? 0 : 1), 0);
62
73
  const zeroSeconds = values.reduce((count, value) => count + (value === 0 ? 1 : 0), 0);
63
74
  return {
64
75
  values,
76
+ // Preserve native peaks only in buckets that satisfy the same coverage mask.
77
+ maximumValue: peaks.reduce((maximum, peak, second) => {
78
+ if (values[second] == null || peak == null)
79
+ return maximum;
80
+ return maximum == null ? peak : Math.max(maximum, peak);
81
+ }, null),
65
82
  coverage: {
66
- observedSamples: points.length,
83
+ observedSamples: points.filter((point) => point.value != null).length,
67
84
  coveredSeconds,
68
85
  missingSeconds: durationSeconds - coveredSeconds,
69
86
  zeroSeconds,
@@ -234,9 +251,9 @@ function detectIntervals(power, ftpWatts) {
234
251
  */
235
252
  export function computeCyclingWorkoutMetrics(input) {
236
253
  const durationSeconds = Math.max(0, Math.floor(input.durationSeconds));
237
- const power = resampleStream(input.samples, durationSeconds, (sample) => sample.powerWatts);
238
- const heartRate = resampleStream(input.samples, durationSeconds, (sample) => sample.heartRateBpm);
239
- const cadence = resampleStream(input.samples, durationSeconds, (sample) => sample.cadenceRpm);
254
+ const power = resampleCyclingStream(input.samples, durationSeconds, (sample) => sample.powerWatts, 0, input.streamBarriers?.power);
255
+ const heartRate = resampleCyclingStream(input.samples, durationSeconds, (sample) => sample.heartRateBpm, 0, input.streamBarriers?.heartRate);
256
+ const cadence = resampleCyclingStream(input.samples, durationSeconds, (sample) => sample.cadenceRpm, 0, input.streamBarriers?.cadence);
240
257
  const unavailableReasons = [];
241
258
  const addUnavailable = (metric, reason) => {
242
259
  unavailableReasons.push({ metric, reason });
@@ -310,9 +327,7 @@ export function computeCyclingWorkoutMetrics(input) {
310
327
  },
311
328
  heartRate: {
312
329
  averageBpm: averageHeartRate == null ? null : round(averageHeartRate),
313
- maximumBpm: heartRate.coverage.coveredSeconds === 0
314
- ? null
315
- : Math.max(...heartRate.values.flatMap((value) => (value == null ? [] : [value]))),
330
+ maximumBpm: heartRate.maximumValue,
316
331
  },
317
332
  cadence: { averageRpm: averageCadence == null ? null : round(averageCadence) },
318
333
  aerobicEfficiency: {
@@ -1 +1 @@
1
- {"version":3,"file":"cycling-workout-metrics.js","sourceRoot":"","sources":["../src/cycling-workout-metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cycling-workout-metrics.js","sourceRoot":"","sources":["../src/cycling-workout-metrics.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,25 @@ import { type ActivityModality, isActivityDetailType, type LegacyActivityType, t
2
2
  export { isActivityDetailType };
3
3
  export declare const OTHER_ACTIVITY_TYPE = "__other__";
4
4
  export declare const STRENGTH_ACTIVITY_TYPES: readonly ["strength"];
5
+ export interface StrengthExerciseIdentity {
6
+ exerciseName: string;
7
+ equipment: string | null;
8
+ }
9
+ /** Compare the structured identity used by strength history series. */
10
+ export declare function isSameStrengthExercise(left: StrengthExerciseIdentity, right: StrengthExerciseIdentity): boolean;
11
+ /** Collision-safe React/list key for a structured strength exercise identity. */
12
+ export declare function strengthExerciseIdentityKey(identity: StrengthExerciseIdentity): string;
13
+ export interface StrengthExerciseDisplayLabel {
14
+ baseLabel: string;
15
+ discriminator: string | null;
16
+ label: string;
17
+ }
18
+ /**
19
+ * Allocate concise, deterministic labels for strength identities rendered together.
20
+ * Readable labels stay unchanged unless they collide; collisions gain the lossless
21
+ * recorded equipment value, with a stable ordinal only for a second-order collision.
22
+ */
23
+ export declare function strengthExerciseDisplayLabels(identities: readonly StrengthExerciseIdentity[]): readonly StrengthExerciseDisplayLabel[];
5
24
  /**
6
25
  * All canonical activity types considered "cycling" for consolidated views.
7
26
  * Individual activities show the specific subtype, but aggregated views
@@ -1 +1 @@
1
- {"version":3,"file":"training.d.ts","sourceRoot":"","sources":["../src/training.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAE1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAE/C,eAAO,MAAM,uBAAuB,uBAAwB,CAAC;AAM7D;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,sBAAuB,CAAC;AAE3D,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY,IAAI,mBAAmB,CAE3F;AAED,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,GAAG,WAAW,CAErE;AAED,uCAAuC;AACvC,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAUD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAChE,gBAAgB,EAAE,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,GAC9C,CAAC,YAAY,EAAE,CAAC,KAAK,oBAAoB,CAI3C;AAMD,kDAAkD;AAClD,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CA2BvE,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAerE,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CA2C9D,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CA4BvE,CAAC;AAEF,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAgBrE,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAmB9E,CAAC;AAEF,qEAAqE;AACrE,eAAO,MAAM,6BAA6B,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAoF5E,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAiCD,MAAM,MAAM,+BAA+B,GACvC,cAAc,GACd,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,CAAC;AA8BpB,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,gBAAgB,GAAG,IAAI,GAChC,+BAA+B,CAKjC;AAED,wBAAgB,0CAA0C,CACxD,iBAAiB,EAAE,+BAA+B,GACjD,MAAM,CAER;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,oBAAoB,EAAE,EAC5B,cAAc,SAAI,GACjB,oBAAoB,EAAE,CAkDxB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,CAGjF"}
1
+ {"version":3,"file":"training.d.ts","sourceRoot":"","sources":["../src/training.ts"],"names":[],"mappings":"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"}
package/dist/training.js CHANGED
@@ -2,6 +2,109 @@ import { isActivityDetailType, resolveProviderActivityType, } from "./activity-t
2
2
  export { isActivityDetailType };
3
3
  export const OTHER_ACTIVITY_TYPE = "__other__";
4
4
  export const STRENGTH_ACTIVITY_TYPES = ["strength"];
5
+ /** Compare the structured identity used by strength history series. */
6
+ export function isSameStrengthExercise(left, right) {
7
+ return left.exerciseName === right.exerciseName && left.equipment === right.equipment;
8
+ }
9
+ /** Collision-safe React/list key for a structured strength exercise identity. */
10
+ export function strengthExerciseIdentityKey(identity) {
11
+ return JSON.stringify([identity.exerciseName, identity.equipment]);
12
+ }
13
+ function ambiguousStrengthExerciseNames(identities) {
14
+ const seen = new Set();
15
+ const ambiguous = new Set();
16
+ for (const identity of identities) {
17
+ if (seen.has(identity.exerciseName))
18
+ ambiguous.add(identity.exerciseName);
19
+ seen.add(identity.exerciseName);
20
+ }
21
+ return ambiguous;
22
+ }
23
+ function equipmentDisplayLabel(equipment) {
24
+ const normalizedEquipment = equipment?.trim().toLowerCase();
25
+ if (!normalizedEquipment)
26
+ return "Unspecified Equipment";
27
+ return normalizedEquipment
28
+ .split(/[_\s-]+/)
29
+ .map((word) => `${word.charAt(0).toUpperCase()}${word.slice(1)}`)
30
+ .join(" ");
31
+ }
32
+ function strengthExerciseDisplayLabel(identity, namesRequiringEquipment) {
33
+ if (!namesRequiringEquipment.has(identity.exerciseName))
34
+ return identity.exerciseName;
35
+ return `${identity.exerciseName} (${equipmentDisplayLabel(identity.equipment)})`;
36
+ }
37
+ function losslessEquipmentDiscriminator(equipment) {
38
+ return equipment === null ? "recorded without equipment" : `recorded as “${equipment}”`;
39
+ }
40
+ function groupByLabel(values, labelFor) {
41
+ const groups = new Map();
42
+ for (const value of values) {
43
+ const label = labelFor(value);
44
+ const group = groups.get(label);
45
+ if (group)
46
+ group.push(value);
47
+ else
48
+ groups.set(label, [value]);
49
+ }
50
+ return groups;
51
+ }
52
+ function strengthExercisePresentation(baseLabel, discriminator) {
53
+ return {
54
+ baseLabel,
55
+ discriminator,
56
+ label: discriminator ? `${baseLabel} — ${discriminator}` : baseLabel,
57
+ };
58
+ }
59
+ /**
60
+ * Allocate concise, deterministic labels for strength identities rendered together.
61
+ * Readable labels stay unchanged unless they collide; collisions gain the lossless
62
+ * recorded equipment value, with a stable ordinal only for a second-order collision.
63
+ */
64
+ export function strengthExerciseDisplayLabels(identities) {
65
+ const ambiguousNames = ambiguousStrengthExerciseNames(identities);
66
+ const entries = identities.map((identity) => ({
67
+ identity,
68
+ presentation: strengthExercisePresentation(strengthExerciseDisplayLabel(identity, ambiguousNames), null),
69
+ }));
70
+ const readableGroups = groupByLabel(entries, ({ presentation }) => presentation.label);
71
+ for (const group of readableGroups.values()) {
72
+ if (group.length < 2)
73
+ continue;
74
+ for (const entry of group) {
75
+ entry.presentation = strengthExercisePresentation(entry.presentation.baseLabel, losslessEquipmentDiscriminator(entry.identity.equipment));
76
+ }
77
+ }
78
+ const usedLabels = new Set(entries.map(({ presentation }) => presentation.label));
79
+ const discriminatedGroups = groupByLabel(entries, ({ presentation }) => presentation.label);
80
+ const collisionGroups = [...discriminatedGroups.values()].filter((group) => group.length > 1);
81
+ for (const group of collisionGroups) {
82
+ const identityGroups = groupByLabel(group, ({ identity }) => identity.exerciseName);
83
+ const sortedIdentityGroups = [...identityGroups]
84
+ .map(([identityKey, identityEntries]) => ({ identityKey, identityEntries }))
85
+ .sort((left, right) => left.identityKey.localeCompare(right.identityKey));
86
+ let variant = 1;
87
+ for (const { identityEntries } of sortedIdentityGroups) {
88
+ for (const entry of identityEntries) {
89
+ let discriminator = entry.presentation.discriminator
90
+ ? `${entry.presentation.discriminator} · variant ${variant}`
91
+ : `variant ${variant}`;
92
+ let allocated = strengthExercisePresentation(entry.presentation.baseLabel, discriminator);
93
+ while (usedLabels.has(allocated.label)) {
94
+ variant += 1;
95
+ discriminator = entry.presentation.discriminator
96
+ ? `${entry.presentation.discriminator} · variant ${variant}`
97
+ : `variant ${variant}`;
98
+ allocated = strengthExercisePresentation(entry.presentation.baseLabel, discriminator);
99
+ }
100
+ entry.presentation = allocated;
101
+ usedLabels.add(allocated.label);
102
+ variant += 1;
103
+ }
104
+ }
105
+ }
106
+ return entries.map(({ presentation }) => presentation);
107
+ }
5
108
  // ============================================================
6
109
  // Cycling activity types
7
110
  // ============================================================
@@ -13,7 +116,7 @@ export const STRENGTH_ACTIVITY_TYPES = ["strength"];
13
116
  export const CYCLING_ACTIVITY_TYPES = ["cycling"];
14
117
  /** Check whether an activity type is a cycling variant. */
15
118
  export function isCyclingActivity(activityType) {
16
- return CYCLING_ACTIVITY_TYPES.some((t) => t === activityType);
119
+ return activityType === "cycling";
17
120
  }
18
121
  /** Cadence unit for display based on activity type. */
19
122
  export function cadenceUnit(activityType) {
@@ -1 +1 @@
1
- {"version":3,"file":"training.js","sourceRoot":"","sources":["../src/training.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"training.js","sourceRoot":"","sources":["../src/training.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dofek/training",
3
- "version": "0.1.41",
3
+ "version": "0.1.43",
4
4
  "description": "Training-science calculations for power, load, performance, and workout planning",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -45,8 +45,8 @@
45
45
  "dependencies": {
46
46
  "@openbeta/sandbag": "0.0.55",
47
47
  "zod": "4.4.3",
48
- "@dofek/scoring": "0.1.41",
49
- "@dofek/zones": "0.1.41"
48
+ "@dofek/scoring": "0.1.43",
49
+ "@dofek/zones": "0.1.43"
50
50
  },
51
51
  "scripts": {
52
52
  "build": "tsc",