react-native-rook-sdk 0.6.2 → 1.0.0-rc.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/android/build.gradle +1 -1
- package/android/src/main/AndroidManifestNew.xml +0 -8
- package/android/src/main/java/com/rooksdk/RookSdkModule.kt +94 -580
- package/android/src/main/java/com/rooksdk/RookSdkPackage.kt +17 -1
- package/android/src/main/java/com/rooksdk/broadcasts/AndroidPermissionsReceiverTransmitter.kt +54 -0
- package/android/src/main/java/com/rooksdk/broadcasts/HealthConnectPermissionsReceiverTransmitter.kt +53 -0
- package/android/src/main/java/com/rooksdk/modules/RookConfigurationModule.kt +108 -0
- package/android/src/main/java/com/rooksdk/modules/RookPermissionsModule.kt +160 -0
- package/android/src/main/java/com/rooksdk/modules/RookStepsModule.kt +105 -0
- package/android/src/main/java/com/rooksdk/modules/RookSyncModule.kt +497 -0
- package/android/src/main/java/com/rooksdk/utils/DatasourcesUtils.kt +49 -0
- package/android/src/main/java/com/rooksdk/utils/ReadableToWritable.kt +64 -0
- package/android/src/main/java/com/rooksdk/utils/RookDateTime.kt +20 -0
- package/ios/RookSdk.mm +393 -42
- package/lib/commonjs/context/RookSyncGateContext.js +12 -0
- package/lib/commonjs/context/RookSyncGateContext.js.map +1 -1
- package/lib/commonjs/context/RookSyncGateProvider.js +14 -6
- package/lib/commonjs/context/RookSyncGateProvider.js.map +1 -1
- package/lib/commonjs/context/RookSyncGateReducer.js +15 -0
- package/lib/commonjs/context/RookSyncGateReducer.js.map +1 -1
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js +26 -38
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js.map +1 -1
- package/lib/commonjs/hooks/useRookAppleHealth.js +24 -10
- package/lib/commonjs/hooks/useRookAppleHealth.js.map +1 -1
- package/lib/commonjs/hooks/useRookAppleHealthVariables.js +22 -4
- package/lib/commonjs/hooks/useRookAppleHealthVariables.js.map +1 -1
- package/lib/commonjs/hooks/useRookConfiguration.js +32 -16
- package/lib/commonjs/hooks/useRookConfiguration.js.map +1 -1
- package/lib/commonjs/hooks/useRookDataSources.js +30 -5
- package/lib/commonjs/hooks/useRookDataSources.js.map +1 -1
- package/lib/commonjs/hooks/useRookEvents.js +61 -57
- package/lib/commonjs/hooks/useRookEvents.js.map +1 -1
- package/lib/commonjs/hooks/useRookPermissions.js +79 -37
- package/lib/commonjs/hooks/useRookPermissions.js.map +1 -1
- package/lib/commonjs/hooks/useRookSummaries.js +23 -29
- package/lib/commonjs/hooks/useRookSummaries.js.map +1 -1
- package/lib/commonjs/index.js +20 -8
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/modules/hook/useRookAutoSync.js +133 -27
- package/lib/commonjs/modules/hook/useRookAutoSync.js.map +1 -1
- package/lib/commonjs/modules/types/sendMessageBroadcast.js +2 -0
- package/lib/commonjs/modules/types/sendMessageBroadcast.js.map +1 -0
- package/lib/commonjs/types/PermissionsType.js +2 -0
- package/lib/commonjs/types/PermissionsType.js.map +1 -0
- package/lib/commonjs/utils/getNativeModule.js +29 -0
- package/lib/commonjs/utils/getNativeModule.js.map +1 -0
- package/lib/commonjs/utils/getRookModule.js +7 -0
- package/lib/commonjs/utils/getRookModule.js.map +1 -1
- package/lib/commonjs/utils/isModuleReady.js +6 -0
- package/lib/commonjs/utils/isModuleReady.js.map +1 -1
- package/lib/commonjs/utils/isValidDate.js +6 -0
- package/lib/commonjs/utils/isValidDate.js.map +1 -1
- package/lib/commonjs/utils/nativeModules.js +19 -0
- package/lib/commonjs/utils/nativeModules.js.map +1 -0
- package/lib/module/context/RookSyncGateContext.js +12 -0
- package/lib/module/context/RookSyncGateContext.js.map +1 -1
- package/lib/module/context/RookSyncGateProvider.js +10 -2
- package/lib/module/context/RookSyncGateProvider.js.map +1 -1
- package/lib/module/context/RookSyncGateReducer.js +15 -0
- package/lib/module/context/RookSyncGateReducer.js.map +1 -1
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js +14 -26
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js.map +1 -1
- package/lib/module/hooks/useRookAppleHealth.js +15 -2
- package/lib/module/hooks/useRookAppleHealth.js.map +1 -1
- package/lib/module/hooks/useRookAppleHealthVariables.js +20 -2
- package/lib/module/hooks/useRookAppleHealthVariables.js.map +1 -1
- package/lib/module/hooks/useRookConfiguration.js +18 -3
- package/lib/module/hooks/useRookConfiguration.js.map +1 -1
- package/lib/module/hooks/useRookDataSources.js +27 -3
- package/lib/module/hooks/useRookDataSources.js.map +1 -1
- package/lib/module/hooks/useRookEvents.js +32 -28
- package/lib/module/hooks/useRookEvents.js.map +1 -1
- package/lib/module/hooks/useRookPermissions.js +63 -22
- package/lib/module/hooks/useRookPermissions.js.map +1 -1
- package/lib/module/hooks/useRookSummaries.js +16 -22
- package/lib/module/hooks/useRookSummaries.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/modules/hook/useRookAutoSync.js +133 -28
- package/lib/module/modules/hook/useRookAutoSync.js.map +1 -1
- package/lib/module/modules/types/sendMessageBroadcast.js +2 -0
- package/lib/module/modules/types/sendMessageBroadcast.js.map +1 -0
- package/lib/module/types/PermissionsType.js +2 -0
- package/lib/module/types/PermissionsType.js.map +1 -0
- package/lib/module/utils/getNativeModule.js +23 -0
- package/lib/module/utils/getNativeModule.js.map +1 -0
- package/lib/module/utils/getRookModule.js +8 -0
- package/lib/module/utils/getRookModule.js.map +1 -1
- package/lib/module/utils/isModuleReady.js +6 -0
- package/lib/module/utils/isModuleReady.js.map +1 -1
- package/lib/module/utils/isValidDate.js +6 -0
- package/lib/module/utils/isValidDate.js.map +1 -1
- package/lib/module/utils/nativeModules.js +13 -0
- package/lib/module/utils/nativeModules.js.map +1 -0
- package/lib/typescript/src/context/RookSyncGateContext.d.ts +7 -0
- package/lib/typescript/src/context/RookSyncGateContext.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateProvider.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts +15 -0
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAndroidBackgroundSteps.d.ts +6 -2
- package/lib/typescript/src/hooks/useRookAndroidBackgroundSteps.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts +1 -1
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAppleHealthVariables.d.ts +9 -0
- package/lib/typescript/src/hooks/useRookAppleHealthVariables.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts +7 -1
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookDataSources.d.ts +8 -1
- package/lib/typescript/src/hooks/useRookDataSources.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookEvents.d.ts +9 -1
- package/lib/typescript/src/hooks/useRookEvents.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookPermissions.d.ts +16 -3
- package/lib/typescript/src/hooks/useRookPermissions.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookSummaries.d.ts +6 -6
- package/lib/typescript/src/hooks/useRookSummaries.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +2 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/modules/hook/useRookAutoSync.d.ts +18 -1
- package/lib/typescript/src/modules/hook/useRookAutoSync.d.ts.map +1 -1
- package/lib/typescript/src/modules/types/sendMessageBroadcast.d.ts +6 -0
- package/lib/typescript/src/modules/types/sendMessageBroadcast.d.ts.map +1 -0
- package/lib/typescript/src/types/DataSource.d.ts +1 -0
- package/lib/typescript/src/types/DataSource.d.ts.map +1 -1
- package/lib/typescript/src/types/PermissionsType.d.ts +6 -0
- package/lib/typescript/src/types/PermissionsType.d.ts.map +1 -0
- package/lib/typescript/src/utils/getNativeModule.d.ts +10 -0
- package/lib/typescript/src/utils/getNativeModule.d.ts.map +1 -0
- package/lib/typescript/src/utils/getRookModule.d.ts +7 -0
- package/lib/typescript/src/utils/getRookModule.d.ts.map +1 -1
- package/lib/typescript/src/utils/isModuleReady.d.ts +6 -0
- package/lib/typescript/src/utils/isModuleReady.d.ts.map +1 -1
- package/lib/typescript/src/utils/isValidDate.d.ts +6 -0
- package/lib/typescript/src/utils/isValidDate.d.ts.map +1 -1
- package/lib/typescript/src/utils/nativeModules.d.ts +14 -0
- package/lib/typescript/src/utils/nativeModules.d.ts.map +1 -0
- package/package.json +1 -1
- package/react-native-rook-sdk.podspec +1 -1
- package/android/src/main/java/com/rooksdk/HealthConnectPermissionsActivity.kt +0 -40
- package/android/src/main/java/com/rooksdk/RookDateTime.kt +0 -12
- package/android/src/main/res/layout/activity_health_connect_permissions.xml +0 -15
- package/lib/commonjs/utils/index.js +0 -69
- package/lib/commonjs/utils/index.js.map +0 -1
- package/lib/module/utils/index.js +0 -9
- package/lib/module/utils/index.js.map +0 -1
- package/lib/typescript/src/utils/index.d.ts +0 -9
- package/lib/typescript/src/utils/index.d.ts.map +0 -1
|
@@ -1,13 +1,34 @@
|
|
|
1
1
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
2
|
-
import { useEffect, useRef } from 'react';
|
|
2
|
+
import { useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { AppState, Platform } from 'react-native';
|
|
4
4
|
import { errors } from '../utils/errors';
|
|
5
|
-
import
|
|
5
|
+
import getNativeModule from '../../utils/getNativeModule';
|
|
6
|
+
import nativeModules from '../../utils/nativeModules';
|
|
7
|
+
const MESSAGE_TYPE = 'ROOK_BACKGROUND_ENABLED';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* The above TypeScript code defines a function `useRookAutoSync` that handles background
|
|
11
|
+
* synchronization, including user ID validation and error messaging.
|
|
12
|
+
* @property {boolean} enableBackground - The `enableBackground` property in the `useRookAutoSync`
|
|
13
|
+
* function determines whether background synchronization should be enabled. If `enableBackground` is
|
|
14
|
+
* set to `true`, the function will listen for changes in the app state and trigger the
|
|
15
|
+
* `startBackgroundSync` function when the app transitions from
|
|
16
|
+
* @property {boolean} enableLogs - The `enableLogs` property in the `useRookAutoSync` function is a
|
|
17
|
+
* boolean value that determines whether logging should be enabled or not. If `enableLogs` is set to
|
|
18
|
+
* `true`, logging messages will be displayed in the console to provide information about the
|
|
19
|
+
* background synchronization process. If `
|
|
20
|
+
* @property {RookSyncGateState} state - The `state` property in the `useRookAutoSync` function
|
|
21
|
+
* represents the current state of the RookSyncGate. It includes information such as whether the state
|
|
22
|
+
* is ready, the permissions status, and the user ID associated with the state. This state is used to
|
|
23
|
+
* determine when to start the
|
|
24
|
+
*/
|
|
6
25
|
export const useRookAutoSync = ({
|
|
7
26
|
enableBackground,
|
|
27
|
+
enableLogs,
|
|
8
28
|
state
|
|
9
29
|
}) => {
|
|
10
30
|
const appState = useRef(AppState.currentState);
|
|
31
|
+
const [changeAppState, setChangeState] = useState(0);
|
|
11
32
|
useEffect(() => {
|
|
12
33
|
if (!enableBackground) return;
|
|
13
34
|
const subscription = AppState.addEventListener('change', nextAppState => {
|
|
@@ -15,7 +36,7 @@ export const useRookAutoSync = ({
|
|
|
15
36
|
// Check previous state to check if he app was inactive or in background
|
|
16
37
|
// and then pass to be active
|
|
17
38
|
appState.current.match(/inactive|background/) && nextAppState === 'active') {
|
|
18
|
-
|
|
39
|
+
setChangeState(prev => prev + 1);
|
|
19
40
|
}
|
|
20
41
|
appState.current = nextAppState;
|
|
21
42
|
});
|
|
@@ -24,57 +45,141 @@ export const useRookAutoSync = ({
|
|
|
24
45
|
};
|
|
25
46
|
}, []);
|
|
26
47
|
useEffect(() => {
|
|
27
|
-
if (!state.ready
|
|
48
|
+
if (!state.ready) return;
|
|
28
49
|
startBackgroundServices();
|
|
29
|
-
}, [state
|
|
50
|
+
}, [state, changeAppState]);
|
|
30
51
|
const startBackgroundServices = () => {
|
|
31
|
-
|
|
52
|
+
const {
|
|
53
|
+
clientUUID,
|
|
54
|
+
password,
|
|
55
|
+
ready
|
|
56
|
+
} = state;
|
|
57
|
+
if (!ready || !clientUUID || !password) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (Platform.OS === 'android') {
|
|
61
|
+
startAndroidBackgroundSync();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
startIOSBackgroundSync();
|
|
32
65
|
};
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* The function `startAndroidBackgroundSync` in TypeScript initiates background synchronization for an
|
|
69
|
+
* Android app, handling user ID validation and error messaging.
|
|
70
|
+
* @returns If the `userID` is not available, an error message is logged and a message is sent to
|
|
71
|
+
* broadcast with `value` set to `false`. If an error occurs during the process, a message is sent to
|
|
72
|
+
* broadcast with `value` set to `false` and an error message is logged.
|
|
73
|
+
*/
|
|
33
74
|
const startAndroidBackgroundSync = async () => {
|
|
75
|
+
const {
|
|
76
|
+
clientUUID,
|
|
77
|
+
password,
|
|
78
|
+
environment,
|
|
79
|
+
ready
|
|
80
|
+
} = state;
|
|
81
|
+
if (!ready || !clientUUID || !password) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const rookPermissionsModule = getNativeModule(nativeModules.android.PERMISSIONS);
|
|
85
|
+
const rookModule = getNativeModule(nativeModules.android.CONFIGURATION);
|
|
86
|
+
const rookSyncModule = getNativeModule(nativeModules.android.SYNC);
|
|
87
|
+
const rookStepsModule = getNativeModule(nativeModules.android.STEPS);
|
|
34
88
|
try {
|
|
35
|
-
const
|
|
36
|
-
const userID = await rookSyncModule.getUserID();
|
|
89
|
+
const userID = await rookModule.getUserID();
|
|
37
90
|
if (!userID) {
|
|
38
|
-
console.log(errors.noUserIDAndroidBackground);
|
|
91
|
+
if (enableLogs) console.log(errors.noUserIDAndroidBackground);
|
|
92
|
+
sendMessageToBroadcast({
|
|
93
|
+
type: 'ROOK_BACKGROUND_ENABLED',
|
|
94
|
+
value: false,
|
|
95
|
+
message: errors.noUserIDAndroidBackground
|
|
96
|
+
});
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const hasHCPermissions = await rookPermissionsModule.checkPermissions();
|
|
100
|
+
const hasAndroidPermissions = await rookPermissionsModule.hasAndroidBackgroundPermissions();
|
|
101
|
+
if (!hasHCPermissions || !hasAndroidPermissions) {
|
|
102
|
+
if (enableLogs) console.log(errors.autoStartAndroidBackgroundSync);
|
|
103
|
+
sendMessageToBroadcast({
|
|
104
|
+
type: 'ROOK_BACKGROUND_ENABLED',
|
|
105
|
+
value: false,
|
|
106
|
+
message: errors.autoStartAndroidBackgroundSync
|
|
107
|
+
});
|
|
39
108
|
return;
|
|
40
109
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
const {
|
|
110
|
+
await rookSyncModule.scheduleYesterdaySync({
|
|
111
|
+
clientPassword: password,
|
|
44
112
|
clientUUID,
|
|
45
|
-
|
|
113
|
+
doOnEnd: 'oldest',
|
|
46
114
|
environment
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
});
|
|
55
|
-
await rookSyncModule.enableBackgroundAndroidSteps();
|
|
56
|
-
console.log('ROOK - Background enabled successfully');
|
|
57
|
-
} else console.log(errors.autoStartAndroidBackgroundSync);
|
|
115
|
+
});
|
|
116
|
+
await rookStepsModule.enableBackgroundAndroidSteps();
|
|
117
|
+
sendMessageToBroadcast({
|
|
118
|
+
type: 'ROOK_BACKGROUND_ENABLED',
|
|
119
|
+
value: true
|
|
120
|
+
});
|
|
121
|
+
if (enableLogs) console.log('ROOK - Background enabled successfully');
|
|
58
122
|
} catch (error) {
|
|
59
123
|
console.log(error);
|
|
124
|
+
sendMessageToBroadcast({
|
|
125
|
+
type: 'ROOK_BACKGROUND_ENABLED',
|
|
126
|
+
value: false
|
|
127
|
+
});
|
|
60
128
|
}
|
|
61
129
|
};
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* The function `startIOSBackgroundSync` in TypeScript initiates background synchronization for an
|
|
133
|
+
* iOS app, handling user ID validation and error messaging.
|
|
134
|
+
* @returns If the `userID` is not available, an error message is logged and a message is sent to
|
|
135
|
+
* broadcast with `value` set to `false`. If an error occurs during the process, a message is sent to
|
|
136
|
+
* broadcast with `value` set to `false` and an error message is logged.
|
|
137
|
+
*/
|
|
62
138
|
const startIOSBackgroundSync = async () => {
|
|
63
139
|
try {
|
|
64
|
-
const rookSyncModule =
|
|
140
|
+
const rookSyncModule = getNativeModule(nativeModules.ios.MAIN);
|
|
65
141
|
const userID = await rookSyncModule.getUserID();
|
|
66
142
|
if (!userID) {
|
|
67
|
-
console.error(errors.noUserIDAndroidBackground);
|
|
143
|
+
if (enableLogs) console.error(errors.noUserIDAndroidBackground);
|
|
144
|
+
sendMessageToBroadcast({
|
|
145
|
+
type: MESSAGE_TYPE,
|
|
146
|
+
value: false,
|
|
147
|
+
message: errors.noUserIDAndroidBackground
|
|
148
|
+
});
|
|
68
149
|
return;
|
|
69
150
|
}
|
|
70
151
|
await rookSyncModule.getTodaySteps();
|
|
71
152
|
await rookSyncModule.enableBackGroundUpdates();
|
|
72
|
-
|
|
153
|
+
sendMessageToBroadcast({
|
|
154
|
+
type: MESSAGE_TYPE,
|
|
155
|
+
value: true
|
|
156
|
+
});
|
|
157
|
+
if (enableLogs) console.log('ROOK - Background enabled successfully');
|
|
73
158
|
} catch (err) {
|
|
74
159
|
const error = err;
|
|
75
|
-
|
|
160
|
+
sendMessageToBroadcast({
|
|
161
|
+
type: MESSAGE_TYPE,
|
|
162
|
+
value: false,
|
|
163
|
+
message: errors.autoStartIOSBackgroundSync
|
|
164
|
+
});
|
|
165
|
+
if (enableLogs) {
|
|
166
|
+
if (error.message && error.message.includes('emptyUserId')) console.error(errors.noUserIDAndroidBackground);else console.error(errors.autoStartIOSBackgroundSync);
|
|
167
|
+
}
|
|
76
168
|
}
|
|
77
169
|
};
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* The function `sendMessageToBroadcast` sends a message to be broadcasted using a Rook module.
|
|
173
|
+
* @param {Message} message - The `message` parameter is of type `Message`, which is likely an object
|
|
174
|
+
* containing information to be sent as a broadcast message.
|
|
175
|
+
*/
|
|
176
|
+
const sendMessageToBroadcast = message => {
|
|
177
|
+
const rookSyncModule = getNativeModule(Platform.select({
|
|
178
|
+
android: () => nativeModules.android.MAIN,
|
|
179
|
+
default: () => nativeModules.ios.MAIN
|
|
180
|
+
})());
|
|
181
|
+
rookSyncModule.sendMessageToBroadcast(message).then().catch();
|
|
182
|
+
};
|
|
78
183
|
return {
|
|
79
184
|
startBackgroundServices
|
|
80
185
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","AppState","Platform","errors","
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useState","AppState","Platform","errors","getNativeModule","nativeModules","MESSAGE_TYPE","useRookAutoSync","enableBackground","enableLogs","state","appState","currentState","changeAppState","setChangeState","subscription","addEventListener","nextAppState","current","match","prev","remove","ready","startBackgroundServices","clientUUID","password","OS","startAndroidBackgroundSync","startIOSBackgroundSync","environment","rookPermissionsModule","android","PERMISSIONS","rookModule","CONFIGURATION","rookSyncModule","SYNC","rookStepsModule","STEPS","userID","getUserID","console","log","noUserIDAndroidBackground","sendMessageToBroadcast","type","value","message","hasHCPermissions","checkPermissions","hasAndroidPermissions","hasAndroidBackgroundPermissions","autoStartAndroidBackgroundSync","scheduleYesterdaySync","clientPassword","doOnEnd","enableBackgroundAndroidSteps","error","ios","MAIN","getTodaySteps","enableBackGroundUpdates","err","autoStartIOSBackgroundSync","includes","select","default","then","catch"],"sourceRoot":"../../../../src","sources":["modules/hook/useRookAutoSync.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../src","sources":["modules/types/sendMessageBroadcast.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/PermissionsType.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { NativeModules, Platform } from 'react-native';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The function `getRookSyncModule` returns the Android Rook Sync module if available, otherwise it
|
|
5
|
+
* throws an error indicating the package needs to be linked.
|
|
6
|
+
* @returns The `getRookSyncModule` function returns the `AndroidRookSync` object, which is either the
|
|
7
|
+
* `NativeModules.RookSdkHealthConnect` object if it exists, or a new `Proxy` object with a custom
|
|
8
|
+
* error message if `NativeModules.RookSdkHealthConnect` is falsy.
|
|
9
|
+
*/
|
|
10
|
+
export const getNativeModule = module => {
|
|
11
|
+
const LINKING_ERROR = `The package 'react-native-rook-sdk-health-connect' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
|
|
12
|
+
ios: "- You have run 'pod install'\n",
|
|
13
|
+
default: ''
|
|
14
|
+
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
|
|
15
|
+
const AndroidRookSync = NativeModules[module] ? NativeModules[module] : new Proxy({}, {
|
|
16
|
+
get() {
|
|
17
|
+
throw new Error(LINKING_ERROR);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
return AndroidRookSync;
|
|
21
|
+
};
|
|
22
|
+
export default getNativeModule;
|
|
23
|
+
//# sourceMappingURL=getNativeModule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","getNativeModule","module","LINKING_ERROR","select","ios","default","AndroidRookSync","Proxy","get","Error"],"sourceRoot":"../../../src","sources":["utils/getNativeModule.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,eAAe,GAAIC,MAAc,IAAK;EACjD,MAAMC,aAAa,GAChB,+FAA8F,GAC/FH,QAAQ,CAACI,MAAM,CAAC;IAAEC,GAAG,EAAE,gCAAgC;IAAEC,OAAO,EAAE;EAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;EAEjC,MAAMC,eAAe,GAAGR,aAAa,CAACG,MAAM,CAAC,GACzCH,aAAa,CAACG,MAAM,CAAC,GACrB,IAAIM,KAAK,CACP,CAAC,CAAC,EACF;IACEC,GAAGA,CAAA,EAAG;MACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;IAChC;EACF,CACF,CAAC;EAEL,OAAOI,eAAe;AACxB,CAAC;AAED,eAAeN,eAAe","ignoreList":[]}
|
|
@@ -1,4 +1,12 @@
|
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The function `getRookModule` returns the `RookSdkAppleHealth` module if available, otherwise it
|
|
5
|
+
* throws an error related to linking.
|
|
6
|
+
* @returns The `getRookModule` function returns the `RookSdkAppleHealth` module if it is available
|
|
7
|
+
* from `NativeModules.RookSdkAppleHealth`. If the module is not available, it returns a `Proxy` object
|
|
8
|
+
* with a custom error message defined in the `LINKING_ERROR` constant.
|
|
9
|
+
*/
|
|
2
10
|
export const getRookModule = () => {
|
|
3
11
|
const LINKING_ERROR = `The package 'react-native-rook-sdk' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
|
|
4
12
|
ios: "- You have run 'pod install'\n",
|
|
@@ -1 +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;
|
|
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;AACA;AACA;AACA;AACA;AACA;AACA;AACA,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":[]}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The function `isModuleReady` checks if a module is ready and throws an error if it is not.
|
|
3
|
+
* @param {boolean} ready - The `ready` parameter in the `isModuleReady` function is a boolean value
|
|
4
|
+
* that indicates whether a certain module or hook is ready for use. If `ready` is `true`, it means the
|
|
5
|
+
* module is ready, and if `ready` is `false`, it means the module is not
|
|
6
|
+
*/
|
|
1
7
|
export const isModuleReady = ready => {
|
|
2
8
|
if (!ready) {
|
|
3
9
|
throw new Error('The hook is not ready, please check your credentials and link of the package');
|
|
@@ -1 +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":[]}
|
|
1
|
+
{"version":3,"names":["isModuleReady","ready","Error"],"sourceRoot":"../../../src","sources":["utils/isModuleReady.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,aAAa,GAAIC,KAAc,IAAW;EACrD,IAAI,CAACA,KAAK,EAAE;IACV,MAAM,IAAIC,KAAK,CACb,8EACF,CAAC;EACH;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The isValidDate function in TypeScript validates if a given date string is in the format YYYY-MM-DD.
|
|
3
|
+
* @param {string} date - The `isValidDate` function you provided checks if a given date string is in
|
|
4
|
+
* the format `YYYY-MM-DD`. If the date string does not match this format, it throws an error
|
|
5
|
+
* indicating the correct format.
|
|
6
|
+
*/
|
|
1
7
|
export const isValidDate = date => {
|
|
2
8
|
const regex = /^\d{4}-\d{2}-\d{2}$/;
|
|
3
9
|
if (!regex.test(date)) {
|
|
@@ -1 +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":[]}
|
|
1
|
+
{"version":3,"names":["isValidDate","date","regex","test","Error"],"sourceRoot":"../../../src","sources":["utils/isValidDate.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,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,13 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
android: {
|
|
3
|
+
CONFIGURATION: 'RookConfigurationModule',
|
|
4
|
+
MAIN: 'RookSdk',
|
|
5
|
+
PERMISSIONS: 'RookPermissionsModule',
|
|
6
|
+
SYNC: 'RookSyncModule',
|
|
7
|
+
STEPS: 'RookStepsModule'
|
|
8
|
+
},
|
|
9
|
+
ios: {
|
|
10
|
+
MAIN: 'RookSdk'
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=nativeModules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["android","CONFIGURATION","MAIN","PERMISSIONS","SYNC","STEPS","ios"],"sourceRoot":"../../../src","sources":["utils/nativeModules.ts"],"mappings":"AAAA,eAAe;EACbA,OAAO,EAAE;IACPC,aAAa,EAAE,yBAAyB;IACxCC,IAAI,EAAE,SAAS;IACfC,WAAW,EAAE,uBAAuB;IACpCC,IAAI,EAAE,gBAAgB;IACtBC,KAAK,EAAE;EACT,CAAC;EACDC,GAAG,EAAE;IACHJ,IAAI,EAAE;EACR;AACF,CAAC","ignoreList":[]}
|
|
@@ -4,6 +4,13 @@ export declare const RookSyncGateContext: import("react").Context<{
|
|
|
4
4
|
state: RookSyncGateState;
|
|
5
5
|
dispatch: Dispatch<Action>;
|
|
6
6
|
} | undefined>;
|
|
7
|
+
/**
|
|
8
|
+
* The function `useRookSyncGateContext` ensures that it is used within the `RookSyncGateProvider`
|
|
9
|
+
* context.
|
|
10
|
+
* @returns The `useRookSyncGateContext` custom hook is returning the context obtained from the
|
|
11
|
+
* `RookSyncGateContext` using the `useContext` hook. If the context is not found, it throws an error
|
|
12
|
+
* indicating that `useRookSyncGateContext` should be used inside `RookSyncGateProvider`.
|
|
13
|
+
*/
|
|
7
14
|
export declare const useRookSyncGateContext: () => {
|
|
8
15
|
state: RookSyncGateState;
|
|
9
16
|
dispatch: Dispatch<Action>;
|
|
@@ -1 +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;
|
|
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;AAMrE,eAAO,MAAM,mBAAmB;WACrB,iBAAiB;cAAY,SAAS,MAAM,CAAC;cAC5C,CAAC;AAEb;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB;WAVxB,iBAAiB;cAAY,SAAS,MAAM,CAAC;CAkBvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RookSyncGateProvider.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateProvider.tsx"],"names":[],"mappings":"AACA,OAAc,EAAc,KAAK,EAAE,EAAa,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"RookSyncGateProvider.d.ts","sourceRoot":"","sources":["../../../../src/context/RookSyncGateProvider.tsx"],"names":[],"mappings":"AACA,OAAc,EAAc,KAAK,EAAE,EAAa,MAAM,OAAO,CAAC;AAE9D,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;AAoB7B,QAAA,MAAM,oBAAoB,EAAE,EAAE,CAAC,yBAAyB,CAmDvD,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,3 +1,18 @@
|
|
|
1
1
|
import type { RookSyncGateState, Action } from './RookSyncGateTypes';
|
|
2
|
+
/**
|
|
3
|
+
* The rookSyncGateReducer function in TypeScript handles various actions to update the state of a
|
|
4
|
+
* RookSyncGate component.
|
|
5
|
+
* @param {RookSyncGateState} state - The `state` parameter in the `rookSyncGateReducer` function
|
|
6
|
+
* represents the current state of the RookSyncGate module. It contains various properties such as
|
|
7
|
+
* `ready`, `environment`, `clientUUID`, `password`, `userID`, and `permissions`. The reducer function
|
|
8
|
+
* takes an action and
|
|
9
|
+
* @param {Action} action - The `action` parameter in the `rookSyncGateReducer` function represents an
|
|
10
|
+
* object that contains information about the action being dispatched. It typically has a `type`
|
|
11
|
+
* property that indicates the type of action being performed, along with any additional data needed to
|
|
12
|
+
* update the state. The reducer function uses this
|
|
13
|
+
* @returns The reducer function `rookSyncGateReducer` returns a new state object based on the action
|
|
14
|
+
* type provided. The state object is updated with the corresponding values based on the action type.
|
|
15
|
+
* If the action type is not recognized, it returns the current state unchanged.
|
|
16
|
+
*/
|
|
2
17
|
export declare const rookSyncGateReducer: (state: RookSyncGateState, action: Action) => RookSyncGateState;
|
|
3
18
|
//# sourceMappingURL=RookSyncGateReducer.d.ts.map
|
|
@@ -1 +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,iBAoBF,CAAC"}
|
|
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;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB,UACvB,iBAAiB,UAChB,MAAM,KACb,iBAoBF,CAAC"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `useRookAndroidBackgroundSteps` function provides various methods for managing and retrieving
|
|
3
|
+
* step count data on Android devices using the Rook module.
|
|
4
|
+
* @returns The `useRookAndroidBackgroundSteps` function returns a hook with the functions that allows the user to
|
|
5
|
+
* control de steps sync
|
|
6
|
+
*/
|
|
1
7
|
export declare const useRookAndroidBackgroundSteps: () => {
|
|
2
8
|
ready: boolean;
|
|
3
9
|
isStepsAvailable: () => Promise<boolean>;
|
|
4
|
-
hasStepsPermissions: () => Promise<boolean>;
|
|
5
|
-
requestStepsPermissions: () => Promise<boolean>;
|
|
6
10
|
enableBackgroundAndroidSteps: () => Promise<boolean>;
|
|
7
11
|
disableBackgroundAndroidSteps: () => Promise<boolean>;
|
|
8
12
|
isBackgroundAndroidStepsActive: () => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookAndroidBackgroundSteps.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAndroidBackgroundSteps.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookAndroidBackgroundSteps.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAndroidBackgroundSteps.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B;;4BAWL,QAAQ,OAAO,CAAC;wCAWJ,QAAQ,OAAO,CAAC;yCAWrB,QAAQ,OAAO,CAAC;0CAYf,QAAQ,OAAO,CAAC;sCAWpB,QAAQ,MAAM,CAAC;4CAWT,QAAQ,MAAM,CAAC;CAkB7D,CAAC"}
|
|
@@ -3,6 +3,6 @@ export declare const useRookAppleHealth: () => {
|
|
|
3
3
|
enableBackGroundUpdates: () => Promise<boolean>;
|
|
4
4
|
disableBackGroundUpdates: () => Promise<boolean>;
|
|
5
5
|
isBackGroundForEventsEnable: () => Promise<void>;
|
|
6
|
-
isBackGroundForSummariesEnable: () => Promise<
|
|
6
|
+
isBackGroundForSummariesEnable: () => Promise<boolean>;
|
|
7
7
|
};
|
|
8
8
|
//# sourceMappingURL=useRookAppleHealth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookAppleHealth.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAppleHealth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookAppleHealth.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAppleHealth.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,kBAAkB;;mCAYO,QAAQ,OAAO,CAAC;oCAaf,QAAQ,OAAO,CAAC;uCAsBP,QAAQ,IAAI,CAAC;0CAXV,QAAQ,OAAO,CAAC;CAyBlE,CAAC"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `useRookAppleHealthVariable` hook returns an object with a `ready` boolean and an
|
|
3
|
+
* asynchronous function `getTodaySteps` that retrieves the number of steps taken today.
|
|
4
|
+
* @returns The `useRookVariable` hook is returning an object with two properties:
|
|
5
|
+
* 1. `ready`: This property is coming from the `useRookSyncGateContext` hook and represents the state
|
|
6
|
+
* of readiness.
|
|
7
|
+
* 2. `getTodaySteps`: This property is a function that retrieves the number of steps taken today
|
|
8
|
+
* asynchronously and returns a Promise<string> representing the number of steps taken today.
|
|
9
|
+
*/
|
|
1
10
|
export declare const useRookAppleHealthVariables: () => {
|
|
2
11
|
ready: boolean;
|
|
3
12
|
getTodaySteps: () => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookAppleHealthVariables.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAppleHealthVariables.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookAppleHealthVariables.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookAppleHealthVariables.ts"],"names":[],"mappings":"AAOA;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B;;yBAUN,QAAQ,IAAI,CAAC;CAY9C,CAAC"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
type DoOnEnd = 'oldest' | 'latest' | 'nothing';
|
|
2
|
+
/**
|
|
3
|
+
* The `useRookConfiguration` hook provides various asynchronous methods for managing the configuration
|
|
4
|
+
* of the ROOK SDK
|
|
5
|
+
* @returns The `useRookConfiguration` function returns an object containing that allow the user to configure
|
|
6
|
+
* the SDK
|
|
7
|
+
*/
|
|
2
8
|
export declare const useRookConfiguration: () => {
|
|
3
9
|
ready: boolean;
|
|
4
10
|
clearUserID: () => Promise<boolean>;
|
|
@@ -9,7 +15,7 @@ export declare const useRookConfiguration: () => {
|
|
|
9
15
|
removeUserFromRook: () => Promise<boolean>;
|
|
10
16
|
syncUserTimeZone: () => Promise<boolean>;
|
|
11
17
|
updateUserID: (userID: string) => Promise<boolean>;
|
|
12
|
-
scheduleAndroidYesterdaySync: (doOnEnd
|
|
18
|
+
scheduleAndroidYesterdaySync: (doOnEnd?: DoOnEnd) => Promise<boolean>;
|
|
13
19
|
};
|
|
14
20
|
export {};
|
|
15
21
|
//# sourceMappingURL=useRookConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookConfiguration.ts"],"names":[],"mappings":"AASA,KAAK,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/C,eAAO,MAAM,oBAAoB;;
|
|
1
|
+
{"version":3,"file":"useRookConfiguration.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookConfiguration.ts"],"names":[],"mappings":"AASA,KAAK,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;uBAiDD,QAAQ,OAAO,CAAC;kCAoDL,QAAQ,OAAO,CAAC;iCAbjB,QAAQ,OAAO,CAAC;qBAtE5B,QAAQ,MAAM,CAAC;oCAgGA,QAAQ,OAAO,CAAC;8BAzCtB,QAAQ,OAAO,CAAC;4BAXlB,QAAQ,OAAO,CAAC;2BA3Bf,MAAM,KAAG,QAAQ,OAAO,CAAC;6CAkGjD,OAAO,KAChB,QAAQ,OAAO,CAAC;CA0BpB,CAAC"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
import type { DataSource } from '../types/DataSource';
|
|
1
|
+
import type { DataSource, DataSourceType } from '../types/DataSource';
|
|
2
2
|
type options = {
|
|
3
3
|
redirectURL?: string;
|
|
4
4
|
};
|
|
5
|
+
/**
|
|
6
|
+
* The `useRookDataSources` hook provides functionality to interact with data sources in Rook,
|
|
7
|
+
* including retrieving available data sources, presenting a connections page, and revoking user
|
|
8
|
+
* authorization for a specific data source.
|
|
9
|
+
* @returns An object is being returned from the `useRookDataSources` hook to allow the user to access to the sources API
|
|
10
|
+
*/
|
|
5
11
|
export declare const useRookDataSources: () => {
|
|
6
12
|
ready: boolean;
|
|
7
13
|
getAvailableDataSources: (options?: options | undefined) => Promise<DataSource[]>;
|
|
8
14
|
presentDataSourceView: (options?: options | undefined) => Promise<boolean>;
|
|
15
|
+
revokeDataSource: (type: DataSourceType) => Promise<boolean>;
|
|
9
16
|
};
|
|
10
17
|
export {};
|
|
11
18
|
//# sourceMappingURL=useRookDataSources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookDataSources.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookDataSources.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookDataSources.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookDataSources.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEtE,KAAK,OAAO,GAAG;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;gEAoB1B,QAAQ,UAAU,EAAE,CAAC;8DAU2B,QAAQ,OAAO,CAAC;6BAYnC,cAAc,KAAG,QAAQ,OAAO,CAAC;CAYlE,CAAC"}
|
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `useRookEvents` hook defines multiple async functions to sync various
|
|
3
|
+
* health-related events and returns them along with a `ready` state.
|
|
4
|
+
* @returns The `useRookEvents` hook is being returned, which includes various functions for syncing
|
|
5
|
+
* different types of health events like body heart rate, physical heart rate, body oxygenation,
|
|
6
|
+
* physical oxygenation, training, temperature, blood pressure, blood glucose, and body metrics events.
|
|
7
|
+
* Each function takes a date parameter in the format YYYY-MM-DD and returns a boolean indicating if
|
|
8
|
+
* the sync was successful. Additionally,
|
|
9
|
+
*/
|
|
1
10
|
export declare const useRookEvents: () => {
|
|
2
11
|
ready: boolean;
|
|
3
|
-
syncEvents: () => Promise<void>;
|
|
4
12
|
reSyncFailedEvents: () => Promise<boolean>;
|
|
5
13
|
syncBodyHeartRateEvent: (date: string) => Promise<boolean>;
|
|
6
14
|
syncPhysicalHeartRateEvent: (date: string) => Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookEvents.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookEvents.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,aAAa;;
|
|
1
|
+
{"version":3,"file":"useRookEvents.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookEvents.ts"],"names":[],"mappings":"AAUA;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa;;8BAqLO,QAAQ,OAAO,CAAC;mCA/JT,MAAM,KAAG,QAAQ,OAAO,CAAC;uCAgBrB,MAAM,KAAG,QAAQ,OAAO,CAAC;qCAc3B,MAAM,KAAG,QAAQ,OAAO,CAAC;yCAgBrB,MAAM,KAAG,QAAQ,OAAO,CAAC;8BAOpC,MAAM,KAAG,QAAQ,OAAO,CAAC;iCAgBtB,MAAM,KAAG,QAAQ,OAAO,CAAC;mCAc5B,MAAM,KAAG,QAAQ,OAAO,CAAC;kCAkB1B,MAAM,KAAG,QAAQ,OAAO,CAAC;iCAiBrB,MAAM,KAAG,QAAQ,OAAO,CAAC;6CAcb,MAAM,KAAG,QAAQ,OAAO,CAAC;6CAczB,MAAM,KAAG,QAAQ,OAAO,CAAC;CAsC1E,CAAC"}
|
|
@@ -1,13 +1,26 @@
|
|
|
1
|
+
import { type PermissionStatus } from 'react-native';
|
|
2
|
+
import type { CheckPermissionsParam } from '../types/PermissionsType';
|
|
3
|
+
export type RequestStatusPermissions = 'REQUEST_SENT' | 'ALREADY_GRANTED';
|
|
1
4
|
type CheckAvailabilityResponse = 'INSTALLED' | 'NOT_INSTALLED' | 'NOT_SUPPORTED';
|
|
5
|
+
/**
|
|
6
|
+
* The `useRookPermissions` hook manages permissions for accessing Apple Health and Health Connect data,
|
|
7
|
+
* including requesting various types of permissions and checking their status.
|
|
8
|
+
* @returns The `useRookPermissions` hook is being returned, which provides various functions related
|
|
9
|
+
* to requesting and checking permissions for Apple Health. The hook returns an object containing the
|
|
10
|
+
* following properties and functions:
|
|
11
|
+
*/
|
|
2
12
|
export declare const useRookPermissions: () => {
|
|
3
13
|
ready: boolean;
|
|
14
|
+
appleHealthHasPermissions: (param?: CheckPermissionsParam) => Promise<PermissionStatus>;
|
|
4
15
|
checkAvailability: () => Promise<CheckAvailabilityResponse>;
|
|
5
16
|
requestAllAppleHealthPermissions: () => Promise<void>;
|
|
6
|
-
requestAllHealthConnectPermissions: () => Promise<
|
|
7
|
-
requestAllPermissions: () => Promise<
|
|
17
|
+
requestAllHealthConnectPermissions: () => Promise<RequestStatusPermissions>;
|
|
18
|
+
requestAllPermissions: () => Promise<RequestStatusPermissions>;
|
|
8
19
|
openHealthConnectSettings: () => Promise<void>;
|
|
20
|
+
openAppleHealthSettings: () => Promise<void>;
|
|
9
21
|
healthConnectHasPermissions: () => Promise<boolean>;
|
|
10
|
-
|
|
22
|
+
shouldRequestAndroidBackgroundPermissions: () => Promise<boolean>;
|
|
23
|
+
requestAndroidBackgroundPermissions: () => Promise<RequestStatusPermissions>;
|
|
11
24
|
hasAndroidBackgroundPermissions: () => Promise<boolean>;
|
|
12
25
|
};
|
|
13
26
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookPermissions.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookPermissions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookPermissions.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookPermissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAS/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE,MAAM,MAAM,wBAAwB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAC1E,KAAK,yBAAyB,GAC1B,WAAW,GACX,eAAe,GACf,eAAe,CAAC;AAEpB;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;wCA+CnB,qBAAqB,KAC5B,QAAQ,gBAAgB,CAAC;6BA7BE,QAAQ,yBAAyB,CAAC;4CAuCb,QAAQ,IAAI,CAAC;8CAepD,QAAQ,wBAAwB,CAAC;iCAUL,QAAQ,wBAAwB,CAAC;qCAyB7B,QAAQ,IAAI,CAAC;mCAVf,QAAQ,IAAI,CAAC;uCAhEf,QAAQ,OAAO,CAAC;qDAgHF,QAAQ,OAAO,CAAC;+CAzBhE,QAAQ,wBAAwB,CAAC;2CAaK,QAAQ,OAAO,CAAC;CAiC7D,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
/**
|
|
2
|
+
* The `useRookSummaries` hook provides methods to sync various types of summaries and handle
|
|
3
|
+
* failed syncs using a Rook module
|
|
4
|
+
* @returns The `useRookSummaries` hook returns an object with the properties and methods that allows the user to
|
|
5
|
+
* sync summaries with ROOK
|
|
6
|
+
*/
|
|
5
7
|
export declare const useRookSummaries: () => {
|
|
6
8
|
ready: boolean;
|
|
7
|
-
shouldSyncFor: (props: ShouldSyncForProps) => Promise<boolean>;
|
|
8
9
|
reSyncFailedSummaries: () => Promise<boolean>;
|
|
9
10
|
syncSleepSummary: (date: string) => Promise<boolean>;
|
|
10
11
|
syncPhysicalSummary: (date: string) => Promise<boolean>;
|
|
11
12
|
syncBodySummary: (date: string) => Promise<boolean>;
|
|
12
13
|
};
|
|
13
|
-
export {};
|
|
14
14
|
//# sourceMappingURL=useRookSummaries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRookSummaries.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookSummaries.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useRookSummaries.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useRookSummaries.ts"],"names":[],"mappings":"AAQA;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;iCAyDO,QAAQ,OAAO,CAAC;6BArClB,MAAM,KAAG,QAAQ,OAAO,CAAC;gCAatB,MAAM,KAAG,QAAQ,OAAO,CAAC;4BAa7B,MAAM,KAAG,QAAQ,OAAO,CAAC;CAuBzD,CAAC"}
|