@appeeky/expo-healthkit 0.1.0
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/CHANGELOG.md +26 -0
- package/LICENSE +92 -0
- package/README.md +453 -0
- package/android/build.gradle +22 -0
- package/android/src/main/AndroidManifest.xml +74 -0
- package/android/src/main/java/expo/modules/healthkit/ExpoHealthKitModule.kt +228 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectMapping.kt +129 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectNutrition.kt +152 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectRationaleActivity.kt +62 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectService.kt +1054 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectUnits.kt +133 -0
- package/android/src/main/java/expo/modules/healthkit/HealthConnectWorkouts.kt +105 -0
- package/android/src/main/java/expo/modules/healthkit/HealthKitExceptions.kt +30 -0
- package/app.plugin.js +1 -0
- package/build/ExpoHealthKitModule.d.ts +39 -0
- package/build/ExpoHealthKitModule.d.ts.map +1 -0
- package/build/ExpoHealthKitModule.js +35 -0
- package/build/ExpoHealthKitModule.js.map +1 -0
- package/build/ExpoHealthKitModule.web.d.ts +39 -0
- package/build/ExpoHealthKitModule.web.d.ts.map +1 -0
- package/build/ExpoHealthKitModule.web.js +105 -0
- package/build/ExpoHealthKitModule.web.js.map +1 -0
- package/build/dates.d.ts +6 -0
- package/build/dates.d.ts.map +1 -0
- package/build/dates.js +13 -0
- package/build/dates.js.map +1 -0
- package/build/errors.d.ts +9 -0
- package/build/errors.d.ts.map +1 -0
- package/build/errors.js +18 -0
- package/build/errors.js.map +1 -0
- package/build/identifiers.d.ts +418 -0
- package/build/identifiers.d.ts.map +1 -0
- package/build/identifiers.js +402 -0
- package/build/identifiers.js.map +1 -0
- package/build/index.d.ts +454 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +418 -0
- package/build/index.js.map +1 -0
- package/build/types.d.ts +542 -0
- package/build/types.d.ts.map +1 -0
- package/build/types.js +2 -0
- package/build/types.js.map +1 -0
- package/docs/banner.jpg +0 -0
- package/expo-module.config.json +9 -0
- package/ios/ExpoHealthKit.podspec +30 -0
- package/ios/ExpoHealthKitModule.swift +155 -0
- package/ios/HealthKitAdvancedQueries.swift +458 -0
- package/ios/HealthKitExceptions.swift +109 -0
- package/ios/HealthKitIdentifiers.swift +183 -0
- package/ios/HealthKitRecords.swift +214 -0
- package/ios/HealthKitService.swift +626 -0
- package/ios/PrivacyInfo.xcprivacy +14 -0
- package/package.json +105 -0
- package/plugin/build/index.d.ts +30 -0
- package/plugin/build/index.js +138 -0
- package/src/ExpoHealthKitModule.ts +116 -0
- package/src/ExpoHealthKitModule.web.ts +140 -0
- package/src/dates.ts +17 -0
- package/src/errors.ts +22 -0
- package/src/identifiers.ts +494 -0
- package/src/index.ts +563 -0
- package/src/types.ts +625 -0
package/build/index.js
ADDED
|
@@ -0,0 +1,418 @@
|
|
|
1
|
+
import { useEvent } from 'expo';
|
|
2
|
+
import { Platform } from 'react-native';
|
|
3
|
+
import ExpoHealthKitModule from './ExpoHealthKitModule';
|
|
4
|
+
import { fromIso, resolveEndDate, toIso, toOptionalIso } from './dates';
|
|
5
|
+
import { HealthKitUnavailableError } from './errors';
|
|
6
|
+
import { AuthorizationRequestStatus, AuthorizationStatus, BiologicalSex, BloodType, CategoryType, CharacteristicType, ClinicalType, CorrelationType, ElectrocardiogramClassification, ElectrocardiogramSymptomsStatus, ElectrocardiogramType, AudiogramType, ActivitySummaryType, SeriesType, FitzpatrickSkinType, QuantityType, SleepAnalysisValue, StatisticsOption, Unit, UpdateFrequency, WheelchairUse, WorkoutActivityType, WorkoutType, } from './identifiers';
|
|
7
|
+
export * from './identifiers';
|
|
8
|
+
export * from './errors';
|
|
9
|
+
const HK_UNLIMITED = 0;
|
|
10
|
+
function isHealthPlatform() {
|
|
11
|
+
return Platform.OS === 'ios' || Platform.OS === 'android';
|
|
12
|
+
}
|
|
13
|
+
function assertAvailable() {
|
|
14
|
+
if (!isHealthPlatform() || !ExpoHealthKitModule.isHealthDataAvailable()) {
|
|
15
|
+
throw new HealthKitUnavailableError();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function isAvailable() {
|
|
19
|
+
return isHealthPlatform() && ExpoHealthKitModule.isHealthDataAvailable();
|
|
20
|
+
}
|
|
21
|
+
export async function requestAuthorization(options = {}) {
|
|
22
|
+
assertAvailable();
|
|
23
|
+
return ExpoHealthKitModule.requestAuthorization({
|
|
24
|
+
toRead: [...(options.toRead ?? [])],
|
|
25
|
+
toShare: [...(options.toShare ?? [])],
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
export async function getAuthorizationStatus(type) {
|
|
29
|
+
assertAvailable();
|
|
30
|
+
return (await ExpoHealthKitModule.getAuthorizationStatus(type));
|
|
31
|
+
}
|
|
32
|
+
export async function getRequestStatusForAuthorization(options = {}) {
|
|
33
|
+
assertAvailable();
|
|
34
|
+
return (await ExpoHealthKitModule.getRequestStatusForAuthorization({
|
|
35
|
+
toRead: [...(options.toRead ?? [])],
|
|
36
|
+
toShare: [...(options.toShare ?? [])],
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
export async function queryQuantitySamples(options) {
|
|
40
|
+
assertAvailable();
|
|
41
|
+
const samples = await ExpoHealthKitModule.queryQuantitySamples({
|
|
42
|
+
type: options.type,
|
|
43
|
+
unit: options.unit,
|
|
44
|
+
from: toOptionalIso(options.from),
|
|
45
|
+
to: toOptionalIso(options.to),
|
|
46
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
47
|
+
ascending: options.ascending ?? false,
|
|
48
|
+
});
|
|
49
|
+
return samples.map((sample) => ({
|
|
50
|
+
...sample,
|
|
51
|
+
startDate: fromIso(sample.startDate),
|
|
52
|
+
endDate: fromIso(sample.endDate),
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
export async function queryCategorySamples(options) {
|
|
56
|
+
assertAvailable();
|
|
57
|
+
const samples = await ExpoHealthKitModule.queryCategorySamples({
|
|
58
|
+
type: options.type,
|
|
59
|
+
from: toOptionalIso(options.from),
|
|
60
|
+
to: toOptionalIso(options.to),
|
|
61
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
62
|
+
ascending: options.ascending ?? false,
|
|
63
|
+
});
|
|
64
|
+
return samples.map((sample) => ({
|
|
65
|
+
...sample,
|
|
66
|
+
startDate: fromIso(sample.startDate),
|
|
67
|
+
endDate: fromIso(sample.endDate),
|
|
68
|
+
}));
|
|
69
|
+
}
|
|
70
|
+
export async function queryWorkouts(options = {}) {
|
|
71
|
+
assertAvailable();
|
|
72
|
+
const samples = await ExpoHealthKitModule.queryWorkouts({
|
|
73
|
+
from: toOptionalIso(options.from),
|
|
74
|
+
to: toOptionalIso(options.to),
|
|
75
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
76
|
+
ascending: options.ascending ?? false,
|
|
77
|
+
activityType: options.activityType,
|
|
78
|
+
});
|
|
79
|
+
return samples.map((sample) => ({
|
|
80
|
+
...sample,
|
|
81
|
+
startDate: fromIso(sample.startDate),
|
|
82
|
+
endDate: fromIso(sample.endDate),
|
|
83
|
+
workoutActivityType: sample.workoutActivityType,
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
export async function queryElectrocardiograms(options = {}) {
|
|
87
|
+
assertAvailable();
|
|
88
|
+
const samples = await ExpoHealthKitModule.queryElectrocardiograms({
|
|
89
|
+
from: toOptionalIso(options.from),
|
|
90
|
+
to: toOptionalIso(options.to),
|
|
91
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
92
|
+
ascending: options.ascending ?? false,
|
|
93
|
+
includeVoltage: options.includeVoltage ?? false,
|
|
94
|
+
});
|
|
95
|
+
return samples.map((sample) => ({
|
|
96
|
+
...sample,
|
|
97
|
+
startDate: fromIso(sample.startDate),
|
|
98
|
+
endDate: fromIso(sample.endDate),
|
|
99
|
+
classification: sample.classification,
|
|
100
|
+
symptomsStatus: sample.symptomsStatus,
|
|
101
|
+
}));
|
|
102
|
+
}
|
|
103
|
+
export async function queryActivitySummaries(options = {}) {
|
|
104
|
+
assertAvailable();
|
|
105
|
+
return ExpoHealthKitModule.queryActivitySummaries({
|
|
106
|
+
from: toOptionalIso(options.from),
|
|
107
|
+
to: toOptionalIso(options.to),
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
export async function queryClinicalRecords(options) {
|
|
111
|
+
assertAvailable();
|
|
112
|
+
const samples = await ExpoHealthKitModule.queryClinicalRecords({
|
|
113
|
+
type: options.type,
|
|
114
|
+
from: toOptionalIso(options.from),
|
|
115
|
+
to: toOptionalIso(options.to),
|
|
116
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
117
|
+
ascending: options.ascending ?? false,
|
|
118
|
+
});
|
|
119
|
+
return samples.map((sample) => ({
|
|
120
|
+
...sample,
|
|
121
|
+
startDate: fromIso(sample.startDate),
|
|
122
|
+
endDate: fromIso(sample.endDate),
|
|
123
|
+
}));
|
|
124
|
+
}
|
|
125
|
+
export async function queryAudiograms(options = {}) {
|
|
126
|
+
assertAvailable();
|
|
127
|
+
const samples = await ExpoHealthKitModule.queryAudiograms({
|
|
128
|
+
from: toOptionalIso(options.from),
|
|
129
|
+
to: toOptionalIso(options.to),
|
|
130
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
131
|
+
ascending: options.ascending ?? false,
|
|
132
|
+
});
|
|
133
|
+
return samples.map((sample) => ({
|
|
134
|
+
...sample,
|
|
135
|
+
startDate: fromIso(sample.startDate),
|
|
136
|
+
endDate: fromIso(sample.endDate),
|
|
137
|
+
}));
|
|
138
|
+
}
|
|
139
|
+
export async function queryWorkoutRoute(options) {
|
|
140
|
+
assertAvailable();
|
|
141
|
+
const routes = await ExpoHealthKitModule.queryWorkoutRoute({
|
|
142
|
+
workoutUUID: options.workoutUUID,
|
|
143
|
+
});
|
|
144
|
+
return routes.map((route) => ({
|
|
145
|
+
...route,
|
|
146
|
+
startDate: fromIso(route.startDate),
|
|
147
|
+
endDate: fromIso(route.endDate),
|
|
148
|
+
locations: route.locations.map((location) => ({
|
|
149
|
+
...location,
|
|
150
|
+
timestamp: fromIso(location.timestamp),
|
|
151
|
+
})),
|
|
152
|
+
}));
|
|
153
|
+
}
|
|
154
|
+
function mapQuantitySample(sample) {
|
|
155
|
+
return {
|
|
156
|
+
...sample,
|
|
157
|
+
startDate: fromIso(sample.startDate),
|
|
158
|
+
endDate: fromIso(sample.endDate),
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
export async function queryCorrelations(options) {
|
|
162
|
+
assertAvailable();
|
|
163
|
+
const samples = await ExpoHealthKitModule.queryCorrelations({
|
|
164
|
+
type: options.type,
|
|
165
|
+
from: toOptionalIso(options.from),
|
|
166
|
+
to: toOptionalIso(options.to),
|
|
167
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
168
|
+
ascending: options.ascending ?? false,
|
|
169
|
+
});
|
|
170
|
+
return samples.map((sample) => ({
|
|
171
|
+
...sample,
|
|
172
|
+
startDate: fromIso(sample.startDate),
|
|
173
|
+
endDate: fromIso(sample.endDate),
|
|
174
|
+
objects: sample.objects.map(mapQuantitySample),
|
|
175
|
+
}));
|
|
176
|
+
}
|
|
177
|
+
export async function queryHeartbeatSeries(options = {}) {
|
|
178
|
+
assertAvailable();
|
|
179
|
+
const samples = await ExpoHealthKitModule.queryHeartbeatSeries({
|
|
180
|
+
from: toOptionalIso(options.from),
|
|
181
|
+
to: toOptionalIso(options.to),
|
|
182
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
183
|
+
ascending: options.ascending ?? false,
|
|
184
|
+
includeBeats: options.includeBeats ?? true,
|
|
185
|
+
});
|
|
186
|
+
return samples.map((sample) => ({
|
|
187
|
+
...sample,
|
|
188
|
+
startDate: fromIso(sample.startDate),
|
|
189
|
+
endDate: fromIso(sample.endDate),
|
|
190
|
+
}));
|
|
191
|
+
}
|
|
192
|
+
export async function queryStatistics(options) {
|
|
193
|
+
assertAvailable();
|
|
194
|
+
const stats = await ExpoHealthKitModule.queryStatistics({
|
|
195
|
+
type: options.type,
|
|
196
|
+
unit: options.unit,
|
|
197
|
+
from: toOptionalIso(options.from),
|
|
198
|
+
to: toOptionalIso(options.to),
|
|
199
|
+
options: options.options ?? 0,
|
|
200
|
+
});
|
|
201
|
+
return {
|
|
202
|
+
...stats,
|
|
203
|
+
startDate: fromIso(stats.startDate),
|
|
204
|
+
endDate: fromIso(stats.endDate),
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
export async function queryStatisticsCollection(options) {
|
|
208
|
+
assertAvailable();
|
|
209
|
+
const interval = options.interval ?? { day: 1 };
|
|
210
|
+
const results = await ExpoHealthKitModule.queryStatisticsCollection({
|
|
211
|
+
type: options.type,
|
|
212
|
+
unit: options.unit,
|
|
213
|
+
from: toOptionalIso(options.from),
|
|
214
|
+
to: toOptionalIso(options.to),
|
|
215
|
+
options: options.options ?? 0,
|
|
216
|
+
year: interval.year ?? 0,
|
|
217
|
+
month: interval.month ?? 0,
|
|
218
|
+
day: interval.day ?? 0,
|
|
219
|
+
hour: interval.hour ?? 0,
|
|
220
|
+
minute: interval.minute ?? 0,
|
|
221
|
+
second: interval.second ?? 0,
|
|
222
|
+
});
|
|
223
|
+
return results.map((stats) => ({
|
|
224
|
+
...stats,
|
|
225
|
+
startDate: fromIso(stats.startDate),
|
|
226
|
+
endDate: fromIso(stats.endDate),
|
|
227
|
+
}));
|
|
228
|
+
}
|
|
229
|
+
export async function queryAnchored(options) {
|
|
230
|
+
assertAvailable();
|
|
231
|
+
const result = await ExpoHealthKitModule.queryAnchored({
|
|
232
|
+
type: options.type,
|
|
233
|
+
unit: options.unit,
|
|
234
|
+
from: toOptionalIso(options.from),
|
|
235
|
+
to: toOptionalIso(options.to),
|
|
236
|
+
limit: options.limit ?? HK_UNLIMITED,
|
|
237
|
+
anchor: options.anchor ?? undefined,
|
|
238
|
+
});
|
|
239
|
+
return {
|
|
240
|
+
added: result.added.map((sample) => ({
|
|
241
|
+
...sample,
|
|
242
|
+
startDate: fromIso(sample.startDate),
|
|
243
|
+
endDate: fromIso(sample.endDate),
|
|
244
|
+
})),
|
|
245
|
+
deleted: result.deleted,
|
|
246
|
+
anchor: result.anchor ?? null,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
export async function saveQuantitySample(sample) {
|
|
250
|
+
assertAvailable();
|
|
251
|
+
return ExpoHealthKitModule.saveQuantitySample({
|
|
252
|
+
type: sample.type,
|
|
253
|
+
unit: sample.unit,
|
|
254
|
+
value: sample.value,
|
|
255
|
+
startDate: toIso(sample.startDate),
|
|
256
|
+
endDate: resolveEndDate(sample.startDate, sample.endDate),
|
|
257
|
+
metadata: sample.metadata,
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
export async function saveCategorySample(sample) {
|
|
261
|
+
assertAvailable();
|
|
262
|
+
return ExpoHealthKitModule.saveCategorySample({
|
|
263
|
+
type: sample.type,
|
|
264
|
+
value: sample.value,
|
|
265
|
+
startDate: toIso(sample.startDate),
|
|
266
|
+
endDate: resolveEndDate(sample.startDate, sample.endDate),
|
|
267
|
+
metadata: sample.metadata,
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
export async function saveWorkout(workout) {
|
|
271
|
+
assertAvailable();
|
|
272
|
+
return ExpoHealthKitModule.saveWorkout({
|
|
273
|
+
activityType: workout.activityType,
|
|
274
|
+
startDate: toIso(workout.startDate),
|
|
275
|
+
endDate: toIso(workout.endDate),
|
|
276
|
+
energyBurned: workout.energyBurned,
|
|
277
|
+
energyBurnedUnit: workout.energyBurnedUnit,
|
|
278
|
+
distance: workout.distance,
|
|
279
|
+
distanceUnit: workout.distanceUnit,
|
|
280
|
+
metadata: workout.metadata,
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
export async function saveCorrelation(correlation) {
|
|
284
|
+
assertAvailable();
|
|
285
|
+
const startDate = toIso(correlation.startDate);
|
|
286
|
+
const endDate = resolveEndDate(correlation.startDate, correlation.endDate);
|
|
287
|
+
return ExpoHealthKitModule.saveCorrelation({
|
|
288
|
+
type: correlation.type,
|
|
289
|
+
startDate,
|
|
290
|
+
endDate,
|
|
291
|
+
objects: correlation.objects.map((object) => ({
|
|
292
|
+
type: object.type,
|
|
293
|
+
unit: object.unit,
|
|
294
|
+
value: object.value,
|
|
295
|
+
startDate: toIso(object.startDate ?? correlation.startDate),
|
|
296
|
+
endDate: resolveEndDate(object.endDate ?? object.startDate ?? correlation.startDate, object.endDate ?? correlation.endDate),
|
|
297
|
+
metadata: object.metadata,
|
|
298
|
+
})),
|
|
299
|
+
metadata: correlation.metadata,
|
|
300
|
+
});
|
|
301
|
+
}
|
|
302
|
+
export async function deleteObjects(options) {
|
|
303
|
+
assertAvailable();
|
|
304
|
+
return ExpoHealthKitModule.deleteObjects({
|
|
305
|
+
uuid: options.uuid,
|
|
306
|
+
type: options.type,
|
|
307
|
+
from: toOptionalIso(options.from),
|
|
308
|
+
to: toOptionalIso(options.to),
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
export async function getBiologicalSex() {
|
|
312
|
+
assertAvailable();
|
|
313
|
+
return (await ExpoHealthKitModule.getBiologicalSex());
|
|
314
|
+
}
|
|
315
|
+
export async function getBloodType() {
|
|
316
|
+
assertAvailable();
|
|
317
|
+
return (await ExpoHealthKitModule.getBloodType());
|
|
318
|
+
}
|
|
319
|
+
export async function getDateOfBirth() {
|
|
320
|
+
assertAvailable();
|
|
321
|
+
const value = await ExpoHealthKitModule.getDateOfBirth();
|
|
322
|
+
return value ? fromIso(value) : null;
|
|
323
|
+
}
|
|
324
|
+
export async function getFitzpatrickSkinType() {
|
|
325
|
+
assertAvailable();
|
|
326
|
+
return (await ExpoHealthKitModule.getFitzpatrickSkinType());
|
|
327
|
+
}
|
|
328
|
+
export async function getWheelchairUse() {
|
|
329
|
+
assertAvailable();
|
|
330
|
+
return (await ExpoHealthKitModule.getWheelchairUse());
|
|
331
|
+
}
|
|
332
|
+
export async function enableBackgroundDelivery(type, frequency) {
|
|
333
|
+
assertAvailable();
|
|
334
|
+
return ExpoHealthKitModule.enableBackgroundDelivery(type, frequency);
|
|
335
|
+
}
|
|
336
|
+
export async function disableBackgroundDelivery(type) {
|
|
337
|
+
assertAvailable();
|
|
338
|
+
return ExpoHealthKitModule.disableBackgroundDelivery(type);
|
|
339
|
+
}
|
|
340
|
+
export async function disableAllBackgroundDelivery() {
|
|
341
|
+
assertAvailable();
|
|
342
|
+
return ExpoHealthKitModule.disableAllBackgroundDelivery();
|
|
343
|
+
}
|
|
344
|
+
export async function observe(types) {
|
|
345
|
+
assertAvailable();
|
|
346
|
+
await ExpoHealthKitModule.observeTypes([...types]);
|
|
347
|
+
}
|
|
348
|
+
export async function clearObservers() {
|
|
349
|
+
assertAvailable();
|
|
350
|
+
await ExpoHealthKitModule.clearObserverQueries();
|
|
351
|
+
}
|
|
352
|
+
export function addUpdateListener(listener) {
|
|
353
|
+
return ExpoHealthKitModule.addListener('onUpdate', listener);
|
|
354
|
+
}
|
|
355
|
+
export function useHealthKitUpdates() {
|
|
356
|
+
return useEvent(ExpoHealthKitModule, 'onUpdate');
|
|
357
|
+
}
|
|
358
|
+
const HealthKit = {
|
|
359
|
+
isAvailable,
|
|
360
|
+
requestAuthorization,
|
|
361
|
+
getAuthorizationStatus,
|
|
362
|
+
getRequestStatusForAuthorization,
|
|
363
|
+
queryQuantitySamples,
|
|
364
|
+
queryCategorySamples,
|
|
365
|
+
queryWorkouts,
|
|
366
|
+
queryElectrocardiograms,
|
|
367
|
+
queryActivitySummaries,
|
|
368
|
+
queryClinicalRecords,
|
|
369
|
+
queryAudiograms,
|
|
370
|
+
queryWorkoutRoute,
|
|
371
|
+
queryCorrelations,
|
|
372
|
+
queryHeartbeatSeries,
|
|
373
|
+
queryStatistics,
|
|
374
|
+
queryStatisticsCollection,
|
|
375
|
+
queryAnchored,
|
|
376
|
+
saveQuantitySample,
|
|
377
|
+
saveCategorySample,
|
|
378
|
+
saveWorkout,
|
|
379
|
+
saveCorrelation,
|
|
380
|
+
deleteObjects,
|
|
381
|
+
getBiologicalSex,
|
|
382
|
+
getBloodType,
|
|
383
|
+
getDateOfBirth,
|
|
384
|
+
getFitzpatrickSkinType,
|
|
385
|
+
getWheelchairUse,
|
|
386
|
+
enableBackgroundDelivery,
|
|
387
|
+
disableBackgroundDelivery,
|
|
388
|
+
disableAllBackgroundDelivery,
|
|
389
|
+
observe,
|
|
390
|
+
clearObservers,
|
|
391
|
+
addUpdateListener,
|
|
392
|
+
useHealthKitUpdates,
|
|
393
|
+
QuantityType,
|
|
394
|
+
CategoryType,
|
|
395
|
+
CharacteristicType,
|
|
396
|
+
CorrelationType,
|
|
397
|
+
WorkoutType,
|
|
398
|
+
ElectrocardiogramType,
|
|
399
|
+
AudiogramType,
|
|
400
|
+
SeriesType,
|
|
401
|
+
ActivitySummaryType,
|
|
402
|
+
ClinicalType,
|
|
403
|
+
Unit,
|
|
404
|
+
WorkoutActivityType,
|
|
405
|
+
SleepAnalysisValue,
|
|
406
|
+
UpdateFrequency,
|
|
407
|
+
StatisticsOption,
|
|
408
|
+
AuthorizationStatus,
|
|
409
|
+
AuthorizationRequestStatus,
|
|
410
|
+
BiologicalSex,
|
|
411
|
+
BloodType,
|
|
412
|
+
FitzpatrickSkinType,
|
|
413
|
+
WheelchairUse,
|
|
414
|
+
ElectrocardiogramClassification,
|
|
415
|
+
ElectrocardiogramSymptomsStatus,
|
|
416
|
+
};
|
|
417
|
+
export default HealthKit;
|
|
418
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import { useEvent } from 'expo';\nimport { Platform } from 'react-native';\n\nimport ExpoHealthKitModule from './ExpoHealthKitModule';\nimport { fromIso, resolveEndDate, toIso, toOptionalIso } from './dates';\nimport { HealthKitUnavailableError } from './errors';\nimport {\n AuthorizationRequestStatus,\n AuthorizationStatus,\n BiologicalSex,\n BloodType,\n CategoryType,\n CharacteristicType,\n ClinicalType,\n CorrelationType,\n ElectrocardiogramClassification,\n ElectrocardiogramSymptomsStatus,\n ElectrocardiogramType,\n AudiogramType,\n ActivitySummaryType,\n SeriesType,\n FitzpatrickSkinType,\n QuantityType,\n SleepAnalysisValue,\n StatisticsOption,\n Unit,\n UpdateFrequency,\n WheelchairUse,\n WorkoutActivityType,\n WorkoutType,\n} from './identifiers';\nimport type {\n AnchoredQueryOptions,\n AnchoredQueryResult,\n AuthorizationOptions,\n CategorySample,\n CategorySampleInput,\n ClinicalRecord,\n ClinicalRecordQueryOptions,\n Correlation,\n CorrelationInput,\n CorrelationQueryOptions,\n DeleteObjectsOptions,\n ElectrocardiogramQueryOptions,\n ElectrocardiogramSample,\n ActivitySummary,\n ActivitySummaryQueryOptions,\n AudiogramSample,\n DateRangeQueryOptions,\n HeartbeatSeriesQueryOptions,\n HeartbeatSeriesSample,\n QuantityQueryOptions,\n QuantitySample,\n SampleQueryOptions,\n QuantitySampleInput,\n Statistics,\n StatisticsCollectionQueryOptions,\n StatisticsQueryOptions,\n WorkoutInput,\n WorkoutQueryOptions,\n WorkoutRoute,\n WorkoutRouteQueryOptions,\n WorkoutSample,\n} from './types';\n\nexport * from './identifiers';\nexport * from './errors';\nexport type * from './types';\n\nconst HK_UNLIMITED = 0;\n\nfunction isHealthPlatform(): boolean {\n return Platform.OS === 'ios' || Platform.OS === 'android';\n}\n\nfunction assertAvailable(): void {\n if (!isHealthPlatform() || !ExpoHealthKitModule.isHealthDataAvailable()) {\n throw new HealthKitUnavailableError();\n }\n}\n\nexport function isAvailable(): boolean {\n return isHealthPlatform() && ExpoHealthKitModule.isHealthDataAvailable();\n}\n\nexport async function requestAuthorization(options: AuthorizationOptions = {}): Promise<boolean> {\n assertAvailable();\n return ExpoHealthKitModule.requestAuthorization({\n toRead: [...(options.toRead ?? [])],\n toShare: [...(options.toShare ?? [])],\n });\n}\n\nexport async function getAuthorizationStatus(type: string): Promise<AuthorizationStatus> {\n assertAvailable();\n return (await ExpoHealthKitModule.getAuthorizationStatus(type)) as AuthorizationStatus;\n}\n\nexport async function getRequestStatusForAuthorization(\n options: AuthorizationOptions = {}\n): Promise<AuthorizationRequestStatus> {\n assertAvailable();\n return (await ExpoHealthKitModule.getRequestStatusForAuthorization({\n toRead: [...(options.toRead ?? [])],\n toShare: [...(options.toShare ?? [])],\n })) as AuthorizationRequestStatus;\n}\n\nexport async function queryQuantitySamples(\n options: QuantityQueryOptions\n): Promise<QuantitySample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryQuantitySamples({\n type: options.type,\n unit: options.unit,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n }));\n}\n\nexport async function queryCategorySamples(options: SampleQueryOptions): Promise<CategorySample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryCategorySamples({\n type: options.type,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n }));\n}\n\nexport async function queryWorkouts(options: WorkoutQueryOptions = {}): Promise<WorkoutSample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryWorkouts({\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n activityType: options.activityType,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n workoutActivityType: sample.workoutActivityType as WorkoutSample['workoutActivityType'],\n }));\n}\n\nexport async function queryElectrocardiograms(\n options: ElectrocardiogramQueryOptions = {}\n): Promise<ElectrocardiogramSample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryElectrocardiograms({\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n includeVoltage: options.includeVoltage ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n classification: sample.classification as ElectrocardiogramSample['classification'],\n symptomsStatus: sample.symptomsStatus as ElectrocardiogramSample['symptomsStatus'],\n }));\n}\n\nexport async function queryActivitySummaries(\n options: ActivitySummaryQueryOptions = {}\n): Promise<ActivitySummary[]> {\n assertAvailable();\n return ExpoHealthKitModule.queryActivitySummaries({\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n });\n}\n\nexport async function queryClinicalRecords(\n options: ClinicalRecordQueryOptions\n): Promise<ClinicalRecord[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryClinicalRecords({\n type: options.type,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n }));\n}\n\nexport async function queryAudiograms(\n options: DateRangeQueryOptions = {}\n): Promise<AudiogramSample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryAudiograms({\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n }));\n}\n\nexport async function queryWorkoutRoute(\n options: WorkoutRouteQueryOptions\n): Promise<WorkoutRoute[]> {\n assertAvailable();\n const routes = await ExpoHealthKitModule.queryWorkoutRoute({\n workoutUUID: options.workoutUUID,\n });\n\n return routes.map((route) => ({\n ...route,\n startDate: fromIso(route.startDate),\n endDate: fromIso(route.endDate),\n locations: route.locations.map((location) => ({\n ...location,\n timestamp: fromIso(location.timestamp),\n })),\n }));\n}\n\nfunction mapQuantitySample(sample: {\n uuid: string;\n type: string;\n startDate: string;\n endDate: string;\n value: number;\n unit: string;\n sourceName?: string;\n sourceId?: string;\n metadata?: Record<string, string>;\n}) {\n return {\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n };\n}\n\nexport async function queryCorrelations(options: CorrelationQueryOptions): Promise<Correlation[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryCorrelations({\n type: options.type,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n objects: sample.objects.map(mapQuantitySample),\n }));\n}\n\nexport async function queryHeartbeatSeries(\n options: HeartbeatSeriesQueryOptions = {}\n): Promise<HeartbeatSeriesSample[]> {\n assertAvailable();\n const samples = await ExpoHealthKitModule.queryHeartbeatSeries({\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n ascending: options.ascending ?? false,\n includeBeats: options.includeBeats ?? true,\n });\n\n return samples.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n }));\n}\n\nexport async function queryStatistics(options: StatisticsQueryOptions): Promise<Statistics> {\n assertAvailable();\n const stats = await ExpoHealthKitModule.queryStatistics({\n type: options.type,\n unit: options.unit,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n options: options.options ?? 0,\n });\n\n return {\n ...stats,\n startDate: fromIso(stats.startDate),\n endDate: fromIso(stats.endDate),\n };\n}\n\nexport async function queryStatisticsCollection(\n options: StatisticsCollectionQueryOptions\n): Promise<Statistics[]> {\n assertAvailable();\n const interval = options.interval ?? { day: 1 };\n const results = await ExpoHealthKitModule.queryStatisticsCollection({\n type: options.type,\n unit: options.unit,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n options: options.options ?? 0,\n year: interval.year ?? 0,\n month: interval.month ?? 0,\n day: interval.day ?? 0,\n hour: interval.hour ?? 0,\n minute: interval.minute ?? 0,\n second: interval.second ?? 0,\n });\n\n return results.map((stats) => ({\n ...stats,\n startDate: fromIso(stats.startDate),\n endDate: fromIso(stats.endDate),\n }));\n}\n\nexport async function queryAnchored(options: AnchoredQueryOptions): Promise<AnchoredQueryResult> {\n assertAvailable();\n const result = await ExpoHealthKitModule.queryAnchored({\n type: options.type,\n unit: options.unit,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n limit: options.limit ?? HK_UNLIMITED,\n anchor: options.anchor ?? undefined,\n });\n\n return {\n added: result.added.map((sample) => ({\n ...sample,\n startDate: fromIso(sample.startDate),\n endDate: fromIso(sample.endDate),\n })),\n deleted: result.deleted,\n anchor: result.anchor ?? null,\n };\n}\n\nexport async function saveQuantitySample(sample: QuantitySampleInput): Promise<string> {\n assertAvailable();\n return ExpoHealthKitModule.saveQuantitySample({\n type: sample.type,\n unit: sample.unit,\n value: sample.value,\n startDate: toIso(sample.startDate),\n endDate: resolveEndDate(sample.startDate, sample.endDate),\n metadata: sample.metadata,\n });\n}\n\nexport async function saveCategorySample(sample: CategorySampleInput): Promise<string> {\n assertAvailable();\n return ExpoHealthKitModule.saveCategorySample({\n type: sample.type,\n value: sample.value,\n startDate: toIso(sample.startDate),\n endDate: resolveEndDate(sample.startDate, sample.endDate),\n metadata: sample.metadata,\n });\n}\n\nexport async function saveWorkout(workout: WorkoutInput): Promise<string> {\n assertAvailable();\n return ExpoHealthKitModule.saveWorkout({\n activityType: workout.activityType,\n startDate: toIso(workout.startDate),\n endDate: toIso(workout.endDate),\n energyBurned: workout.energyBurned,\n energyBurnedUnit: workout.energyBurnedUnit,\n distance: workout.distance,\n distanceUnit: workout.distanceUnit,\n metadata: workout.metadata,\n });\n}\n\nexport async function saveCorrelation(correlation: CorrelationInput): Promise<string> {\n assertAvailable();\n const startDate = toIso(correlation.startDate);\n const endDate = resolveEndDate(correlation.startDate, correlation.endDate);\n return ExpoHealthKitModule.saveCorrelation({\n type: correlation.type,\n startDate,\n endDate,\n objects: correlation.objects.map((object) => ({\n type: object.type,\n unit: object.unit,\n value: object.value,\n startDate: toIso(object.startDate ?? correlation.startDate),\n endDate: resolveEndDate(\n object.endDate ?? object.startDate ?? correlation.startDate,\n object.endDate ?? correlation.endDate\n ),\n metadata: object.metadata,\n })),\n metadata: correlation.metadata,\n });\n}\n\nexport async function deleteObjects(options: DeleteObjectsOptions): Promise<number> {\n assertAvailable();\n return ExpoHealthKitModule.deleteObjects({\n uuid: options.uuid,\n type: options.type,\n from: toOptionalIso(options.from),\n to: toOptionalIso(options.to),\n });\n}\n\nexport async function getBiologicalSex(): Promise<BiologicalSex> {\n assertAvailable();\n return (await ExpoHealthKitModule.getBiologicalSex()) as BiologicalSex;\n}\n\nexport async function getBloodType(): Promise<BloodType> {\n assertAvailable();\n return (await ExpoHealthKitModule.getBloodType()) as BloodType;\n}\n\nexport async function getDateOfBirth(): Promise<Date | null> {\n assertAvailable();\n const value = await ExpoHealthKitModule.getDateOfBirth();\n return value ? fromIso(value) : null;\n}\n\nexport async function getFitzpatrickSkinType(): Promise<FitzpatrickSkinType> {\n assertAvailable();\n return (await ExpoHealthKitModule.getFitzpatrickSkinType()) as FitzpatrickSkinType;\n}\n\nexport async function getWheelchairUse(): Promise<WheelchairUse> {\n assertAvailable();\n return (await ExpoHealthKitModule.getWheelchairUse()) as WheelchairUse;\n}\n\nexport async function enableBackgroundDelivery(\n type: string,\n frequency: UpdateFrequency\n): Promise<boolean> {\n assertAvailable();\n return ExpoHealthKitModule.enableBackgroundDelivery(type, frequency);\n}\n\nexport async function disableBackgroundDelivery(type: string): Promise<boolean> {\n assertAvailable();\n return ExpoHealthKitModule.disableBackgroundDelivery(type);\n}\n\nexport async function disableAllBackgroundDelivery(): Promise<boolean> {\n assertAvailable();\n return ExpoHealthKitModule.disableAllBackgroundDelivery();\n}\n\nexport async function observe(types: readonly string[]): Promise<void> {\n assertAvailable();\n await ExpoHealthKitModule.observeTypes([...types]);\n}\n\nexport async function clearObservers(): Promise<void> {\n assertAvailable();\n await ExpoHealthKitModule.clearObserverQueries();\n}\n\nexport function addUpdateListener(listener: (event: { type: string }) => void): { remove(): void } {\n return ExpoHealthKitModule.addListener('onUpdate', listener);\n}\n\nexport function useHealthKitUpdates() {\n return useEvent(ExpoHealthKitModule, 'onUpdate');\n}\n\nconst HealthKit = {\n isAvailable,\n requestAuthorization,\n getAuthorizationStatus,\n getRequestStatusForAuthorization,\n queryQuantitySamples,\n queryCategorySamples,\n queryWorkouts,\n queryElectrocardiograms,\n queryActivitySummaries,\n queryClinicalRecords,\n queryAudiograms,\n queryWorkoutRoute,\n queryCorrelations,\n queryHeartbeatSeries,\n queryStatistics,\n queryStatisticsCollection,\n queryAnchored,\n saveQuantitySample,\n saveCategorySample,\n saveWorkout,\n saveCorrelation,\n deleteObjects,\n getBiologicalSex,\n getBloodType,\n getDateOfBirth,\n getFitzpatrickSkinType,\n getWheelchairUse,\n enableBackgroundDelivery,\n disableBackgroundDelivery,\n disableAllBackgroundDelivery,\n observe,\n clearObservers,\n addUpdateListener,\n useHealthKitUpdates,\n QuantityType,\n CategoryType,\n CharacteristicType,\n CorrelationType,\n WorkoutType,\n ElectrocardiogramType,\n AudiogramType,\n SeriesType,\n ActivitySummaryType,\n ClinicalType,\n Unit,\n WorkoutActivityType,\n SleepAnalysisValue,\n UpdateFrequency,\n StatisticsOption,\n AuthorizationStatus,\n AuthorizationRequestStatus,\n BiologicalSex,\n BloodType,\n FitzpatrickSkinType,\n WheelchairUse,\n ElectrocardiogramClassification,\n ElectrocardiogramSymptomsStatus,\n};\n\nexport default HealthKit;\n"]}
|