react-native-rook-sdk 0.2.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/LICENSE +20 -0
- package/README.md +31 -0
- package/android/build.gradle +95 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +3 -0
- package/android/src/main/AndroidManifestNew.xml +38 -0
- package/android/src/main/java/com/rooksdk/HealthConnectPermissionsActivity.kt +45 -0
- package/android/src/main/java/com/rooksdk/RookDateTime.kt +12 -0
- package/android/src/main/java/com/rooksdk/RookSdkModule.kt +575 -0
- package/android/src/main/java/com/rooksdk/RookSdkPackage.kt +17 -0
- package/android/src/main/res/drawable/ic_health_connect.xml +19 -0
- package/android/src/main/res/layout/activity_health_connect_permissions.xml +15 -0
- package/android/src/main/res/values/themes.xml +3 -0
- package/ios/RookSdk.h +13 -0
- package/ios/RookSdk.mm +568 -0
- package/lib/commonjs/context/RookSyncGateContext.js +19 -0
- package/lib/commonjs/context/RookSyncGateContext.js.map +1 -0
- package/lib/commonjs/context/RookSyncGateProvider.js +70 -0
- package/lib/commonjs/context/RookSyncGateProvider.js.map +1 -0
- package/lib/commonjs/context/RookSyncGateReducer.js +39 -0
- package/lib/commonjs/context/RookSyncGateReducer.js.map +1 -0
- package/lib/commonjs/context/RookSyncGateTypes.js +2 -0
- package/lib/commonjs/context/RookSyncGateTypes.js.map +1 -0
- package/lib/commonjs/context/index.js +14 -0
- package/lib/commonjs/context/index.js.map +1 -0
- package/lib/commonjs/hooks/index.js +48 -0
- package/lib/commonjs/hooks/index.js.map +1 -0
- package/lib/commonjs/hooks/useRookAppleHealth.js +143 -0
- package/lib/commonjs/hooks/useRookAppleHealth.js.map +1 -0
- package/lib/commonjs/hooks/useRookConfiguration.js +90 -0
- package/lib/commonjs/hooks/useRookConfiguration.js.map +1 -0
- package/lib/commonjs/hooks/useRookEvents.js +239 -0
- package/lib/commonjs/hooks/useRookEvents.js.map +1 -0
- package/lib/commonjs/hooks/useRookHealthConnect.js +124 -0
- package/lib/commonjs/hooks/useRookHealthConnect.js.map +1 -0
- package/lib/commonjs/hooks/useRookPermissions.js +59 -0
- package/lib/commonjs/hooks/useRookPermissions.js.map +1 -0
- package/lib/commonjs/hooks/useRookSummaries.js +110 -0
- package/lib/commonjs/hooks/useRookSummaries.js.map +1 -0
- package/lib/commonjs/index.js +28 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/utils/credentials.js +11 -0
- package/lib/commonjs/utils/credentials.js.map +1 -0
- package/lib/commonjs/utils/getRookModule.js +21 -0
- package/lib/commonjs/utils/getRookModule.js.map +1 -0
- package/lib/commonjs/utils/index.js +63 -0
- package/lib/commonjs/utils/index.js.map +1 -0
- package/lib/commonjs/utils/isModuleReady.js +13 -0
- package/lib/commonjs/utils/isModuleReady.js.map +1 -0
- package/lib/commonjs/utils/isRunningOnAndroid.js +15 -0
- package/lib/commonjs/utils/isRunningOnAndroid.js.map +1 -0
- package/lib/commonjs/utils/isRunningOniOS.js +15 -0
- package/lib/commonjs/utils/isRunningOniOS.js.map +1 -0
- package/lib/commonjs/utils/isValidDate.js +14 -0
- package/lib/commonjs/utils/isValidDate.js.map +1 -0
- package/lib/commonjs/utils/loggerDescription.js +24 -0
- package/lib/commonjs/utils/loggerDescription.js.map +1 -0
- package/lib/commonjs/utils/packageInfo.js +13 -0
- package/lib/commonjs/utils/packageInfo.js.map +1 -0
- package/lib/module/context/RookSyncGateContext.js +11 -0
- package/lib/module/context/RookSyncGateContext.js.map +1 -0
- package/lib/module/context/RookSyncGateProvider.js +60 -0
- package/lib/module/context/RookSyncGateProvider.js.map +1 -0
- package/lib/module/context/RookSyncGateReducer.js +32 -0
- package/lib/module/context/RookSyncGateReducer.js.map +1 -0
- package/lib/module/context/RookSyncGateTypes.js +2 -0
- package/lib/module/context/RookSyncGateTypes.js.map +1 -0
- package/lib/module/context/index.js +2 -0
- package/lib/module/context/index.js.map +1 -0
- package/lib/module/hooks/index.js +7 -0
- package/lib/module/hooks/index.js.map +1 -0
- package/lib/module/hooks/useRookAppleHealth.js +135 -0
- package/lib/module/hooks/useRookAppleHealth.js.map +1 -0
- package/lib/module/hooks/useRookConfiguration.js +83 -0
- package/lib/module/hooks/useRookConfiguration.js.map +1 -0
- package/lib/module/hooks/useRookEvents.js +231 -0
- package/lib/module/hooks/useRookEvents.js.map +1 -0
- package/lib/module/hooks/useRookHealthConnect.js +116 -0
- package/lib/module/hooks/useRookHealthConnect.js.map +1 -0
- package/lib/module/hooks/useRookPermissions.js +52 -0
- package/lib/module/hooks/useRookPermissions.js.map +1 -0
- package/lib/module/hooks/useRookSummaries.js +102 -0
- package/lib/module/hooks/useRookSummaries.js.map +1 -0
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/utils/credentials.js +5 -0
- package/lib/module/utils/credentials.js.map +1 -0
- package/lib/module/utils/getRookModule.js +14 -0
- package/lib/module/utils/getRookModule.js.map +1 -0
- package/lib/module/utils/index.js +9 -0
- package/lib/module/utils/index.js.map +1 -0
- package/lib/module/utils/isModuleReady.js +6 -0
- package/lib/module/utils/isModuleReady.js.map +1 -0
- package/lib/module/utils/isRunningOnAndroid.js +8 -0
- package/lib/module/utils/isRunningOnAndroid.js.map +1 -0
- package/lib/module/utils/isRunningOniOS.js +8 -0
- package/lib/module/utils/isRunningOniOS.js.map +1 -0
- package/lib/module/utils/isValidDate.js +7 -0
- package/lib/module/utils/isValidDate.js.map +1 -0
- package/lib/module/utils/loggerDescription.js +17 -0
- package/lib/module/utils/loggerDescription.js.map +1 -0
- package/lib/module/utils/packageInfo.js +7 -0
- package/lib/module/utils/packageInfo.js.map +1 -0
- package/lib/typescript/src/context/RookSyncGateContext.d.ts +11 -0
- package/lib/typescript/src/context/RookSyncGateContext.d.ts.map +1 -0
- package/lib/typescript/src/context/RookSyncGateProvider.d.ts +11 -0
- package/lib/typescript/src/context/RookSyncGateProvider.d.ts.map +1 -0
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts +3 -0
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts.map +1 -0
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts +26 -0
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts.map +1 -0
- package/lib/typescript/src/context/index.d.ts +2 -0
- package/lib/typescript/src/context/index.d.ts.map +1 -0
- package/lib/typescript/src/hooks/index.d.ts +7 -0
- package/lib/typescript/src/hooks/index.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts +12 -0
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts +12 -0
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookEvents.d.ts +17 -0
- package/lib/typescript/src/hooks/useRookEvents.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookHealthConnect.d.ts +12 -0
- package/lib/typescript/src/hooks/useRookHealthConnect.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookPermissions.d.ts +12 -0
- package/lib/typescript/src/hooks/useRookPermissions.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookSummaries.d.ts +15 -0
- package/lib/typescript/src/hooks/useRookSummaries.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +3 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/utils/credentials.d.ts +5 -0
- package/lib/typescript/src/utils/credentials.d.ts.map +1 -0
- package/lib/typescript/src/utils/getRookModule.d.ts +2 -0
- package/lib/typescript/src/utils/getRookModule.d.ts.map +1 -0
- package/lib/typescript/src/utils/index.d.ts +9 -0
- package/lib/typescript/src/utils/index.d.ts.map +1 -0
- package/lib/typescript/src/utils/isModuleReady.d.ts +2 -0
- package/lib/typescript/src/utils/isModuleReady.d.ts.map +1 -0
- package/lib/typescript/src/utils/isRunningOnAndroid.d.ts +3 -0
- package/lib/typescript/src/utils/isRunningOnAndroid.d.ts.map +1 -0
- package/lib/typescript/src/utils/isRunningOniOS.d.ts +2 -0
- package/lib/typescript/src/utils/isRunningOniOS.d.ts.map +1 -0
- package/lib/typescript/src/utils/isValidDate.d.ts +2 -0
- package/lib/typescript/src/utils/isValidDate.d.ts.map +1 -0
- package/lib/typescript/src/utils/loggerDescription.d.ts +10 -0
- package/lib/typescript/src/utils/loggerDescription.d.ts.map +1 -0
- package/lib/typescript/src/utils/packageInfo.d.ts +6 -0
- package/lib/typescript/src/utils/packageInfo.d.ts.map +1 -0
- package/package.json +170 -0
- package/react-native-rook-sdk.podspec +43 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
2
|
+
import { useEffect, useRef } from 'react';
|
|
3
|
+
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
4
|
+
import { getRookModule, isModuleReady, isRunningOnAndroid, loggerDescription } from '../utils';
|
|
5
|
+
import { useRookLogger } from 'react-native-rook-logger-react-native';
|
|
6
|
+
export const useRookHealthConnect = () => {
|
|
7
|
+
const rookSync = useRef(getRookModule());
|
|
8
|
+
const {
|
|
9
|
+
state: {
|
|
10
|
+
ready,
|
|
11
|
+
clientUUID,
|
|
12
|
+
environment,
|
|
13
|
+
userID
|
|
14
|
+
}
|
|
15
|
+
} = useRookSyncGateContext();
|
|
16
|
+
const {
|
|
17
|
+
initLogger,
|
|
18
|
+
logBoundary
|
|
19
|
+
} = useRookLogger();
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
if (ready) {
|
|
22
|
+
initLogger(loggerDescription({
|
|
23
|
+
clientUUID,
|
|
24
|
+
environment,
|
|
25
|
+
userID
|
|
26
|
+
}));
|
|
27
|
+
}
|
|
28
|
+
}, [ready]);
|
|
29
|
+
const isStepsAvailable = async () => {
|
|
30
|
+
isRunningOnAndroid();
|
|
31
|
+
isModuleReady(ready);
|
|
32
|
+
const response = await rookSync.current.isStepsAvailable();
|
|
33
|
+
return response;
|
|
34
|
+
};
|
|
35
|
+
const hasStepsPermissions = async () => {
|
|
36
|
+
isRunningOnAndroid();
|
|
37
|
+
isModuleReady(ready);
|
|
38
|
+
const response = await rookSync.current.hasStepsPermissions();
|
|
39
|
+
return response;
|
|
40
|
+
};
|
|
41
|
+
const requestStepsPermissions = async () => {
|
|
42
|
+
isRunningOnAndroid();
|
|
43
|
+
isModuleReady(ready);
|
|
44
|
+
const response = await rookSync.current.requestStepsPermissions();
|
|
45
|
+
return response;
|
|
46
|
+
};
|
|
47
|
+
const startSteps = async () => {
|
|
48
|
+
isRunningOnAndroid();
|
|
49
|
+
isModuleReady(ready);
|
|
50
|
+
const response = await rookSync.current.startSteps();
|
|
51
|
+
return response;
|
|
52
|
+
};
|
|
53
|
+
const stopSteps = async () => {
|
|
54
|
+
isRunningOnAndroid();
|
|
55
|
+
isModuleReady(ready);
|
|
56
|
+
const response = await rookSync.current.stopSteps();
|
|
57
|
+
return response;
|
|
58
|
+
};
|
|
59
|
+
const isStepsActive = async () => {
|
|
60
|
+
isRunningOnAndroid();
|
|
61
|
+
isModuleReady(ready);
|
|
62
|
+
const response = await rookSync.current.isStepsActive();
|
|
63
|
+
return response;
|
|
64
|
+
};
|
|
65
|
+
const getTodaySteps = async () => {
|
|
66
|
+
isRunningOnAndroid();
|
|
67
|
+
isModuleReady(ready);
|
|
68
|
+
const response = await rookSync.current.getTodaySteps();
|
|
69
|
+
return response;
|
|
70
|
+
};
|
|
71
|
+
const observeTodaySteps = async () => {
|
|
72
|
+
isRunningOnAndroid();
|
|
73
|
+
isModuleReady(ready);
|
|
74
|
+
const response = await rookSync.current.observeTodaySteps();
|
|
75
|
+
return response;
|
|
76
|
+
};
|
|
77
|
+
return {
|
|
78
|
+
ready,
|
|
79
|
+
isStepsAvailable,
|
|
80
|
+
hasStepsPermissions,
|
|
81
|
+
requestStepsPermissions,
|
|
82
|
+
startSteps: () => logBoundary({
|
|
83
|
+
fun: startSteps,
|
|
84
|
+
logSuccess: true,
|
|
85
|
+
logType: {
|
|
86
|
+
date: new Date().toISOString(),
|
|
87
|
+
type: 'transmission',
|
|
88
|
+
event: 'other'
|
|
89
|
+
},
|
|
90
|
+
dataType: 'enable_steps'
|
|
91
|
+
}),
|
|
92
|
+
stopSteps: () => logBoundary({
|
|
93
|
+
fun: stopSteps,
|
|
94
|
+
logSuccess: true,
|
|
95
|
+
logType: {
|
|
96
|
+
date: new Date().toISOString(),
|
|
97
|
+
type: 'transmission',
|
|
98
|
+
event: 'other'
|
|
99
|
+
},
|
|
100
|
+
dataType: 'disable_steps'
|
|
101
|
+
}),
|
|
102
|
+
isStepsActive,
|
|
103
|
+
getTodaySteps,
|
|
104
|
+
observeTodaySteps: () => logBoundary({
|
|
105
|
+
fun: observeTodaySteps,
|
|
106
|
+
logSuccess: true,
|
|
107
|
+
logType: {
|
|
108
|
+
date: new Date().toISOString(),
|
|
109
|
+
type: 'transmission',
|
|
110
|
+
event: 'other'
|
|
111
|
+
},
|
|
112
|
+
dataType: 'enable_steps'
|
|
113
|
+
})
|
|
114
|
+
};
|
|
115
|
+
};
|
|
116
|
+
//# sourceMappingURL=useRookHealthConnect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOnAndroid","loggerDescription","useRookLogger","useRookHealthConnect","rookSync","state","ready","clientUUID","environment","userID","initLogger","logBoundary","isStepsAvailable","response","current","hasStepsPermissions","requestStepsPermissions","startSteps","stopSteps","isStepsActive","getTodaySteps","observeTodaySteps","fun","logSuccess","logType","date","Date","toISOString","type","event","dataType"],"sourceRoot":"../../../src","sources":["hooks/useRookHealthConnect.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { useRef } from 'react';
|
|
2
|
+
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
3
|
+
import { getRookModule, isModuleReady, isRunningOniOS, packageInfo, isRunningOnAndroid } from '../utils';
|
|
4
|
+
export const useRookPermissions = () => {
|
|
5
|
+
const rookSync = useRef(getRookModule());
|
|
6
|
+
const {
|
|
7
|
+
state: {
|
|
8
|
+
ready
|
|
9
|
+
}
|
|
10
|
+
} = useRookSyncGateContext();
|
|
11
|
+
const checkAvailability = () => {
|
|
12
|
+
isModuleReady(ready);
|
|
13
|
+
if (packageInfo.isAndroid) return rookSync.current.checkAvailability();
|
|
14
|
+
return new Promise(resolve => resolve('INSTALLED'));
|
|
15
|
+
};
|
|
16
|
+
const healthConnectHasPermissions = async () => {
|
|
17
|
+
isRunningOnAndroid();
|
|
18
|
+
isModuleReady(ready);
|
|
19
|
+
return rookSync.current.checkPermissions('ALL');
|
|
20
|
+
};
|
|
21
|
+
const requestAllAppleHealthPermissions = async () => {
|
|
22
|
+
isRunningOniOS();
|
|
23
|
+
isModuleReady(ready);
|
|
24
|
+
await rookSync.current.requestAllPermissions();
|
|
25
|
+
};
|
|
26
|
+
const requestAllHealthConnectPermissions = async () => {
|
|
27
|
+
isRunningOnAndroid();
|
|
28
|
+
isModuleReady(ready);
|
|
29
|
+
await rookSync.current.requestPermissions('ALL');
|
|
30
|
+
};
|
|
31
|
+
const requestAllPermissions = () => {
|
|
32
|
+
isModuleReady(ready);
|
|
33
|
+
if (packageInfo.isAndroid) return rookSync.current.requestPermissions('ALL');
|
|
34
|
+
return rookSync.current.requestAllPermissions();
|
|
35
|
+
};
|
|
36
|
+
const openHealthConnectSettings = async () => {
|
|
37
|
+
isRunningOnAndroid();
|
|
38
|
+
isModuleReady(ready);
|
|
39
|
+
const result = await rookSync.current.openHealthConnectSettings();
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
ready,
|
|
44
|
+
checkAvailability,
|
|
45
|
+
requestAllAppleHealthPermissions,
|
|
46
|
+
requestAllHealthConnectPermissions,
|
|
47
|
+
requestAllPermissions,
|
|
48
|
+
openHealthConnectSettings,
|
|
49
|
+
healthConnectHasPermissions
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=useRookPermissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useRef","useRookSyncGateContext","getRookModule","isModuleReady","isRunningOniOS","packageInfo","isRunningOnAndroid","useRookPermissions","rookSync","state","ready","checkAvailability","isAndroid","current","Promise","resolve","healthConnectHasPermissions","checkPermissions","requestAllAppleHealthPermissions","requestAllPermissions","requestAllHealthConnectPermissions","requestPermissions","openHealthConnectSettings","result"],"sourceRoot":"../../../src","sources":["hooks/useRookPermissions.ts"],"mappings":"AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,SAASC,sBAAsB,QAAQ,gCAAgC;AACvE,SACEC,aAAa,EACbC,aAAa,EACbC,cAAc,EACdC,WAAW,EACXC,kBAAkB,QACb,UAAU;AAOjB,OAAO,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EACtC,MAAMC,QAAQ,GAAGR,MAAM,CAACE,aAAa,CAAC,CAAC,CAAC;EACxC,MAAM;IACJO,KAAK,EAAE;MAAEC;IAAM;EACjB,CAAC,GAAGT,sBAAsB,CAAC,CAAC;EAE5B,MAAMU,iBAAiB,GAAGA,CAAA,KAA0C;IAClER,aAAa,CAACO,KAAK,CAAC;IAEpB,IAAIL,WAAW,CAACO,SAAS,EAAE,OAAOJ,QAAQ,CAACK,OAAO,CAACF,iBAAiB,CAAC,CAAC;IAEtE,OAAO,IAAIG,OAAO,CAA6BC,OAAO,IACpDA,OAAO,CAAC,WAAW,CACrB,CAAC;EACH,CAAC;EAED,MAAMC,2BAA2B,GAAG,MAAAA,CAAA,KAA8B;IAChEV,kBAAkB,CAAC,CAAC;IACpBH,aAAa,CAACO,KAAK,CAAC;IAEpB,OAAOF,QAAQ,CAACK,OAAO,CAACI,gBAAgB,CAAC,KAAK,CAAC;EACjD,CAAC;EAED,MAAMC,gCAAgC,GAAG,MAAAA,CAAA,KAA2B;IAClEd,cAAc,CAAC,CAAC;IAChBD,aAAa,CAACO,KAAK,CAAC;IAEpB,MAAMF,QAAQ,CAACK,OAAO,CAACM,qBAAqB,CAAC,CAAC;EAChD,CAAC;EAED,MAAMC,kCAAkC,GAAG,MAAAA,CAAA,KAA2B;IACpEd,kBAAkB,CAAC,CAAC;IACpBH,aAAa,CAACO,KAAK,CAAC;IAEpB,MAAMF,QAAQ,CAACK,OAAO,CAACQ,kBAAkB,CAAC,KAAK,CAAC;EAClD,CAAC;EAED,MAAMF,qBAAqB,GAAGA,CAAA,KAAqB;IACjDhB,aAAa,CAACO,KAAK,CAAC;IAEpB,IAAIL,WAAW,CAACO,SAAS,EACvB,OAAOJ,QAAQ,CAACK,OAAO,CAACQ,kBAAkB,CAAC,KAAK,CAAC;IAEnD,OAAOb,QAAQ,CAACK,OAAO,CAACM,qBAAqB,CAAC,CAAC;EACjD,CAAC;EAED,MAAMG,yBAAyB,GAAG,MAAAA,CAAA,KAA2B;IAC3DhB,kBAAkB,CAAC,CAAC;IACpBH,aAAa,CAACO,KAAK,CAAC;IAEpB,MAAMa,MAAM,GAAG,MAAMf,QAAQ,CAACK,OAAO,CAACS,yBAAyB,CAAC,CAAC;IACjE,OAAOC,MAAM;EACf,CAAC;EAED,OAAO;IACLb,KAAK;IACLC,iBAAiB;IACjBO,gCAAgC;IAChCE,kCAAkC;IAClCD,qBAAqB;IACrBG,yBAAyB;IACzBN;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/* eslint-disable react-hooks/exhaustive-deps */
|
|
2
|
+
import { useEffect, useRef } from 'react';
|
|
3
|
+
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
4
|
+
import { getRookModule, isModuleReady, isValidDate, loggerDescription, packageInfo } from '../utils';
|
|
5
|
+
import { useRookLogger } from 'react-native-rook-logger-react-native';
|
|
6
|
+
export const useRookSummaries = () => {
|
|
7
|
+
const rookSync = useRef(getRookModule());
|
|
8
|
+
const {
|
|
9
|
+
state: {
|
|
10
|
+
ready,
|
|
11
|
+
clientUUID,
|
|
12
|
+
environment,
|
|
13
|
+
userID
|
|
14
|
+
}
|
|
15
|
+
} = useRookSyncGateContext();
|
|
16
|
+
const {
|
|
17
|
+
initLogger,
|
|
18
|
+
logBoundary
|
|
19
|
+
} = useRookLogger();
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
if (!ready) return;
|
|
22
|
+
initLogger(loggerDescription({
|
|
23
|
+
clientUUID,
|
|
24
|
+
environment,
|
|
25
|
+
userID
|
|
26
|
+
}));
|
|
27
|
+
}, [ready]);
|
|
28
|
+
const syncYesterdaySummaries = () => {
|
|
29
|
+
isModuleReady(ready);
|
|
30
|
+
return rookSync.current.syncYesterdaySummaries();
|
|
31
|
+
};
|
|
32
|
+
const shouldSyncFor = props => {
|
|
33
|
+
isModuleReady(ready);
|
|
34
|
+
const {
|
|
35
|
+
type,
|
|
36
|
+
date
|
|
37
|
+
} = props;
|
|
38
|
+
if (!packageInfo.isAndroid) {
|
|
39
|
+
return new Promise(resolve => resolve(true));
|
|
40
|
+
}
|
|
41
|
+
return rookSync.current.shouldSyncFor(type, date);
|
|
42
|
+
};
|
|
43
|
+
const syncSleepSummary = date => {
|
|
44
|
+
isModuleReady(ready);
|
|
45
|
+
isValidDate(date);
|
|
46
|
+
return rookSync.current.syncSleepSummary(date);
|
|
47
|
+
};
|
|
48
|
+
const syncPhysicalSummary = date => {
|
|
49
|
+
isModuleReady(ready);
|
|
50
|
+
isValidDate(date);
|
|
51
|
+
return rookSync.current.syncPhysicalSummary(date);
|
|
52
|
+
};
|
|
53
|
+
const syncBodySummary = date => {
|
|
54
|
+
isModuleReady(ready);
|
|
55
|
+
isValidDate(date);
|
|
56
|
+
return rookSync.current.syncBodySummary(date);
|
|
57
|
+
};
|
|
58
|
+
const reSyncFailedSummaries = () => {
|
|
59
|
+
isModuleReady(ready);
|
|
60
|
+
return rookSync.current.syncPendingSummaries();
|
|
61
|
+
};
|
|
62
|
+
return {
|
|
63
|
+
ready,
|
|
64
|
+
shouldSyncFor,
|
|
65
|
+
syncYesterdaySummaries,
|
|
66
|
+
reSyncFailedSummaries,
|
|
67
|
+
syncSleepSummary: date => logBoundary({
|
|
68
|
+
fun: syncSleepSummary,
|
|
69
|
+
logSuccess: true,
|
|
70
|
+
payload: date,
|
|
71
|
+
logType: {
|
|
72
|
+
date,
|
|
73
|
+
type: 'transmission',
|
|
74
|
+
event: 'send'
|
|
75
|
+
},
|
|
76
|
+
dataType: 'sleep_summary'
|
|
77
|
+
}),
|
|
78
|
+
syncPhysicalSummary: date => logBoundary({
|
|
79
|
+
fun: syncPhysicalSummary,
|
|
80
|
+
logSuccess: true,
|
|
81
|
+
payload: date,
|
|
82
|
+
logType: {
|
|
83
|
+
date,
|
|
84
|
+
type: 'transmission',
|
|
85
|
+
event: 'send'
|
|
86
|
+
},
|
|
87
|
+
dataType: 'physical_summary'
|
|
88
|
+
}),
|
|
89
|
+
syncBodySummary: date => logBoundary({
|
|
90
|
+
fun: syncBodySummary,
|
|
91
|
+
logSuccess: true,
|
|
92
|
+
payload: date,
|
|
93
|
+
logType: {
|
|
94
|
+
date,
|
|
95
|
+
type: 'transmission',
|
|
96
|
+
event: 'send'
|
|
97
|
+
},
|
|
98
|
+
dataType: 'body_summary'
|
|
99
|
+
})
|
|
100
|
+
};
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=useRookSummaries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useRookSyncGateContext","getRookModule","isModuleReady","isValidDate","loggerDescription","packageInfo","useRookLogger","useRookSummaries","rookSync","state","ready","clientUUID","environment","userID","initLogger","logBoundary","syncYesterdaySummaries","current","shouldSyncFor","props","type","date","isAndroid","Promise","resolve","syncSleepSummary","syncPhysicalSummary","syncBodySummary","reSyncFailedSummaries","syncPendingSummaries","fun","logSuccess","payload","logType","event","dataType"],"sourceRoot":"../../../src","sources":["hooks/useRookSummaries.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,WAAW","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["credentials","uuid","pdw"],"sourceRoot":"../../../src","sources":["utils/credentials.ts"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAG;EACzBC,IAAI,EAAE,sCAAsC;EAC5CC,GAAG,EAAE;AACP,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { NativeModules, Platform } from 'react-native';
|
|
2
|
+
export const getRookModule = () => {
|
|
3
|
+
const LINKING_ERROR = `The package 'react-native-rook-sdk' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
|
|
4
|
+
ios: "- You have run 'pod install'\n",
|
|
5
|
+
default: ''
|
|
6
|
+
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
|
|
7
|
+
const RookSdk = NativeModules.RookSdk ? NativeModules.RookSdk : new Proxy({}, {
|
|
8
|
+
get() {
|
|
9
|
+
throw new Error(LINKING_ERROR);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return RookSdk;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=getRookModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","getRookModule","LINKING_ERROR","select","ios","default","RookSdk","Proxy","get","Error"],"sourceRoot":"../../../src","sources":["utils/getRookModule.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEtD,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAM;EACjC,MAAMC,aAAa,GAChB,gFAA+E,GAChFF,QAAQ,CAACG,MAAM,CAAC;IAAEC,GAAG,EAAE,gCAAgC;IAAEC,OAAO,EAAE;EAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;EAEjC,MAAMC,OAAO,GAAGP,aAAa,CAACO,OAAO,GACjCP,aAAa,CAACO,OAAO,GACrB,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;IACEC,GAAGA,CAAA,EAAG;MACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;IAChC;EACF,CACF,CAAC;EAEL,OAAOI,OAAO;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { credentials } from './credentials';
|
|
2
|
+
export { default as isRunningOnAndroid } from './isRunningOnAndroid';
|
|
3
|
+
export { getRookModule } from './getRookModule';
|
|
4
|
+
export { isModuleReady } from './isModuleReady';
|
|
5
|
+
export { isRunningOniOS } from './isRunningOniOS';
|
|
6
|
+
export { isValidDate } from './isValidDate';
|
|
7
|
+
export { loggerDescription } from './loggerDescription';
|
|
8
|
+
export { packageInfo } from './packageInfo';
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["credentials","default","isRunningOnAndroid","getRookModule","isModuleReady","isRunningOniOS","isValidDate","loggerDescription","packageInfo"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":"AAAA,SAASA,WAAW,QAAQ,eAAe;AAC3C,SAASC,OAAO,IAAIC,kBAAkB,QAAQ,sBAAsB;AACpE,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,cAAc,QAAQ,kBAAkB;AACjD,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,iBAAiB,QAAQ,qBAAqB;AACvD,SAASC,WAAW,QAAQ,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isModuleReady","ready","Error"],"sourceRoot":"../../../src","sources":["utils/isModuleReady.ts"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAIC,KAAc,IAAW;EACrD,IAAI,CAACA,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CACb,8EACF,CAAC;EACH;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
const ERROR_MESSAGE = 'This method is only available on Android because it is not supported on iOS';
|
|
3
|
+
export default (() => {
|
|
4
|
+
if (Platform.OS !== 'android') {
|
|
5
|
+
throw new Error(ERROR_MESSAGE);
|
|
6
|
+
}
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=isRunningOnAndroid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","ERROR_MESSAGE","OS","Error"],"sourceRoot":"../../../src","sources":["utils/isRunningOnAndroid.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,aAAa,GACjB,6EAA6E;AAE/E,gBAAe,MAAM;EACnB,IAAID,QAAQ,CAACE,EAAE,KAAK,SAAS,EAAE;IAC7B,MAAM,IAAIC,KAAK,CAACF,aAAa,CAAC;EAChC;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Platform } from 'react-native';
|
|
2
|
+
const ERROR_MESSAGE = 'This method is only available on iOS because it is not supported on Android';
|
|
3
|
+
export const isRunningOniOS = () => {
|
|
4
|
+
if (Platform.OS !== 'ios') {
|
|
5
|
+
throw new Error(ERROR_MESSAGE);
|
|
6
|
+
}
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=isRunningOniOS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","ERROR_MESSAGE","isRunningOniOS","OS","Error"],"sourceRoot":"../../../src","sources":["utils/isRunningOniOS.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,aAAa,GACjB,6EAA6E;AAE/E,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAClC,IAAIF,QAAQ,CAACG,EAAE,KAAK,KAAK,EAAE;IACzB,MAAM,IAAIC,KAAK,CAACH,aAAa,CAAC;EAChC;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isValidDate","date","regex","test","Error"],"sourceRoot":"../../../src","sources":["utils/isValidDate.ts"],"mappings":"AAAA,OAAO,MAAMA,WAAW,GAAIC,IAAY,IAAK;EAC3C,MAAMC,KAAK,GAAG,qBAAqB;EAEnC,IAAI,CAACA,KAAK,CAACC,IAAI,CAACF,IAAI,CAAC,EAAE;IACrB,MAAM,IAAIG,KAAK,CACZ,mBAAkBH,IAAK,oCAC1B,CAAC;EACH;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { packageInfo } from './packageInfo';
|
|
2
|
+
export const loggerDescription = ({
|
|
3
|
+
clientUUID,
|
|
4
|
+
environment,
|
|
5
|
+
userID
|
|
6
|
+
}) => {
|
|
7
|
+
return {
|
|
8
|
+
clientUUID,
|
|
9
|
+
environment: packageInfo.debug ? 'development' : environment,
|
|
10
|
+
userID,
|
|
11
|
+
sdkInfo: {
|
|
12
|
+
framework: 'ReactNative',
|
|
13
|
+
version: packageInfo.version
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=loggerDescription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["packageInfo","loggerDescription","clientUUID","environment","userID","debug","sdkInfo","framework","version"],"sourceRoot":"../../../src","sources":["utils/loggerDescription.ts"],"mappings":"AAEA,SAASA,WAAW,QAAQ,eAAe;AAQ3C,OAAO,MAAMC,iBAAiB,GAAGA,CAAC;EAChCC,UAAU;EACVC,WAAW;EACXC;AACW,CAAC,KAAK;EACjB,OAAO;IACLF,UAAU;IACVC,WAAW,EAAEH,WAAW,CAACK,KAAK,GAAG,aAAa,GAAGF,WAAW;IAC5DC,MAAM;IACNE,OAAO,EAAE;MACPC,SAAS,EAAE,aAAa;MACxBC,OAAO,EAAER,WAAW,CAACQ;IACvB;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","packageInfo","version","isAndroid","OS","debug"],"sourceRoot":"../../../src","sources":["utils/packageInfo.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,OAAO,MAAMC,WAAW,GAAG;EACzBC,OAAO,EAAE,OAAO;EAChBC,SAAS,EAAEH,QAAQ,CAACI,EAAE,KAAK,SAAS;EACpCC,KAAK,EAAE;AACT,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Dispatch } from 'react';
|
|
2
|
+
import type { RookSyncGateState, Action } from './RookSyncGateTypes';
|
|
3
|
+
export declare const RookSyncGateContext: import("react").Context<{
|
|
4
|
+
state: RookSyncGateState;
|
|
5
|
+
dispatch: Dispatch<Action>;
|
|
6
|
+
} | undefined>;
|
|
7
|
+
export declare const useRookSyncGateContext: () => {
|
|
8
|
+
state: RookSyncGateState;
|
|
9
|
+
dispatch: Dispatch<Action>;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=RookSyncGateContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RookSyncGateContext.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateContext.ts"],"names":[],"mappings":"AACA,OAAO,EAA6B,KAAK,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAErE,eAAO,MAAM,mBAAmB;WACrB,iBAAiB;cAAY,SAAS,MAAM,CAAC;cAC5C,CAAC;AAEb,eAAO,MAAM,sBAAsB;WAHxB,iBAAiB;cAAY,SAAS,MAAM,CAAC;CAWvD,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ReactNode, type FC } from 'react';
|
|
2
|
+
import type { Environment } from './RookSyncGateTypes';
|
|
3
|
+
type RookSyncGateProviderProps = {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
environment: Environment;
|
|
6
|
+
clientUUID: string;
|
|
7
|
+
password: string;
|
|
8
|
+
};
|
|
9
|
+
declare const RookSyncGateProvider: FC<RookSyncGateProviderProps>;
|
|
10
|
+
export default RookSyncGateProvider;
|
|
11
|
+
//# sourceMappingURL=RookSyncGateProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RookSyncGateProvider.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateProvider.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,KAAK,SAAS,EAAc,KAAK,EAAE,EAAa,MAAM,OAAO,CAAC;AAE9E,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,qBAAqB,CAAC;AAI1E,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAUF,QAAA,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAqCvD,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RookSyncGateReducer.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateReducer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAErE,eAAO,MAAM,mBAAmB,UACvB,iBAAiB,UAChB,MAAM,KACb,iBAeF,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export type Environment = 'sandbox' | 'production';
|
|
2
|
+
type RookSyncGateState = {
|
|
3
|
+
clientUUID: string;
|
|
4
|
+
environment: Environment;
|
|
5
|
+
password: string;
|
|
6
|
+
ready: boolean;
|
|
7
|
+
userID: string;
|
|
8
|
+
};
|
|
9
|
+
type Action = {
|
|
10
|
+
type: 'SET_READY';
|
|
11
|
+
ready: boolean;
|
|
12
|
+
} | {
|
|
13
|
+
type: 'SET_ROOK_ENVIRONMENT';
|
|
14
|
+
environment: Environment;
|
|
15
|
+
} | {
|
|
16
|
+
type: 'SET_CLIENT_UUID';
|
|
17
|
+
clientUUID: string;
|
|
18
|
+
} | {
|
|
19
|
+
type: 'SET_USER_ID';
|
|
20
|
+
userID: string;
|
|
21
|
+
} | {
|
|
22
|
+
type: 'SET_PASSWORD';
|
|
23
|
+
password: string;
|
|
24
|
+
};
|
|
25
|
+
export type { RookSyncGateState, Action };
|
|
26
|
+
//# sourceMappingURL=RookSyncGateTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RookSyncGateTypes.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateTypes.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC;AAEnD,KAAK,iBAAiB,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,MAAM,GACP;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACrC;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,WAAW,EAAE,WAAW,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/context/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { useRookAppleHealth } from './useRookAppleHealth';
|
|
2
|
+
export { useRookConfiguration } from './useRookConfiguration';
|
|
3
|
+
export { useRookEvents } from './useRookEvents';
|
|
4
|
+
export { useRookHealthConnect } from './useRookHealthConnect';
|
|
5
|
+
export { useRookPermissions } from './useRookPermissions';
|
|
6
|
+
export { useRookSummaries } from './useRookSummaries';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const useRookAppleHealth: () => {
|
|
2
|
+
ready: boolean;
|
|
3
|
+
getTodaySteps: () => Promise<void>;
|
|
4
|
+
getTodayActiveCaloriesBurned: () => Promise<void>;
|
|
5
|
+
enableBackgroundForSummaries: () => Promise<boolean>;
|
|
6
|
+
disableBackgroundForSummaries: () => Promise<boolean>;
|
|
7
|
+
enableBackgroundForEvents: () => Promise<boolean>;
|
|
8
|
+
disableBackgroundForEvents: () => Promise<boolean>;
|
|
9
|
+
enableBackGroundForSteps: () => Promise<boolean>;
|
|
10
|
+
enableBackGroundForCalories: () => Promise<boolean>;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useRookAppleHealth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRookAppleHealth.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAppleHealth.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,kBAAkB;;yBAyCH,QAAQ,IAAI,CAAC;wCAOE,QAAQ,IAAI,CAAC;;;;;;;CA4FvD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const useRookConfiguration: () => {
|
|
2
|
+
ready: boolean;
|
|
3
|
+
clearUserID: () => Promise<boolean>;
|
|
4
|
+
disableAppleHealthSync: () => Promise<boolean>;
|
|
5
|
+
enableAppleHealthSync: () => Promise<boolean>;
|
|
6
|
+
getUserID: () => Promise<string>;
|
|
7
|
+
isAppleHealthSyncEnabled: () => Promise<boolean>;
|
|
8
|
+
removeUserFromRook: () => Promise<boolean>;
|
|
9
|
+
syncUserTimeZone: () => Promise<boolean>;
|
|
10
|
+
updateUserID: (userID: string) => Promise<boolean>;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useRookConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRookConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookConfiguration.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB;;uBAyBD,QAAQ,OAAO,CAAC;kCAkCL,QAAQ,OAAO,CAAC;iCARjB,QAAQ,OAAO,CAAC;qBA5C5B,QAAQ,MAAM,CAAC;oCA4DA,QAAQ,OAAO,CAAC;8BA1BtB,QAAQ,OAAO,CAAC;4BAPlB,QAAQ,OAAO,CAAC;2BAlBf,MAAM,KAAG,QAAQ,OAAO,CAAC;CAsE9D,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const useRookEvents: () => {
|
|
2
|
+
ready: boolean;
|
|
3
|
+
syncYesterdayEvents: () => Promise<void>;
|
|
4
|
+
reSyncFailedEvents: () => Promise<boolean>;
|
|
5
|
+
syncBodyHeartRateEvent: (date: string) => Promise<boolean>;
|
|
6
|
+
syncPhysicalHeartRateEvent: (date: string) => Promise<boolean>;
|
|
7
|
+
syncBodyOxygenationEvent: (date: string) => Promise<boolean>;
|
|
8
|
+
syncPhysicalOxygenationEvent: (date: string) => Promise<boolean>;
|
|
9
|
+
syncTrainingEvent: (date: string) => Promise<boolean>;
|
|
10
|
+
syncTemperatureEvent: (date: string) => Promise<boolean>;
|
|
11
|
+
syncBloodPressureEvent: (date: string) => Promise<boolean>;
|
|
12
|
+
syncBloodGlucoseEvent: (date: string) => Promise<boolean>;
|
|
13
|
+
syncBodyMetricsEvent: (date: string) => Promise<boolean>;
|
|
14
|
+
syncHydrationEvents: (payload: string) => Promise<boolean>;
|
|
15
|
+
syncNutritionEvents: (payload: string) => Promise<boolean>;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useRookEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRookEvents.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookEvents.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,aAAa;;+BAcQ,QAAQ,IAAI,CAAC;8BAqGR,QAAQ,OAAO,CAAC;mCAcpB,MAAM;uCAYF,MAAM;qCAYR,MAAM;yCAYF,MAAM;8BAYjB,MAAM;iCAYH,MAAM;mCAYJ,MAAM;kCAYP,MAAM;iCAYP,MAAM;mCAYJ,MAAM;mCAYN,MAAM;CAaxC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const useRookHealthConnect: () => {
|
|
2
|
+
ready: boolean;
|
|
3
|
+
isStepsAvailable: () => Promise<boolean>;
|
|
4
|
+
hasStepsPermissions: () => Promise<boolean>;
|
|
5
|
+
requestStepsPermissions: () => Promise<boolean>;
|
|
6
|
+
startSteps: () => Promise<boolean>;
|
|
7
|
+
stopSteps: () => Promise<boolean>;
|
|
8
|
+
isStepsActive: () => Promise<boolean>;
|
|
9
|
+
getTodaySteps: () => Promise<boolean>;
|
|
10
|
+
observeTodaySteps: () => Promise<boolean>;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=useRookHealthConnect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRookHealthConnect.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookHealthConnect.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,oBAAoB;;4BAaI,QAAQ,OAAO,CAAC;+BAQb,QAAQ,OAAO,CAAC;mCAQZ,QAAQ,OAAO,CAAC;;;yBAwB1B,QAAQ,OAAO,CAAC;yBAQhB,QAAQ,OAAO,CAAC;;CAyDjD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type CheckAvailabilityResponse = 'INSTALLED' | 'NOT_INSTALLED' | 'NOT_SUPPORTED';
|
|
2
|
+
export declare const useRookPermissions: () => {
|
|
3
|
+
ready: boolean;
|
|
4
|
+
checkAvailability: () => Promise<CheckAvailabilityResponse>;
|
|
5
|
+
requestAllAppleHealthPermissions: () => Promise<void>;
|
|
6
|
+
requestAllHealthConnectPermissions: () => Promise<void>;
|
|
7
|
+
requestAllPermissions: () => Promise<void>;
|
|
8
|
+
openHealthConnectSettings: () => Promise<void>;
|
|
9
|
+
healthConnectHasPermissions: () => Promise<boolean>;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=useRookPermissions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRookPermissions.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookPermissions.ts"],"names":[],"mappings":"AAUA,KAAK,yBAAyB,GAC1B,WAAW,GACX,eAAe,GACf,eAAe,CAAC;AAEpB,eAAO,MAAM,kBAAkB;;6BAMC,QAAQ,yBAAyB,CAAC;4CAiBb,QAAQ,IAAI,CAAC;8CAOX,QAAQ,IAAI,CAAC;iCAOhC,QAAQ,IAAI,CAAC;qCASH,QAAQ,IAAI,CAAC;uCA9BX,QAAQ,OAAO,CAAC;CA+C/D,CAAC"}
|