@demind-inc/core 1.9.0 → 1.9.2

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.
@@ -141,57 +141,46 @@ export interface MealSuggestionPayload {
141
141
  export type ContentType = "workout_plan" | "checklist" | "find_location" | "meal_suggestion" | "transit_route" | "journal_prompts" | "audio_player" | "energy_summary" | "sleep_summary" | "metric_bar" | "meal_plan_week" | (string & {});
142
142
  export type WorkoutType = "gym" | "running" | "walking" | "cycling" | "swimming" | "rowing" | "hiking" | "yoga" | "other";
143
143
  export type DifficultyLevel = "beginner" | "intermediate" | "advanced";
144
- export type ActivityType = "running" | "walking" | "cycling" | "swimming" | "rowing" | "hiking" | "gym" | "yoga" | "other";
145
- export interface HeartRateZoneData {
146
- zone?: string | null;
147
- min_hr_bpm?: number | null;
148
- max_hr_bpm?: number | null;
149
- duration_seconds?: number | null;
150
- }
151
- export interface MovementData {
152
- avg_speed_meters_per_second?: number | null;
153
- max_speed_meters_per_second?: number | null;
154
- avg_pace_minutes_per_kilometer?: number | null;
155
- max_pace_minutes_per_kilometer?: number | null;
156
- avg_cadence_rpm?: number | null;
157
- max_cadence_rpm?: number | null;
158
- }
159
- export interface DistanceData {
160
- distance_meters?: number | null;
161
- steps?: number | null;
162
- elevation_gain_meters?: number | null;
163
- elevation_loss_meters?: number | null;
164
- floors_climbed?: number | null;
165
- }
166
- export interface CaloriesData {
167
- total_burned_calories?: number | null;
168
- net_activity_calories?: number | null;
169
- }
170
- export interface HeartRateData {
171
- avg_hr_bpm?: number | null;
172
- max_hr_bpm?: number | null;
173
- min_hr_bpm?: number | null;
174
- avg_hrv_rmssd?: number | null;
175
- hr_zone_data?: HeartRateZoneData[];
176
- }
177
- export interface ActiveDurationsData {
178
- activity_seconds?: number | null;
179
- low_intensity_seconds?: number | null;
180
- moderate_intensity_seconds?: number | null;
181
- vigorous_intensity_seconds?: number | null;
182
- rest_seconds?: number | null;
183
- }
184
- export interface WorkoutActivityData {
185
- activity_type?: ActivityType | null;
186
- start_time: string;
187
- end_time: string;
188
- movement_data?: MovementData | null;
189
- distance_data?: DistanceData | null;
190
- calories_data?: CaloriesData | null;
191
- heart_rate_data?: HeartRateData | null;
192
- active_durations_data?: ActiveDurationsData | null;
193
- }
194
- export type ContentPayload = WorkoutActivityData | {
144
+ export interface GymExercise {
145
+ name?: string;
146
+ sets?: number;
147
+ reps?: number;
148
+ duration_sec?: number;
149
+ rest_sec?: number;
150
+ }
151
+ export interface NoteExerciseItem {
152
+ type: "note";
153
+ text: string;
154
+ }
155
+ export interface MetaExerciseItem {
156
+ type: "meta";
157
+ estimated_calories: number;
158
+ }
159
+ export interface CardioSegment {
160
+ type?: string;
161
+ duration_min?: number;
162
+ duration_sec?: number;
163
+ distance_km?: number;
164
+ pace?: string;
165
+ }
166
+ export interface CardioPlanItem {
167
+ type: "cardio_plan";
168
+ description?: string;
169
+ segments?: CardioSegment[];
170
+ rounds?: number;
171
+ estimated_calories?: number;
172
+ duration_min?: number;
173
+ notes?: string;
174
+ }
175
+ export type ExerciseItem = GymExercise | NoteExerciseItem | MetaExerciseItem | CardioPlanItem;
176
+ export interface WorkoutPlanPayload {
177
+ plan_title?: string;
178
+ workout_type?: WorkoutType;
179
+ difficulty?: string;
180
+ duration_min?: number;
181
+ exercises?: ExerciseItem[];
182
+ }
183
+ export type ContentPayload = WorkoutPlanPayload | {
195
184
  label: string | null;
196
185
  items: {
197
186
  text: string;
@@ -230,77 +230,60 @@ export type WorkoutType =
230
230
 
231
231
  export type DifficultyLevel = "beginner" | "intermediate" | "advanced";
232
232
 
233
- export type ActivityType =
234
- | "running"
235
- | "walking"
236
- | "cycling"
237
- | "swimming"
238
- | "rowing"
239
- | "hiking"
240
- | "gym"
241
- | "yoga"
242
- | "other";
243
-
244
- // ── Recorded activity ─────────────────────────────────────────────────────────
245
-
246
- export interface HeartRateZoneData {
247
- zone?: string | null;
248
- min_hr_bpm?: number | null;
249
- max_hr_bpm?: number | null;
250
- duration_seconds?: number | null;
233
+ // ── Workout plan (SSE payload types) ─────────────────────────────────────────
234
+
235
+ export interface GymExercise {
236
+ name?: string;
237
+ sets?: number;
238
+ reps?: number;
239
+ duration_sec?: number;
240
+ rest_sec?: number;
251
241
  }
252
242
 
253
- export interface MovementData {
254
- avg_speed_meters_per_second?: number | null;
255
- max_speed_meters_per_second?: number | null;
256
- avg_pace_minutes_per_kilometer?: number | null;
257
- max_pace_minutes_per_kilometer?: number | null;
258
- avg_cadence_rpm?: number | null;
259
- max_cadence_rpm?: number | null;
243
+ export interface NoteExerciseItem {
244
+ type: "note";
245
+ text: string;
260
246
  }
261
247
 
262
- export interface DistanceData {
263
- distance_meters?: number | null;
264
- steps?: number | null;
265
- elevation_gain_meters?: number | null;
266
- elevation_loss_meters?: number | null;
267
- floors_climbed?: number | null;
248
+ export interface MetaExerciseItem {
249
+ type: "meta";
250
+ estimated_calories: number;
268
251
  }
269
252
 
270
- export interface CaloriesData {
271
- total_burned_calories?: number | null;
272
- net_activity_calories?: number | null;
253
+ export interface CardioSegment {
254
+ type?: string;
255
+ duration_min?: number;
256
+ duration_sec?: number;
257
+ distance_km?: number;
258
+ pace?: string;
273
259
  }
274
260
 
275
- export interface HeartRateData {
276
- avg_hr_bpm?: number | null;
277
- max_hr_bpm?: number | null;
278
- min_hr_bpm?: number | null;
279
- avg_hrv_rmssd?: number | null;
280
- hr_zone_data?: HeartRateZoneData[];
261
+ export interface CardioPlanItem {
262
+ type: "cardio_plan";
263
+ description?: string;
264
+ segments?: CardioSegment[];
265
+ rounds?: number;
266
+ estimated_calories?: number;
267
+ duration_min?: number;
268
+ notes?: string;
281
269
  }
282
270
 
283
- export interface ActiveDurationsData {
284
- activity_seconds?: number | null;
285
- low_intensity_seconds?: number | null;
286
- moderate_intensity_seconds?: number | null;
287
- vigorous_intensity_seconds?: number | null;
288
- rest_seconds?: number | null;
289
- }
271
+ export type ExerciseItem =
272
+ | GymExercise
273
+ | NoteExerciseItem
274
+ | MetaExerciseItem
275
+ | CardioPlanItem;
290
276
 
291
- export interface WorkoutActivityData {
292
- activity_type?: ActivityType | null;
293
- start_time: string;
294
- end_time: string;
295
- movement_data?: MovementData | null;
296
- distance_data?: DistanceData | null;
297
- calories_data?: CaloriesData | null;
298
- heart_rate_data?: HeartRateData | null;
299
- active_durations_data?: ActiveDurationsData | null;
277
+ export interface WorkoutPlanPayload {
278
+ plan_title?: string;
279
+ workout_type?: WorkoutType;
280
+ difficulty?: string;
281
+ duration_min?: number;
282
+ exercises?: ExerciseItem[];
300
283
  }
301
284
 
302
285
  export type ContentPayload =
303
- | WorkoutActivityData
286
+ | WorkoutPlanPayload
304
287
  | {
305
288
  // checklist
306
289
  label: string | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@demind-inc/core",
3
- "version": "1.9.0",
3
+ "version": "1.9.2",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {