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.
Files changed (149) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +31 -0
  3. package/android/build.gradle +95 -0
  4. package/android/gradle.properties +5 -0
  5. package/android/src/main/AndroidManifest.xml +3 -0
  6. package/android/src/main/AndroidManifestNew.xml +38 -0
  7. package/android/src/main/java/com/rooksdk/HealthConnectPermissionsActivity.kt +45 -0
  8. package/android/src/main/java/com/rooksdk/RookDateTime.kt +12 -0
  9. package/android/src/main/java/com/rooksdk/RookSdkModule.kt +575 -0
  10. package/android/src/main/java/com/rooksdk/RookSdkPackage.kt +17 -0
  11. package/android/src/main/res/drawable/ic_health_connect.xml +19 -0
  12. package/android/src/main/res/layout/activity_health_connect_permissions.xml +15 -0
  13. package/android/src/main/res/values/themes.xml +3 -0
  14. package/ios/RookSdk.h +13 -0
  15. package/ios/RookSdk.mm +568 -0
  16. package/lib/commonjs/context/RookSyncGateContext.js +19 -0
  17. package/lib/commonjs/context/RookSyncGateContext.js.map +1 -0
  18. package/lib/commonjs/context/RookSyncGateProvider.js +70 -0
  19. package/lib/commonjs/context/RookSyncGateProvider.js.map +1 -0
  20. package/lib/commonjs/context/RookSyncGateReducer.js +39 -0
  21. package/lib/commonjs/context/RookSyncGateReducer.js.map +1 -0
  22. package/lib/commonjs/context/RookSyncGateTypes.js +2 -0
  23. package/lib/commonjs/context/RookSyncGateTypes.js.map +1 -0
  24. package/lib/commonjs/context/index.js +14 -0
  25. package/lib/commonjs/context/index.js.map +1 -0
  26. package/lib/commonjs/hooks/index.js +48 -0
  27. package/lib/commonjs/hooks/index.js.map +1 -0
  28. package/lib/commonjs/hooks/useRookAppleHealth.js +143 -0
  29. package/lib/commonjs/hooks/useRookAppleHealth.js.map +1 -0
  30. package/lib/commonjs/hooks/useRookConfiguration.js +90 -0
  31. package/lib/commonjs/hooks/useRookConfiguration.js.map +1 -0
  32. package/lib/commonjs/hooks/useRookEvents.js +239 -0
  33. package/lib/commonjs/hooks/useRookEvents.js.map +1 -0
  34. package/lib/commonjs/hooks/useRookHealthConnect.js +124 -0
  35. package/lib/commonjs/hooks/useRookHealthConnect.js.map +1 -0
  36. package/lib/commonjs/hooks/useRookPermissions.js +59 -0
  37. package/lib/commonjs/hooks/useRookPermissions.js.map +1 -0
  38. package/lib/commonjs/hooks/useRookSummaries.js +110 -0
  39. package/lib/commonjs/hooks/useRookSummaries.js.map +1 -0
  40. package/lib/commonjs/index.js +28 -0
  41. package/lib/commonjs/index.js.map +1 -0
  42. package/lib/commonjs/utils/credentials.js +11 -0
  43. package/lib/commonjs/utils/credentials.js.map +1 -0
  44. package/lib/commonjs/utils/getRookModule.js +21 -0
  45. package/lib/commonjs/utils/getRookModule.js.map +1 -0
  46. package/lib/commonjs/utils/index.js +63 -0
  47. package/lib/commonjs/utils/index.js.map +1 -0
  48. package/lib/commonjs/utils/isModuleReady.js +13 -0
  49. package/lib/commonjs/utils/isModuleReady.js.map +1 -0
  50. package/lib/commonjs/utils/isRunningOnAndroid.js +15 -0
  51. package/lib/commonjs/utils/isRunningOnAndroid.js.map +1 -0
  52. package/lib/commonjs/utils/isRunningOniOS.js +15 -0
  53. package/lib/commonjs/utils/isRunningOniOS.js.map +1 -0
  54. package/lib/commonjs/utils/isValidDate.js +14 -0
  55. package/lib/commonjs/utils/isValidDate.js.map +1 -0
  56. package/lib/commonjs/utils/loggerDescription.js +24 -0
  57. package/lib/commonjs/utils/loggerDescription.js.map +1 -0
  58. package/lib/commonjs/utils/packageInfo.js +13 -0
  59. package/lib/commonjs/utils/packageInfo.js.map +1 -0
  60. package/lib/module/context/RookSyncGateContext.js +11 -0
  61. package/lib/module/context/RookSyncGateContext.js.map +1 -0
  62. package/lib/module/context/RookSyncGateProvider.js +60 -0
  63. package/lib/module/context/RookSyncGateProvider.js.map +1 -0
  64. package/lib/module/context/RookSyncGateReducer.js +32 -0
  65. package/lib/module/context/RookSyncGateReducer.js.map +1 -0
  66. package/lib/module/context/RookSyncGateTypes.js +2 -0
  67. package/lib/module/context/RookSyncGateTypes.js.map +1 -0
  68. package/lib/module/context/index.js +2 -0
  69. package/lib/module/context/index.js.map +1 -0
  70. package/lib/module/hooks/index.js +7 -0
  71. package/lib/module/hooks/index.js.map +1 -0
  72. package/lib/module/hooks/useRookAppleHealth.js +135 -0
  73. package/lib/module/hooks/useRookAppleHealth.js.map +1 -0
  74. package/lib/module/hooks/useRookConfiguration.js +83 -0
  75. package/lib/module/hooks/useRookConfiguration.js.map +1 -0
  76. package/lib/module/hooks/useRookEvents.js +231 -0
  77. package/lib/module/hooks/useRookEvents.js.map +1 -0
  78. package/lib/module/hooks/useRookHealthConnect.js +116 -0
  79. package/lib/module/hooks/useRookHealthConnect.js.map +1 -0
  80. package/lib/module/hooks/useRookPermissions.js +52 -0
  81. package/lib/module/hooks/useRookPermissions.js.map +1 -0
  82. package/lib/module/hooks/useRookSummaries.js +102 -0
  83. package/lib/module/hooks/useRookSummaries.js.map +1 -0
  84. package/lib/module/index.js +3 -0
  85. package/lib/module/index.js.map +1 -0
  86. package/lib/module/utils/credentials.js +5 -0
  87. package/lib/module/utils/credentials.js.map +1 -0
  88. package/lib/module/utils/getRookModule.js +14 -0
  89. package/lib/module/utils/getRookModule.js.map +1 -0
  90. package/lib/module/utils/index.js +9 -0
  91. package/lib/module/utils/index.js.map +1 -0
  92. package/lib/module/utils/isModuleReady.js +6 -0
  93. package/lib/module/utils/isModuleReady.js.map +1 -0
  94. package/lib/module/utils/isRunningOnAndroid.js +8 -0
  95. package/lib/module/utils/isRunningOnAndroid.js.map +1 -0
  96. package/lib/module/utils/isRunningOniOS.js +8 -0
  97. package/lib/module/utils/isRunningOniOS.js.map +1 -0
  98. package/lib/module/utils/isValidDate.js +7 -0
  99. package/lib/module/utils/isValidDate.js.map +1 -0
  100. package/lib/module/utils/loggerDescription.js +17 -0
  101. package/lib/module/utils/loggerDescription.js.map +1 -0
  102. package/lib/module/utils/packageInfo.js +7 -0
  103. package/lib/module/utils/packageInfo.js.map +1 -0
  104. package/lib/typescript/src/context/RookSyncGateContext.d.ts +11 -0
  105. package/lib/typescript/src/context/RookSyncGateContext.d.ts.map +1 -0
  106. package/lib/typescript/src/context/RookSyncGateProvider.d.ts +11 -0
  107. package/lib/typescript/src/context/RookSyncGateProvider.d.ts.map +1 -0
  108. package/lib/typescript/src/context/RookSyncGateReducer.d.ts +3 -0
  109. package/lib/typescript/src/context/RookSyncGateReducer.d.ts.map +1 -0
  110. package/lib/typescript/src/context/RookSyncGateTypes.d.ts +26 -0
  111. package/lib/typescript/src/context/RookSyncGateTypes.d.ts.map +1 -0
  112. package/lib/typescript/src/context/index.d.ts +2 -0
  113. package/lib/typescript/src/context/index.d.ts.map +1 -0
  114. package/lib/typescript/src/hooks/index.d.ts +7 -0
  115. package/lib/typescript/src/hooks/index.d.ts.map +1 -0
  116. package/lib/typescript/src/hooks/useRookAppleHealth.d.ts +12 -0
  117. package/lib/typescript/src/hooks/useRookAppleHealth.d.ts.map +1 -0
  118. package/lib/typescript/src/hooks/useRookConfiguration.d.ts +12 -0
  119. package/lib/typescript/src/hooks/useRookConfiguration.d.ts.map +1 -0
  120. package/lib/typescript/src/hooks/useRookEvents.d.ts +17 -0
  121. package/lib/typescript/src/hooks/useRookEvents.d.ts.map +1 -0
  122. package/lib/typescript/src/hooks/useRookHealthConnect.d.ts +12 -0
  123. package/lib/typescript/src/hooks/useRookHealthConnect.d.ts.map +1 -0
  124. package/lib/typescript/src/hooks/useRookPermissions.d.ts +12 -0
  125. package/lib/typescript/src/hooks/useRookPermissions.d.ts.map +1 -0
  126. package/lib/typescript/src/hooks/useRookSummaries.d.ts +15 -0
  127. package/lib/typescript/src/hooks/useRookSummaries.d.ts.map +1 -0
  128. package/lib/typescript/src/index.d.ts +3 -0
  129. package/lib/typescript/src/index.d.ts.map +1 -0
  130. package/lib/typescript/src/utils/credentials.d.ts +5 -0
  131. package/lib/typescript/src/utils/credentials.d.ts.map +1 -0
  132. package/lib/typescript/src/utils/getRookModule.d.ts +2 -0
  133. package/lib/typescript/src/utils/getRookModule.d.ts.map +1 -0
  134. package/lib/typescript/src/utils/index.d.ts +9 -0
  135. package/lib/typescript/src/utils/index.d.ts.map +1 -0
  136. package/lib/typescript/src/utils/isModuleReady.d.ts +2 -0
  137. package/lib/typescript/src/utils/isModuleReady.d.ts.map +1 -0
  138. package/lib/typescript/src/utils/isRunningOnAndroid.d.ts +3 -0
  139. package/lib/typescript/src/utils/isRunningOnAndroid.d.ts.map +1 -0
  140. package/lib/typescript/src/utils/isRunningOniOS.d.ts +2 -0
  141. package/lib/typescript/src/utils/isRunningOniOS.d.ts.map +1 -0
  142. package/lib/typescript/src/utils/isValidDate.d.ts +2 -0
  143. package/lib/typescript/src/utils/isValidDate.d.ts.map +1 -0
  144. package/lib/typescript/src/utils/loggerDescription.d.ts +10 -0
  145. package/lib/typescript/src/utils/loggerDescription.d.ts.map +1 -0
  146. package/lib/typescript/src/utils/packageInfo.d.ts +6 -0
  147. package/lib/typescript/src/utils/packageInfo.d.ts.map +1 -0
  148. package/package.json +170 -0
  149. 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,3 @@
1
+ export * from './hooks';
2
+ export * from './context';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,WAAW","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ export const credentials = {
2
+ uuid: '9593d0ec-47c1-4477-a8ce-10d3f4f43127',
3
+ pdw: 'YR9GoQ3mP0zey5nZ9w3WHQMvtvFvMdnefblx'
4
+ };
5
+ //# sourceMappingURL=credentials.js.map
@@ -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,6 @@
1
+ export const isModuleReady = ready => {
2
+ if (!ready) {
3
+ throw new Error('The hook is not ready, please check your credentials and link of the package');
4
+ }
5
+ };
6
+ //# sourceMappingURL=isModuleReady.js.map
@@ -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,7 @@
1
+ export const isValidDate = date => {
2
+ const regex = /^\d{4}-\d{2}-\d{2}$/;
3
+ if (!regex.test(date)) {
4
+ throw new Error(`Invalid format: ${date}, the correct format is YYYY-MM-DD`);
5
+ }
6
+ };
7
+ //# sourceMappingURL=isValidDate.js.map
@@ -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,7 @@
1
+ import { Platform } from 'react-native';
2
+ export const packageInfo = {
3
+ version: '0.1.0',
4
+ isAndroid: Platform.OS === 'android',
5
+ debug: false
6
+ };
7
+ //# sourceMappingURL=packageInfo.js.map
@@ -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,3 @@
1
+ import type { RookSyncGateState, Action } from './RookSyncGateTypes';
2
+ export declare const rookSyncGateReducer: (state: RookSyncGateState, action: Action) => RookSyncGateState;
3
+ //# sourceMappingURL=RookSyncGateReducer.d.ts.map
@@ -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,2 @@
1
+ export { default as RookSyncGate } from './RookSyncGateProvider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -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"}