@nativesquare/soma 0.16.0 → 0.16.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.
- package/dist/client/garmin.d.ts.map +1 -1
- package/dist/client/garmin.js +8 -0
- package/dist/client/garmin.js.map +1 -1
- package/dist/client/healthkit.d.ts +70 -24
- package/dist/client/healthkit.d.ts.map +1 -1
- package/dist/client/healthkit.js +103 -41
- package/dist/client/healthkit.js.map +1 -1
- package/package.json +1 -1
- package/src/client/garmin.ts +13 -0
- package/src/client/healthkit.ts +864 -791
package/dist/client/healthkit.js
CHANGED
|
@@ -15,16 +15,30 @@ const PROVIDER = "APPLE";
|
|
|
15
15
|
* cloud API. This class wraps the transform + ingest pipeline so the host
|
|
16
16
|
* app gets the same ergonomic interface as cloud providers.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
18
|
+
* Because HealthKit permissions are managed in iOS Settings, the server
|
|
19
|
+
* cannot independently verify whether the user has granted or revoked
|
|
20
|
+
* access. The `connect()` / `disconnect()` methods therefore represent
|
|
21
|
+
* assertions by the host app about the state it has observed on-device:
|
|
22
|
+
*
|
|
23
|
+
* - Call {@link SomaHealthKit.connect | connect} once the React Native
|
|
24
|
+
* HealthKit library confirms permissions were granted.
|
|
25
|
+
* - Call {@link SomaHealthKit.disconnect | disconnect} when the user
|
|
26
|
+
* turns HealthKit off in your app's settings, or when you otherwise
|
|
27
|
+
* detect that syncs are no longer returning data.
|
|
28
|
+
*
|
|
29
|
+
* Sync methods refuse to run unless an active connection exists.
|
|
19
30
|
*
|
|
20
31
|
* @example
|
|
21
32
|
* ```ts
|
|
33
|
+
* // Once, after the RN library confirms permissions:
|
|
34
|
+
* await soma.healthkit.connect(ctx, { userId: "user_123" });
|
|
35
|
+
*
|
|
22
36
|
* // Sync workouts received from the React Native client:
|
|
23
37
|
* const result = await soma.healthkit.syncActivities(ctx, {
|
|
24
38
|
* userId: "user_123",
|
|
25
39
|
* workouts: hkWorkouts,
|
|
26
40
|
* });
|
|
27
|
-
* // result: { data: {
|
|
41
|
+
* // result: { data: { activities: 5 }, errors: [] }
|
|
28
42
|
*
|
|
29
43
|
* // Or sync everything at once:
|
|
30
44
|
* await soma.healthkit.syncAll(ctx, {
|
|
@@ -33,6 +47,9 @@ const PROVIDER = "APPLE";
|
|
|
33
47
|
* sleepSessions: [nightSamples],
|
|
34
48
|
* bodySamples: hkBodySamples,
|
|
35
49
|
* });
|
|
50
|
+
*
|
|
51
|
+
* // When the user disables HealthKit in your app:
|
|
52
|
+
* await soma.healthkit.disconnect(ctx, { userId: "user_123" });
|
|
36
53
|
* ```
|
|
37
54
|
*/
|
|
38
55
|
export class SomaHealthKit {
|
|
@@ -40,6 +57,48 @@ export class SomaHealthKit {
|
|
|
40
57
|
constructor(component) {
|
|
41
58
|
this.component = component;
|
|
42
59
|
}
|
|
60
|
+
// ─── Connect / Disconnect ──────────────────────────────────────────────
|
|
61
|
+
/**
|
|
62
|
+
* Assert that HealthKit is connected for this user.
|
|
63
|
+
*
|
|
64
|
+
* Call this once after the React Native HealthKit library confirms
|
|
65
|
+
* permissions were granted. Creates the APPLE connection if missing,
|
|
66
|
+
* or re-activates it if previously disconnected. Idempotent.
|
|
67
|
+
*
|
|
68
|
+
* Because iOS permission grants happen on-device, the server cannot
|
|
69
|
+
* verify them independently — this method records the host app's
|
|
70
|
+
* assertion that the user has authorized HealthKit access.
|
|
71
|
+
*
|
|
72
|
+
* @param ctx - Mutation context from the host app
|
|
73
|
+
* @param args.userId - The host app's user identifier
|
|
74
|
+
* @returns The connection document ID
|
|
75
|
+
*/
|
|
76
|
+
async connect(ctx, args) {
|
|
77
|
+
return (await ctx.runMutation(this.component.public.connect, {
|
|
78
|
+
userId: args.userId,
|
|
79
|
+
provider: PROVIDER,
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Mark the HealthKit connection inactive for this user.
|
|
84
|
+
*
|
|
85
|
+
* Call this when the user disables HealthKit in your app's settings, or
|
|
86
|
+
* when you detect that sync calls are no longer returning data (suggesting
|
|
87
|
+
* the user revoked permissions in iOS Settings). Subsequent sync methods
|
|
88
|
+
* will throw until {@link SomaHealthKit.connect | connect} is called again.
|
|
89
|
+
*
|
|
90
|
+
* Does not delete the connection row or any previously synced data —
|
|
91
|
+
* re-connecting later preserves history.
|
|
92
|
+
*
|
|
93
|
+
* @param ctx - Mutation context from the host app
|
|
94
|
+
* @param args.userId - The host app's user identifier
|
|
95
|
+
*/
|
|
96
|
+
async disconnect(ctx, args) {
|
|
97
|
+
return await ctx.runMutation(this.component.public.disconnect, {
|
|
98
|
+
userId: args.userId,
|
|
99
|
+
provider: PROVIDER,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
43
102
|
// ─── Per-Type Sync Methods ─────────────────────────────────────────────
|
|
44
103
|
/**
|
|
45
104
|
* Sync workout activities from HealthKit.
|
|
@@ -52,7 +111,7 @@ export class SomaHealthKit {
|
|
|
52
111
|
* @param args.workouts - Array of HKWorkout objects from HealthKit
|
|
53
112
|
*/
|
|
54
113
|
async syncActivities(ctx, args) {
|
|
55
|
-
const connectionId = await this.
|
|
114
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
56
115
|
const errors = [];
|
|
57
116
|
let count = 0;
|
|
58
117
|
for (const workout of args.workouts) {
|
|
@@ -74,7 +133,7 @@ export class SomaHealthKit {
|
|
|
74
133
|
}
|
|
75
134
|
}
|
|
76
135
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
77
|
-
return { data: {
|
|
136
|
+
return { data: { activities: count }, errors };
|
|
78
137
|
}
|
|
79
138
|
/**
|
|
80
139
|
* Sync sleep sessions from HealthKit.
|
|
@@ -88,7 +147,7 @@ export class SomaHealthKit {
|
|
|
88
147
|
* @param args.sessions - Array of sessions, each an array of sleep-stage samples
|
|
89
148
|
*/
|
|
90
149
|
async syncSleep(ctx, args) {
|
|
91
|
-
const connectionId = await this.
|
|
150
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
92
151
|
const errors = [];
|
|
93
152
|
let count = 0;
|
|
94
153
|
for (const session of args.sessions) {
|
|
@@ -111,7 +170,7 @@ export class SomaHealthKit {
|
|
|
111
170
|
}
|
|
112
171
|
}
|
|
113
172
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
114
|
-
return { data: {
|
|
173
|
+
return { data: { sleep: count }, errors };
|
|
115
174
|
}
|
|
116
175
|
/**
|
|
117
176
|
* Sync body metrics from HealthKit.
|
|
@@ -126,7 +185,7 @@ export class SomaHealthKit {
|
|
|
126
185
|
* @param args.timeRange - Optional explicit time range; auto-detected from samples if omitted
|
|
127
186
|
*/
|
|
128
187
|
async syncBody(ctx, args) {
|
|
129
|
-
const connectionId = await this.
|
|
188
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
130
189
|
const errors = [];
|
|
131
190
|
let count = 0;
|
|
132
191
|
try {
|
|
@@ -146,7 +205,7 @@ export class SomaHealthKit {
|
|
|
146
205
|
});
|
|
147
206
|
}
|
|
148
207
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
149
|
-
return { data: {
|
|
208
|
+
return { data: { body: count }, errors };
|
|
150
209
|
}
|
|
151
210
|
/**
|
|
152
211
|
* Sync daily activity data from HealthKit quantity samples.
|
|
@@ -160,7 +219,7 @@ export class SomaHealthKit {
|
|
|
160
219
|
* @param args.timeRange - Optional explicit time range; auto-detected from samples if omitted
|
|
161
220
|
*/
|
|
162
221
|
async syncDaily(ctx, args) {
|
|
163
|
-
const connectionId = await this.
|
|
222
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
164
223
|
const errors = [];
|
|
165
224
|
let count = 0;
|
|
166
225
|
try {
|
|
@@ -180,7 +239,7 @@ export class SomaHealthKit {
|
|
|
180
239
|
});
|
|
181
240
|
}
|
|
182
241
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
183
|
-
return { data: {
|
|
242
|
+
return { data: { daily: count }, errors };
|
|
184
243
|
}
|
|
185
244
|
/**
|
|
186
245
|
* Sync daily activity data from HealthKit activity ring summaries.
|
|
@@ -193,7 +252,7 @@ export class SomaHealthKit {
|
|
|
193
252
|
* @param args.summaries - Array of HKActivitySummary from HealthKit
|
|
194
253
|
*/
|
|
195
254
|
async syncDailyFromSummary(ctx, args) {
|
|
196
|
-
const connectionId = await this.
|
|
255
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
197
256
|
const errors = [];
|
|
198
257
|
let count = 0;
|
|
199
258
|
for (const summary of args.summaries) {
|
|
@@ -217,7 +276,7 @@ export class SomaHealthKit {
|
|
|
217
276
|
}
|
|
218
277
|
}
|
|
219
278
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
220
|
-
return { data: {
|
|
279
|
+
return { data: { daily: count }, errors };
|
|
221
280
|
}
|
|
222
281
|
/**
|
|
223
282
|
* Sync nutrition data from HealthKit.
|
|
@@ -231,7 +290,7 @@ export class SomaHealthKit {
|
|
|
231
290
|
* @param args.timeRange - Optional explicit time range; auto-detected from samples if omitted
|
|
232
291
|
*/
|
|
233
292
|
async syncNutrition(ctx, args) {
|
|
234
|
-
const connectionId = await this.
|
|
293
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
235
294
|
const errors = [];
|
|
236
295
|
let count = 0;
|
|
237
296
|
try {
|
|
@@ -251,7 +310,7 @@ export class SomaHealthKit {
|
|
|
251
310
|
});
|
|
252
311
|
}
|
|
253
312
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
254
|
-
return { data: {
|
|
313
|
+
return { data: { nutrition: count }, errors };
|
|
255
314
|
}
|
|
256
315
|
/**
|
|
257
316
|
* Sync menstruation data from HealthKit.
|
|
@@ -265,7 +324,7 @@ export class SomaHealthKit {
|
|
|
265
324
|
* @param args.timeRange - Optional explicit time range; auto-detected from samples if omitted
|
|
266
325
|
*/
|
|
267
326
|
async syncMenstruation(ctx, args) {
|
|
268
|
-
const connectionId = await this.
|
|
327
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
269
328
|
const errors = [];
|
|
270
329
|
let count = 0;
|
|
271
330
|
try {
|
|
@@ -285,7 +344,7 @@ export class SomaHealthKit {
|
|
|
285
344
|
});
|
|
286
345
|
}
|
|
287
346
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
288
|
-
return { data: {
|
|
347
|
+
return { data: { menstruation: count }, errors };
|
|
289
348
|
}
|
|
290
349
|
/**
|
|
291
350
|
* Sync athlete profile from HealthKit.
|
|
@@ -298,7 +357,7 @@ export class SomaHealthKit {
|
|
|
298
357
|
* @param args.characteristics - The HKCharacteristics from HealthKit
|
|
299
358
|
*/
|
|
300
359
|
async syncAthlete(ctx, args) {
|
|
301
|
-
const connectionId = await this.
|
|
360
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
302
361
|
const errors = [];
|
|
303
362
|
let count = 0;
|
|
304
363
|
try {
|
|
@@ -318,7 +377,7 @@ export class SomaHealthKit {
|
|
|
318
377
|
});
|
|
319
378
|
}
|
|
320
379
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
321
|
-
return { data: {
|
|
380
|
+
return { data: { athletes: count }, errors };
|
|
322
381
|
}
|
|
323
382
|
// ─── Orchestrator ────────────────────────────────────────────────────────
|
|
324
383
|
/**
|
|
@@ -351,14 +410,13 @@ export class SomaHealthKit {
|
|
|
351
410
|
* ```
|
|
352
411
|
*/
|
|
353
412
|
async syncAll(ctx, args) {
|
|
354
|
-
|
|
355
|
-
const connectionId = await this.resolveConnection(ctx, args.userId);
|
|
413
|
+
const connectionId = await this.requireActiveConnection(ctx, args.userId);
|
|
356
414
|
const allErrors = [];
|
|
357
|
-
const
|
|
415
|
+
const counts = {};
|
|
358
416
|
const run = async (fn, fallbackType) => {
|
|
359
417
|
try {
|
|
360
418
|
const result = await fn();
|
|
361
|
-
Object.assign(
|
|
419
|
+
Object.assign(counts, result.data);
|
|
362
420
|
allErrors.push(...result.errors);
|
|
363
421
|
}
|
|
364
422
|
catch (err) {
|
|
@@ -395,22 +453,26 @@ export class SomaHealthKit {
|
|
|
395
453
|
}
|
|
396
454
|
// Update lastDataUpdate once at the end
|
|
397
455
|
await this.updateLastDataUpdate(ctx, connectionId);
|
|
398
|
-
return { data:
|
|
456
|
+
return { data: counts, errors: allErrors };
|
|
399
457
|
}
|
|
400
458
|
// ─── Private Helpers ───────────��─────────────────────────────────────────
|
|
401
459
|
/**
|
|
402
|
-
*
|
|
460
|
+
* Load the active APPLE connection for a user, or throw if missing/inactive.
|
|
403
461
|
*
|
|
404
|
-
* HealthKit permissions are managed on-device
|
|
405
|
-
*
|
|
406
|
-
*
|
|
462
|
+
* HealthKit permissions are managed on-device, so the connection state is
|
|
463
|
+
* an assertion made by the host app via {@link SomaHealthKit.connect} and
|
|
464
|
+
* {@link SomaHealthKit.disconnect}. Sync methods refuse to run without an
|
|
465
|
+
* active connection — the host app must explicitly reconnect to resume.
|
|
407
466
|
*/
|
|
408
|
-
async
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
userId,
|
|
412
|
-
|
|
413
|
-
|
|
467
|
+
async requireActiveConnection(ctx, userId) {
|
|
468
|
+
const connection = await ctx.runQuery(this.component.public.getConnectionByProvider, { userId, provider: PROVIDER });
|
|
469
|
+
if (!connection) {
|
|
470
|
+
throw new Error(`No HealthKit connection for user "${userId}". Call soma.healthkit.connect(ctx, { userId }) after the React Native HealthKit library confirms permissions.`);
|
|
471
|
+
}
|
|
472
|
+
if (connection.active === false) {
|
|
473
|
+
throw new Error(`HealthKit connection for user "${userId}" is disconnected. Call soma.healthkit.connect(ctx, { userId }) to re-activate.`);
|
|
474
|
+
}
|
|
475
|
+
return connection._id;
|
|
414
476
|
}
|
|
415
477
|
async updateLastDataUpdate(ctx, connectionId) {
|
|
416
478
|
await ctx.runMutation(this.component.public.updateConnection, {
|
|
@@ -440,7 +502,7 @@ export class SomaHealthKit {
|
|
|
440
502
|
});
|
|
441
503
|
}
|
|
442
504
|
}
|
|
443
|
-
return { data: {
|
|
505
|
+
return { data: { activities: count }, errors };
|
|
444
506
|
}
|
|
445
507
|
async syncSleepInternal(ctx, connectionId, userId, sessions) {
|
|
446
508
|
const errors = [];
|
|
@@ -464,7 +526,7 @@ export class SomaHealthKit {
|
|
|
464
526
|
});
|
|
465
527
|
}
|
|
466
528
|
}
|
|
467
|
-
return { data: {
|
|
529
|
+
return { data: { sleep: count }, errors };
|
|
468
530
|
}
|
|
469
531
|
async syncBodyInternal(ctx, connectionId, userId, samples, timeRange) {
|
|
470
532
|
const errors = [];
|
|
@@ -485,7 +547,7 @@ export class SomaHealthKit {
|
|
|
485
547
|
message: err instanceof Error ? err.message : String(err),
|
|
486
548
|
});
|
|
487
549
|
}
|
|
488
|
-
return { data: {
|
|
550
|
+
return { data: { body: count }, errors };
|
|
489
551
|
}
|
|
490
552
|
async syncDailyInternal(ctx, connectionId, userId, samples, timeRange) {
|
|
491
553
|
const errors = [];
|
|
@@ -506,7 +568,7 @@ export class SomaHealthKit {
|
|
|
506
568
|
message: err instanceof Error ? err.message : String(err),
|
|
507
569
|
});
|
|
508
570
|
}
|
|
509
|
-
return { data: {
|
|
571
|
+
return { data: { daily: count }, errors };
|
|
510
572
|
}
|
|
511
573
|
async syncDailyFromSummaryInternal(ctx, connectionId, userId, summaries) {
|
|
512
574
|
const errors = [];
|
|
@@ -531,7 +593,7 @@ export class SomaHealthKit {
|
|
|
531
593
|
});
|
|
532
594
|
}
|
|
533
595
|
}
|
|
534
|
-
return { data: {
|
|
596
|
+
return { data: { daily: count }, errors };
|
|
535
597
|
}
|
|
536
598
|
async syncNutritionInternal(ctx, connectionId, userId, samples, timeRange) {
|
|
537
599
|
const errors = [];
|
|
@@ -552,7 +614,7 @@ export class SomaHealthKit {
|
|
|
552
614
|
message: err instanceof Error ? err.message : String(err),
|
|
553
615
|
});
|
|
554
616
|
}
|
|
555
|
-
return { data: {
|
|
617
|
+
return { data: { nutrition: count }, errors };
|
|
556
618
|
}
|
|
557
619
|
async syncMenstruationInternal(ctx, connectionId, userId, samples, timeRange) {
|
|
558
620
|
const errors = [];
|
|
@@ -573,7 +635,7 @@ export class SomaHealthKit {
|
|
|
573
635
|
message: err instanceof Error ? err.message : String(err),
|
|
574
636
|
});
|
|
575
637
|
}
|
|
576
|
-
return { data: {
|
|
638
|
+
return { data: { menstruation: count }, errors };
|
|
577
639
|
}
|
|
578
640
|
async syncAthleteInternal(ctx, connectionId, userId, characteristics) {
|
|
579
641
|
const errors = [];
|
|
@@ -594,7 +656,7 @@ export class SomaHealthKit {
|
|
|
594
656
|
message: err instanceof Error ? err.message : String(err),
|
|
595
657
|
});
|
|
596
658
|
}
|
|
597
|
-
return { data: {
|
|
659
|
+
return { data: { athletes: count }, errors };
|
|
598
660
|
}
|
|
599
661
|
}
|
|
600
662
|
//# sourceMappingURL=healthkit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"healthkit.js","sourceRoot":"","sources":["../../src/client/healthkit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"healthkit.js","sourceRoot":"","sources":["../../src/client/healthkit.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/client/garmin.ts
CHANGED
|
@@ -685,6 +685,16 @@ export class SomaGarmin {
|
|
|
685
685
|
return new Response("Invalid JSON body", { status: 400 });
|
|
686
686
|
}
|
|
687
687
|
|
|
688
|
+
const rawItemCount = Array.isArray(payload)
|
|
689
|
+
? payload.length
|
|
690
|
+
: payload && typeof payload === "object"
|
|
691
|
+
? (Object.values(payload)[0] as unknown[] | undefined)
|
|
692
|
+
?.length ?? 0
|
|
693
|
+
: 0;
|
|
694
|
+
console.log(
|
|
695
|
+
`[soma:garmin:webhook] received dataType=${dataType} items=${rawItemCount}`,
|
|
696
|
+
);
|
|
697
|
+
|
|
688
698
|
let result: GarminWebhookActionResult | undefined;
|
|
689
699
|
try {
|
|
690
700
|
result = await ctx.runAction(route.action, { payload, autoIngest });
|
|
@@ -697,6 +707,9 @@ export class SomaGarmin {
|
|
|
697
707
|
}
|
|
698
708
|
|
|
699
709
|
if (result) {
|
|
710
|
+
console.log(
|
|
711
|
+
`[soma:garmin:webhook] processed dataType=${dataType} items=${result.items.length} errors=${result.errors.length}`,
|
|
712
|
+
);
|
|
700
713
|
const event: GarminWebhookEvent = {
|
|
701
714
|
dataType,
|
|
702
715
|
errors: result.errors,
|