react-native-rook-sdk 4.0.0-beta.2 → 4.0.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 +1 -1
- package/README.md +3 -35
- package/android/build.gradle +45 -20
- package/android/gradle.properties +5 -5
- package/android/src/main/AndroidManifest.xml +2 -1
- package/android/src/main/AndroidManifestNew.xml +36 -0
- package/android/src/main/java/com/rooksdk/RookSdkModule.kt +263 -11
- package/android/src/main/java/com/rooksdk/RookSdkPackage.kt +42 -26
- package/android/src/main/java/com/rooksdk/broadcasts/AndroidPermissionsReceiverTransmitter.kt +65 -0
- package/android/src/main/java/com/rooksdk/broadcasts/HealthConnectPermissionsReceiverTransmitter.kt +70 -0
- package/android/src/main/java/com/rooksdk/broadcasts/SamsungHealthPermissionsReceiverTransmitter.kt +52 -0
- package/android/src/main/java/com/rooksdk/modules/RookBackgroundSyncModule.kt +99 -0
- package/android/src/main/java/com/rooksdk/modules/RookConfigurationModule.kt +182 -0
- package/android/src/main/java/com/rooksdk/modules/RookLocalData.kt +301 -0
- package/android/src/main/java/com/rooksdk/modules/RookPermissionsModule.kt +359 -0
- package/android/src/main/java/com/rooksdk/modules/RookSourcesModule.kt +102 -0
- package/android/src/main/java/com/rooksdk/modules/RookStepsModule.kt +119 -0
- package/android/src/main/java/com/rooksdk/modules/RookSyncModule.kt +551 -0
- package/android/src/main/java/com/rooksdk/utils/DatasourcesUtils.kt +34 -0
- package/android/src/main/java/com/rooksdk/utils/PermissionConversion.kt +21 -0
- package/android/src/main/java/com/rooksdk/utils/ReadableToWritable.kt +145 -0
- package/android/src/main/java/com/rooksdk/utils/RookDateTime.kt +26 -0
- package/android/src/main/java/com/rooksdk/utils/RookGsonBuilder.kt +17 -0
- package/android/src/main/java/com/rooksdk/utils/SamsungAvailability.kt +21 -0
- package/android/src/main/java/com/rooksdk/utils/Source.kt +6 -0
- package/android/src/main/java/com/rooksdk/utils/StringToSyncType.kt +41 -0
- package/android/src/main/java/com/rooksdk/utils/serializers/InstantSerializer.kt +19 -0
- package/android/src/main/java/com/rooksdk/utils/serializers/LocalDateSerializer.kt +21 -0
- package/android/src/main/res/drawable/ic_health_connect.xml +19 -0
- package/android/src/main/res/values/themes.xml +3 -0
- package/ios/DateHelper.swift +4 -4
- package/ios/EncodableDataSource.swift +3 -2
- package/ios/EncodableDataSourceAuthorizer.swift +3 -2
- package/ios/{HearRateMapper.swift → EncodableHeartRate.swift} +3 -3
- package/ios/EncodableRookDataSource.swift +36 -0
- package/ios/EncodableSDKState.swift +94 -0
- package/ios/EncodableStatusDataSources.swift +47 -0
- package/ios/NutritionMapper.swift +114 -0
- package/ios/RookBackground.swift +8 -5
- package/ios/RookBackgroundModule.h +5 -0
- package/ios/RookBackgroundModule.mm +15 -0
- package/ios/RookConfiguration.swift +34 -24
- package/ios/RookConfigurationModule.h +5 -0
- package/ios/RookConfigurationModule.mm +22 -0
- package/ios/RookExternalModule.h +5 -0
- package/ios/RookExternalModule.m +31 -0
- package/ios/{RookData.swift → RookLocalData.swift} +70 -48
- package/ios/RookPermissions.swift +33 -5
- package/ios/RookPermissionsModule.h +5 -0
- package/ios/RookPermissionsModule.mm +20 -0
- package/ios/RookSdk.h +2 -14
- package/ios/RookSdk.mm +97 -546
- package/ios/RookSources.swift +54 -60
- package/ios/RookSourcesModule.h +5 -0
- package/ios/RookSourcesModule.mm +18 -0
- package/ios/RookSync.h +5 -0
- package/ios/RookSync.m +35 -0
- package/ios/RookSync.swift +78 -48
- package/ios/SwiftTest.swift +18 -0
- package/ios/react-native-rook-sdk-Bridging-Header.h +12 -0
- package/{src/context/RookSyncGateContext.ts → lib/commonjs/context/RookSyncGateContext.js} +13 -10
- package/lib/commonjs/context/RookSyncGateContext.js.map +1 -0
- package/lib/commonjs/context/RookSyncGateProvider.js +108 -0
- package/lib/commonjs/context/RookSyncGateProvider.js.map +1 -0
- package/{src/context/RookSyncGateReducer.ts → lib/commonjs/context/RookSyncGateReducer.js} +44 -13
- package/lib/commonjs/context/RookSyncGateReducer.js.map +1 -0
- package/lib/commonjs/context/RookSyncGateTypes.js +6 -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 +76 -0
- package/lib/commonjs/hooks/index.js.map +1 -0
- package/{src/hooks/useRookAPISources.ts → lib/commonjs/hooks/useRookAPISources.js} +36 -40
- package/lib/commonjs/hooks/useRookAPISources.js.map +1 -0
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js +88 -0
- package/lib/commonjs/hooks/useRookAndroidBackgroundSteps.js.map +1 -0
- package/lib/commonjs/hooks/useRookAppleHealth.js +63 -0
- package/lib/commonjs/hooks/useRookAppleHealth.js.map +1 -0
- package/lib/commonjs/hooks/useRookConfiguration.js +113 -0
- package/lib/commonjs/hooks/useRookConfiguration.js.map +1 -0
- package/lib/commonjs/hooks/useRookData.js +116 -0
- package/lib/commonjs/hooks/useRookData.js.map +1 -0
- package/lib/commonjs/hooks/useRookHealthConnect.js +70 -0
- package/lib/commonjs/hooks/useRookHealthConnect.js.map +1 -0
- package/lib/commonjs/hooks/useRookPermissions.js +211 -0
- package/lib/commonjs/hooks/useRookPermissions.js.map +1 -0
- package/lib/commonjs/hooks/useRookSamsungHealth.js +54 -0
- package/lib/commonjs/hooks/useRookSamsungHealth.js.map +1 -0
- package/lib/commonjs/hooks/useRookSync.js +148 -0
- package/lib/commonjs/hooks/useRookSync.js.map +1 -0
- package/lib/commonjs/hooks/useRookVariables.js +93 -0
- package/lib/commonjs/hooks/useRookVariables.js.map +1 -0
- package/lib/commonjs/index.js +121 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/modules/hook/useRookAutoSync.js +261 -0
- package/lib/commonjs/modules/hook/useRookAutoSync.js.map +1 -0
- package/lib/commonjs/modules/types/sendMessageBroadcast.js +2 -0
- package/lib/commonjs/modules/types/sendMessageBroadcast.js.map +1 -0
- package/lib/commonjs/modules/utils/errors.js +12 -0
- package/lib/commonjs/modules/utils/errors.js.map +1 -0
- package/lib/commonjs/types/ActivityEvent.js +6 -0
- package/lib/commonjs/types/ActivityEvent.js.map +1 -0
- package/lib/commonjs/types/AppleHealthNutritionEvent.js +77 -0
- package/lib/commonjs/types/AppleHealthNutritionEvent.js.map +1 -0
- package/lib/commonjs/types/AppleHealthPermissions.js +57 -0
- package/lib/commonjs/types/AppleHealthPermissions.js.map +1 -0
- package/lib/commonjs/types/AuthorizedSources.js +6 -0
- package/lib/commonjs/types/AuthorizedSources.js.map +1 -0
- package/lib/commonjs/types/BodySummary.js +6 -0
- package/lib/{module/types/Rook.js.map → commonjs/types/BodySummary.js.map} +1 -1
- package/lib/commonjs/types/DataSource.js +16 -0
- package/lib/commonjs/types/DataSource.js.map +1 -0
- package/lib/commonjs/types/DiagnosticState.js +2 -0
- package/lib/commonjs/types/DiagnosticState.js.map +1 -0
- package/lib/commonjs/types/HCMealData.js +65 -0
- package/lib/commonjs/types/HCMealData.js.map +1 -0
- package/lib/commonjs/types/HeartRateEvent.js +2 -0
- package/lib/commonjs/types/HeartRateEvent.js.map +1 -0
- package/lib/commonjs/types/PermissionsType.js +2 -0
- package/lib/commonjs/types/PermissionsType.js.map +1 -0
- package/lib/commonjs/types/PhysicalSummary.js +6 -0
- package/lib/commonjs/types/PhysicalSummary.js.map +1 -0
- package/lib/commonjs/types/SDKSources.js +13 -0
- package/lib/commonjs/types/SDKSources.js.map +1 -0
- package/lib/commonjs/types/SamsungHealthPermissions.js +23 -0
- package/lib/commonjs/types/SamsungHealthPermissions.js.map +1 -0
- package/lib/commonjs/types/SleepSummary.js +6 -0
- package/lib/commonjs/types/SleepSummary.js.map +1 -0
- package/lib/commonjs/types/SummaryTypes.js +2 -0
- package/lib/commonjs/types/SummaryTypes.js.map +1 -0
- package/lib/commonjs/types/SyncTypes.js +33 -0
- package/lib/commonjs/types/SyncTypes.js.map +1 -0
- package/lib/commonjs/types/WriteNutrition.js +18 -0
- package/lib/commonjs/types/WriteNutrition.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 +28 -0
- package/lib/commonjs/utils/getRookModule.js.map +1 -0
- package/{src/utils/isModuleReady.ts → lib/commonjs/utils/isModuleReady.js} +10 -4
- 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 +41 -0
- package/lib/commonjs/utils/isValidDate.js.map +1 -0
- package/lib/commonjs/utils/nativeModules.js +29 -0
- package/lib/commonjs/utils/nativeModules.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 +0 -2
- package/lib/module/context/RookSyncGateContext.js.map +1 -1
- package/lib/module/context/RookSyncGateProvider.js +31 -22
- package/lib/module/context/RookSyncGateProvider.js.map +1 -1
- package/lib/module/context/RookSyncGateReducer.js +12 -4
- package/lib/module/context/RookSyncGateReducer.js.map +1 -1
- package/lib/module/context/RookSyncGateTypes.js +0 -2
- package/lib/module/context/index.js +2 -0
- package/lib/module/context/index.js.map +1 -0
- package/lib/module/hooks/index.js +11 -0
- package/lib/module/hooks/index.js.map +1 -0
- package/lib/module/hooks/useRookAPISources.js +16 -10
- package/lib/module/hooks/useRookAPISources.js.map +1 -1
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js +12 -11
- package/lib/module/hooks/useRookAndroidBackgroundSteps.js.map +1 -1
- package/lib/module/hooks/useRookAppleHealth.js +10 -9
- package/lib/module/hooks/useRookAppleHealth.js.map +1 -1
- package/lib/module/hooks/useRookConfiguration.js +34 -10
- package/lib/module/hooks/useRookConfiguration.js.map +1 -1
- package/lib/module/hooks/useRookData.js +45 -31
- package/lib/module/hooks/useRookData.js.map +1 -1
- package/lib/module/hooks/useRookHealthConnect.js +10 -9
- package/lib/module/hooks/useRookHealthConnect.js.map +1 -1
- package/lib/module/hooks/useRookPermissions.js +49 -26
- package/lib/module/hooks/useRookPermissions.js.map +1 -1
- package/lib/module/hooks/useRookSamsungHealth.js +20 -8
- package/lib/module/hooks/useRookSamsungHealth.js.map +1 -1
- package/lib/module/hooks/useRookSync.js +32 -23
- package/lib/module/hooks/useRookSync.js.map +1 -1
- package/lib/module/hooks/useRookVariables.js +37 -19
- package/lib/module/hooks/useRookVariables.js.map +1 -1
- package/lib/module/index.js +10 -18
- package/lib/module/index.js.map +1 -1
- package/lib/module/modules/hook/useRookAutoSync.js +40 -27
- package/lib/module/modules/hook/useRookAutoSync.js.map +1 -1
- package/lib/module/modules/types/sendMessageBroadcast.js +1 -1
- package/lib/module/modules/utils/errors.js +0 -2
- package/lib/module/modules/utils/errors.js.map +1 -1
- package/lib/module/types/ActivityEvent.js +0 -2
- package/lib/module/types/AppleHealthNutritionEvent.js +70 -0
- package/lib/module/types/AppleHealthNutritionEvent.js.map +1 -0
- package/lib/module/types/AppleHealthPermissions.js +0 -2
- package/lib/module/types/AppleHealthPermissions.js.map +1 -1
- package/lib/module/types/AuthorizedSources.js +0 -2
- package/lib/module/types/BodySummary.js +0 -2
- package/lib/module/types/DataSource.js +0 -2
- package/lib/module/types/DataSource.js.map +1 -1
- package/lib/module/types/DiagnosticState.js +2 -0
- package/lib/module/types/DiagnosticState.js.map +1 -0
- package/lib/module/types/HCMealData.js +59 -0
- package/lib/module/types/HCMealData.js.map +1 -0
- package/lib/module/types/HeartRateEvent.js +1 -1
- package/lib/module/types/PermissionsType.js +1 -1
- package/lib/module/types/PhysicalSummary.js +0 -2
- package/lib/module/types/SDKSources.js +0 -2
- package/lib/module/types/SDKSources.js.map +1 -1
- package/lib/module/types/SamsungHealthPermissions.js +0 -3
- package/lib/module/types/SamsungHealthPermissions.js.map +1 -1
- package/lib/module/types/SleepSummary.js +0 -2
- package/lib/module/types/SummaryTypes.js +1 -1
- package/lib/module/types/SyncTypes.js +0 -2
- package/lib/module/types/SyncTypes.js.map +1 -1
- package/lib/module/types/WriteNutrition.js +12 -0
- package/lib/module/types/WriteNutrition.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 +22 -0
- package/lib/module/utils/getRookModule.js.map +1 -0
- package/lib/module/utils/isModuleReady.js +0 -2
- package/lib/module/utils/isModuleReady.js.map +1 -1
- package/lib/module/utils/isRunningOnAndroid.js +0 -2
- package/lib/module/utils/isRunningOnAndroid.js.map +1 -1
- package/lib/module/utils/isRunningOniOS.js +0 -2
- package/lib/module/utils/isRunningOniOS.js.map +1 -1
- package/lib/module/utils/isValidDate.js +20 -2
- package/lib/module/utils/isValidDate.js.map +1 -1
- package/lib/module/utils/nativeModules.js +23 -0
- package/lib/module/utils/nativeModules.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.map +1 -1
- package/lib/typescript/src/context/RookSyncGateProvider.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateReducer.d.ts.map +1 -1
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts +14 -4
- package/lib/typescript/src/context/RookSyncGateTypes.d.ts.map +1 -1
- 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 +11 -0
- package/lib/typescript/src/hooks/index.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useRookAPISources.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAndroidBackgroundSteps.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookAppleHealth.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts +3 -1
- package/lib/typescript/src/hooks/useRookConfiguration.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookData.d.ts +2 -2
- package/lib/typescript/src/hooks/useRookData.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookHealthConnect.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookPermissions.d.ts +2 -0
- package/lib/typescript/src/hooks/useRookPermissions.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookSamsungHealth.d.ts +6 -0
- package/lib/typescript/src/hooks/useRookSamsungHealth.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookSync.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useRookVariables.d.ts +2 -0
- package/lib/typescript/src/hooks/useRookVariables.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +8 -17
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/modules/hook/useRookAutoSync.d.ts.map +1 -1
- package/lib/typescript/src/types/AppleHealthNutritionEvent.d.ts +76 -0
- package/lib/typescript/src/types/AppleHealthNutritionEvent.d.ts.map +1 -0
- package/lib/typescript/src/types/AuthorizedSources.d.ts +0 -11
- package/lib/typescript/src/types/AuthorizedSources.d.ts.map +1 -1
- package/lib/typescript/src/types/DiagnosticState.d.ts +13 -0
- package/lib/typescript/src/types/DiagnosticState.d.ts.map +1 -0
- package/lib/typescript/src/types/HCMealData.d.ts +60 -0
- package/lib/typescript/src/types/HCMealData.d.ts.map +1 -0
- package/lib/typescript/src/types/HeartRateEvent.d.ts +2 -2
- package/lib/typescript/src/types/HeartRateEvent.d.ts.map +1 -1
- package/lib/typescript/src/types/SamsungHealthPermissions.d.ts +0 -1
- package/lib/typescript/src/types/SamsungHealthPermissions.d.ts.map +1 -1
- package/lib/typescript/src/types/SyncTypes.d.ts +1 -5
- package/lib/typescript/src/types/SyncTypes.d.ts.map +1 -1
- package/lib/typescript/src/types/WriteNutrition.d.ts +61 -0
- package/lib/typescript/src/types/WriteNutrition.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 +9 -0
- package/lib/typescript/src/utils/getRookModule.d.ts.map +1 -0
- package/lib/typescript/src/utils/isModuleReady.d.ts.map +1 -1
- package/lib/typescript/src/utils/isValidDate.d.ts +8 -0
- package/lib/typescript/src/utils/isValidDate.d.ts.map +1 -1
- package/lib/typescript/src/utils/nativeModules.d.ts +24 -0
- package/lib/typescript/src/utils/nativeModules.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 +98 -94
- package/react-native-rook-sdk.podspec +45 -0
- package/RNRookSdk.podspec +0 -22
- package/ios/Encodable.swift +0 -25
- package/ios/RookEntry.swift +0 -61
- package/ios/RookSdk-Bridging-Header.h +0 -12
- package/ios/boost-boost_privacy-Bridging-Header.h +0 -4
- package/lib/module/NativeRookSdk.js +0 -13
- package/lib/module/NativeRookSdk.js.map +0 -1
- package/lib/module/package.json +0 -1
- package/lib/module/types/Rook.js +0 -2
- package/lib/typescript/package.json +0 -1
- package/lib/typescript/src/NativeRookSdk.d.ts +0 -116
- package/lib/typescript/src/NativeRookSdk.d.ts.map +0 -1
- package/lib/typescript/src/types/Rook.d.ts +0 -9
- package/lib/typescript/src/types/Rook.d.ts.map +0 -1
- package/src/NativeRookSdk.ts +0 -274
- package/src/context/RookSyncGateProvider.tsx +0 -78
- package/src/context/RookSyncGateTypes.ts +0 -34
- package/src/hooks/useRookAndroidBackgroundSteps.ts +0 -81
- package/src/hooks/useRookAppleHealth.ts +0 -55
- package/src/hooks/useRookConfiguration.ts +0 -82
- package/src/hooks/useRookData.ts +0 -122
- package/src/hooks/useRookHealthConnect.ts +0 -59
- package/src/hooks/useRookPermissions.ts +0 -224
- package/src/hooks/useRookSamsungHealth.ts +0 -37
- package/src/hooks/useRookSync.ts +0 -157
- package/src/hooks/useRookVariables.ts +0 -77
- package/src/index.tsx +0 -28
- package/src/modules/hook/useRookAutoSync.ts +0 -305
- package/src/modules/types/sendMessageBroadcast.ts +0 -5
- package/src/modules/utils/errors.ts +0 -9
- package/src/types/ActivityEvent.ts +0 -159
- package/src/types/AppleHealthPermissions.ts +0 -49
- package/src/types/AuthorizedSources.ts +0 -33
- package/src/types/BodySummary.ts +0 -116
- package/src/types/DataSource.ts +0 -16
- package/src/types/HeartRateEvent.ts +0 -26
- package/src/types/PermissionsType.ts +0 -9
- package/src/types/PhysicalSummary.ts +0 -84
- package/src/types/Rook.ts +0 -8
- package/src/types/SDKSources.ts +0 -5
- package/src/types/SamsungHealthPermissions.ts +0 -16
- package/src/types/SleepSummary.ts +0 -66
- package/src/types/SummaryTypes.ts +0 -70
- package/src/types/SyncTypes.ts +0 -63
- package/src/utils/isRunningOnAndroid.ts +0 -10
- package/src/utils/isRunningOniOS.ts +0 -10
- package/src/utils/isValidDate.ts +0 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useRef","Platform","getNativeModule","isModuleReady","isValidDate","nativeModules","SDKDataSource","useRookSyncGateContext","packageInfo","useRookSync","rookSync","select","android","SYNC","default","ios","MANUAL_SYNC","state","ready","enableLogs","createResultPayload","result","undefined","status","error","convertToPromise","params","toPromise","Promise","resolve","syncWithOutParams","callback","isAndroid","hcResult","current","sync","shSync","err","healthConnect","samsungHealth","appleHealth","syncWithParams","date","promisesToRun","sources","summary","args","bridgeMethod","shBridgeMethod","unshift","shouldSyncSO","includes","APPLE_HEALTH","HEALTH_CONNECT","shouldSyncSH","SAMSUNG_HEALTH","push","results","all","SOResult","shift","shResult","Error","syncEvents","event","parsedEvent","toLowerCase","syncEvent","shSyncEvent"],"sourceRoot":"../../../src","sources":["hooks/useRookSync.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import RookSdk from "../NativeRookSdk.js";
|
|
1
|
+
import { useRef } from 'react';
|
|
4
2
|
import { Platform } from 'react-native';
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
3
|
+
import { useRookSyncGateContext } from '../context/RookSyncGateContext';
|
|
4
|
+
import getNativeModule from '../utils/getNativeModule';
|
|
5
|
+
import { isModuleReady } from '../utils/isModuleReady';
|
|
6
|
+
import nativeModules from '../utils/nativeModules';
|
|
7
|
+
import { packageInfo } from '../utils/packageInfo';
|
|
8
|
+
import { SDKDataSource } from '../types/SDKSources';
|
|
8
9
|
/**
|
|
9
10
|
* The `useRookVariables` hook returns an object with a `ready` boolean and an
|
|
10
11
|
* asynchronous function `getTodaySteps` that retrieves the number of steps taken today.
|
|
@@ -17,6 +18,10 @@ import { SDKDataSource } from "../types/SDKSources.js";
|
|
|
17
18
|
* asynchronously and returns a Promise<string> representing the number of calories burned today.
|
|
18
19
|
*/
|
|
19
20
|
export const useRookVariables = () => {
|
|
21
|
+
const rookSync = useRef(getNativeModule(Platform.select({
|
|
22
|
+
android: () => nativeModules.android.SYNC,
|
|
23
|
+
default: () => nativeModules.ios.SYNC
|
|
24
|
+
})()));
|
|
20
25
|
const {
|
|
21
26
|
state: {
|
|
22
27
|
ready
|
|
@@ -29,14 +34,14 @@ export const useRookVariables = () => {
|
|
|
29
34
|
*/
|
|
30
35
|
const getTodaySteps = async source => {
|
|
31
36
|
isModuleReady(ready);
|
|
32
|
-
if (
|
|
33
|
-
return
|
|
37
|
+
if (packageInfo.isAndroid && source === SDKDataSource.HEALTH_CONNECT) {
|
|
38
|
+
return rookSync.current.syncTodayHealthConnectStepsCount();
|
|
34
39
|
}
|
|
35
|
-
if (
|
|
36
|
-
return
|
|
40
|
+
if (packageInfo.isAndroid && source === SDKDataSource.SAMSUNG_HEALTH) {
|
|
41
|
+
return rookSync.current.syncTodaySamsungHealthStepsCount();
|
|
37
42
|
}
|
|
38
|
-
if (
|
|
39
|
-
return
|
|
43
|
+
if (!packageInfo.isAndroid && source === SDKDataSource.APPLE_HEALTH) {
|
|
44
|
+
return rookSync.current.getTodayAppleHealthSteps();
|
|
40
45
|
}
|
|
41
46
|
throw new Error('Invalid SDK datasource');
|
|
42
47
|
};
|
|
@@ -47,21 +52,34 @@ export const useRookVariables = () => {
|
|
|
47
52
|
*/
|
|
48
53
|
const getTodayCalories = async source => {
|
|
49
54
|
isModuleReady(ready);
|
|
50
|
-
if (
|
|
51
|
-
return
|
|
55
|
+
if (packageInfo.isAndroid && source === SDKDataSource.HEALTH_CONNECT) {
|
|
56
|
+
return rookSync.current.syncTodayCaloriesCount();
|
|
52
57
|
}
|
|
53
|
-
if (
|
|
54
|
-
return
|
|
58
|
+
if (packageInfo.isAndroid && source === SDKDataSource.SAMSUNG_HEALTH) {
|
|
59
|
+
return rookSync.current.syncSHTodayCaloriesCount();
|
|
55
60
|
}
|
|
56
|
-
if (
|
|
57
|
-
return
|
|
61
|
+
if (!packageInfo.isAndroid && source === SDKDataSource.APPLE_HEALTH) {
|
|
62
|
+
return rookSync.current.syncTodayCaloriesCount();
|
|
58
63
|
}
|
|
59
64
|
throw new Error('Invalid SDK datasource');
|
|
60
65
|
};
|
|
66
|
+
const getTodayHeartRate = async source => {
|
|
67
|
+
if (packageInfo.isAndroid && source === SDKDataSource.HEALTH_CONNECT) {
|
|
68
|
+
return rookSync.current.getTodayHeartRate();
|
|
69
|
+
}
|
|
70
|
+
if (packageInfo.isAndroid && source === SDKDataSource.SAMSUNG_HEALTH) {
|
|
71
|
+
return rookSync.current.getSHTodayHeartRate();
|
|
72
|
+
}
|
|
73
|
+
if (!packageInfo.isAndroid && source === SDKDataSource.APPLE_HEALTH) {
|
|
74
|
+
return rookSync.current.getTodayHeartRate();
|
|
75
|
+
}
|
|
76
|
+
throw new Error('Please check the data source');
|
|
77
|
+
};
|
|
61
78
|
return {
|
|
62
79
|
ready,
|
|
63
80
|
getTodaySteps,
|
|
64
|
-
getTodayCalories
|
|
81
|
+
getTodayCalories,
|
|
82
|
+
getTodayHeartRate
|
|
65
83
|
};
|
|
66
84
|
};
|
|
67
85
|
//# sourceMappingURL=useRookVariables.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["useRef","Platform","useRookSyncGateContext","getNativeModule","isModuleReady","nativeModules","packageInfo","SDKDataSource","useRookVariables","rookSync","select","android","SYNC","default","ios","state","ready","getTodaySteps","source","isAndroid","HEALTH_CONNECT","current","syncTodayHealthConnectStepsCount","SAMSUNG_HEALTH","syncTodaySamsungHealthStepsCount","APPLE_HEALTH","getTodayAppleHealthSteps","Error","getTodayCalories","syncTodayCaloriesCount","syncSHTodayCaloriesCount","getTodayHeartRate","getSHTodayHeartRate"],"sourceRoot":"../../../src","sources":["hooks/useRookVariables.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1,19 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export
|
|
10
|
-
export {
|
|
11
|
-
export { useRookHealthConnect } from "./hooks/useRookHealthConnect.js";
|
|
12
|
-
export { useRookSamsungHealth } from "./hooks/useRookSamsungHealth.js";
|
|
13
|
-
export { useRookVariables } from "./hooks/useRookVariables.js";
|
|
14
|
-
export { useRookSync } from "./hooks/useRookSync.js";
|
|
15
|
-
export { APIDataSource } from "./types/DataSource.js";
|
|
16
|
-
export { SDKDataSource } from "./types/SDKSources.js";
|
|
17
|
-
export { AppleHealthPermission } from "./types/AppleHealthPermissions.js";
|
|
18
|
-
export { SharedHealthEvents, UniqueAppleHealthEvents, UniqueSamsungHealthEvents, UniqueHealthConnectEvents } from "./types/SyncTypes.js";
|
|
1
|
+
export { getRookModule } from './utils/getRookModule';
|
|
2
|
+
export * from './context';
|
|
3
|
+
export * from './hooks';
|
|
4
|
+
export { SDKDataSource } from './types/SDKSources';
|
|
5
|
+
export { APIDataSource } from './types/DataSource';
|
|
6
|
+
export { SamsungHealthPermission } from './types/SamsungHealthPermissions';
|
|
7
|
+
export { AppleHealthPermission } from './types/AppleHealthPermissions';
|
|
8
|
+
export { MealDataType } from './types/WriteNutrition';
|
|
9
|
+
export * from './types/DiagnosticState';
|
|
10
|
+
export { SharedHealthEvents, UniqueAppleHealthEvents, UniqueSamsungHealthEvents, UniqueHealthConnectEvents } from './types/SyncTypes';
|
|
19
11
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["getRookModule","SDKDataSource","APIDataSource","SamsungHealthPermission","AppleHealthPermission","MealDataType","SharedHealthEvents","UniqueAppleHealthEvents","UniqueSamsungHealthEvents","UniqueHealthConnectEvents"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,uBAAuB,QAAQ,kCAAkC;AAC1E,SAASC,qBAAqB,QAAQ,gCAAgC;AAEtE,SAA8BC,YAAY,QAAQ,wBAAwB;AAC1E,cAAc,yBAAyB;AACvC,SACEC,kBAAkB,EAClBC,uBAAuB,EACvBC,yBAAyB,EACzBC,yBAAyB,QACpB,mBAAmB","ignoreList":[]}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
1
|
/* eslint-disable react-hooks/exhaustive-deps */
|
|
4
|
-
import RookSdk from "../../NativeRookSdk.js";
|
|
5
2
|
import { useEffect, useRef, useState } from 'react';
|
|
6
3
|
import { AppState, Platform } from 'react-native';
|
|
7
|
-
import { errors } from
|
|
8
|
-
import
|
|
4
|
+
import { errors } from '../utils/errors';
|
|
5
|
+
import getNativeModule from '../../utils/getNativeModule';
|
|
6
|
+
import nativeModules from '../../utils/nativeModules';
|
|
9
7
|
const MESSAGE_TYPE = 'ROOK_BACKGROUND_ENABLED';
|
|
10
8
|
|
|
11
9
|
/**
|
|
@@ -37,7 +35,7 @@ export const useRookAutoSync = ({
|
|
|
37
35
|
if (
|
|
38
36
|
// Check previous state to check if he app was inactive or in background
|
|
39
37
|
// and then pass to be active
|
|
40
|
-
appState.current
|
|
38
|
+
appState.current.match(/inactive|background/) && nextAppState === 'active') {
|
|
41
39
|
setChangeState(prev => prev + 1);
|
|
42
40
|
}
|
|
43
41
|
appState.current = nextAppState;
|
|
@@ -53,10 +51,10 @@ export const useRookAutoSync = ({
|
|
|
53
51
|
const startBackgroundServices = () => {
|
|
54
52
|
const {
|
|
55
53
|
clientUUID,
|
|
56
|
-
|
|
54
|
+
secret,
|
|
57
55
|
ready
|
|
58
56
|
} = state;
|
|
59
|
-
if (!ready || !clientUUID || !
|
|
57
|
+
if (!ready || !clientUUID || !secret) {
|
|
60
58
|
return;
|
|
61
59
|
}
|
|
62
60
|
if (Platform.OS === 'android') {
|
|
@@ -67,14 +65,15 @@ export const useRookAutoSync = ({
|
|
|
67
65
|
};
|
|
68
66
|
const isValidUser = async () => {
|
|
69
67
|
try {
|
|
70
|
-
const
|
|
68
|
+
const rookModule = getNativeModule(nativeModules.android.CONFIGURATION);
|
|
69
|
+
const userID = await rookModule.getUserID();
|
|
71
70
|
if (userID) return true;
|
|
72
71
|
if (enableLogs) console.error(errors.noUserIDAndroidBackground);
|
|
73
72
|
throw new Error(errors.noUserIDAndroidBackground);
|
|
74
73
|
} catch (error) {
|
|
75
74
|
sendMessageToBroadcast({
|
|
76
75
|
type: 'ROOK_BACKGROUND_ENABLED',
|
|
77
|
-
message:
|
|
76
|
+
message: 'There is not a user id',
|
|
78
77
|
value: false
|
|
79
78
|
});
|
|
80
79
|
return false;
|
|
@@ -82,14 +81,17 @@ export const useRookAutoSync = ({
|
|
|
82
81
|
};
|
|
83
82
|
const tryToStartBackgroundSync = async () => {
|
|
84
83
|
try {
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
const rookPermissions = getNativeModule(nativeModules.android.PERMISSIONS);
|
|
85
|
+
const backgroundStatus = await rookPermissions.checkHealthConnectPermissionsPartially();
|
|
86
|
+
if (!backgroundStatus) throw new Error('No permission granted or not available');
|
|
87
|
+
const rookBackground = getNativeModule(nativeModules.android.BACKGROUND);
|
|
88
|
+
const result = await rookBackground.scheduleBackgroundSync(enableLogs);
|
|
88
89
|
return result;
|
|
89
90
|
} catch (error) {
|
|
91
|
+
console.log(error);
|
|
90
92
|
sendMessageToBroadcast({
|
|
91
93
|
type: 'ROOK_BACKGROUND_ENABLED',
|
|
92
|
-
message:
|
|
94
|
+
message: 'Health Connect background is not available on the device or the user does not grants permission',
|
|
93
95
|
value: false
|
|
94
96
|
});
|
|
95
97
|
return false;
|
|
@@ -97,14 +99,16 @@ export const useRookAutoSync = ({
|
|
|
97
99
|
};
|
|
98
100
|
const tryToStartForegroundSync = async () => {
|
|
99
101
|
try {
|
|
100
|
-
const
|
|
101
|
-
const
|
|
102
|
+
const rookPermissionsModule = getNativeModule(nativeModules.android.PERMISSIONS);
|
|
103
|
+
const hasHCPermissions = await rookPermissionsModule.checkHealthConnectPermissions();
|
|
104
|
+
const hasAndroidPermissions = await rookPermissionsModule.hasAndroidBackgroundPermissions();
|
|
102
105
|
if (!hasHCPermissions || !hasAndroidPermissions) {
|
|
103
106
|
if (enableLogs) console.error(errors.autoStartAndroidBackgroundSync);
|
|
104
107
|
throw new Error(errors.autoStartAndroidBackgroundSync);
|
|
105
108
|
}
|
|
109
|
+
const rookStepsModule = getNativeModule(nativeModules.android.STEPS);
|
|
106
110
|
if (AppState.currentState === 'active' && appState.current === 'active') {
|
|
107
|
-
await
|
|
111
|
+
await rookStepsModule.enableBackgroundAndroidSteps();
|
|
108
112
|
return true;
|
|
109
113
|
}
|
|
110
114
|
return false;
|
|
@@ -119,9 +123,11 @@ export const useRookAutoSync = ({
|
|
|
119
123
|
};
|
|
120
124
|
const tryToStartSamsungHealthSync = async () => {
|
|
121
125
|
try {
|
|
122
|
-
const
|
|
126
|
+
const rookPermissionsModule = getNativeModule(nativeModules.android.PERMISSIONS);
|
|
127
|
+
const isAvailable = await rookPermissionsModule.checkSamsungAvailability();
|
|
123
128
|
if (isAvailable !== 'INSTALLED') return false;
|
|
124
|
-
|
|
129
|
+
const rookSyncModule = getNativeModule(nativeModules.android.SYNC);
|
|
130
|
+
await rookSyncModule.enableSamsungSync();
|
|
125
131
|
return true;
|
|
126
132
|
} catch (error) {
|
|
127
133
|
sendMessageToBroadcast({
|
|
@@ -143,10 +149,10 @@ export const useRookAutoSync = ({
|
|
|
143
149
|
const startAndroidBackgroundSync = async () => {
|
|
144
150
|
const {
|
|
145
151
|
clientUUID,
|
|
146
|
-
|
|
152
|
+
secret,
|
|
147
153
|
ready
|
|
148
154
|
} = state;
|
|
149
|
-
if (!ready || !clientUUID || !
|
|
155
|
+
if (!ready || !clientUUID || !secret) {
|
|
150
156
|
return;
|
|
151
157
|
}
|
|
152
158
|
try {
|
|
@@ -171,7 +177,6 @@ export const useRookAutoSync = ({
|
|
|
171
177
|
} catch (error) {
|
|
172
178
|
sendMessageToBroadcast({
|
|
173
179
|
type: 'ROOK_BACKGROUND_ENABLED',
|
|
174
|
-
message: error.message,
|
|
175
180
|
value: false
|
|
176
181
|
});
|
|
177
182
|
}
|
|
@@ -186,7 +191,11 @@ export const useRookAutoSync = ({
|
|
|
186
191
|
*/
|
|
187
192
|
const startIOSBackgroundSync = async () => {
|
|
188
193
|
try {
|
|
189
|
-
const
|
|
194
|
+
const rookPermissions = getNativeModule(nativeModules.ios.PERMISSIONS);
|
|
195
|
+
const rookBackground = getNativeModule(nativeModules.ios.BACKGROUND);
|
|
196
|
+
const rookConfigModule = getNativeModule(nativeModules.ios.CONFIGURATION);
|
|
197
|
+
const rookSync = getNativeModule(nativeModules.ios.SYNC);
|
|
198
|
+
const userID = await rookConfigModule.getUserID();
|
|
190
199
|
if (!userID) {
|
|
191
200
|
if (enableLogs) console.error(errors.noUserIDAndroidBackground);
|
|
192
201
|
sendMessageToBroadcast({
|
|
@@ -196,10 +205,10 @@ export const useRookAutoSync = ({
|
|
|
196
205
|
});
|
|
197
206
|
return;
|
|
198
207
|
}
|
|
199
|
-
const status = await
|
|
208
|
+
const status = await rookPermissions.checkPermissionsStatus(null);
|
|
200
209
|
if (status === 'PERMISSION_NOT_REQUESTED') throw new Error('Permissions required');
|
|
201
|
-
await
|
|
202
|
-
|
|
210
|
+
await rookBackground.enableBackGroundUpdates();
|
|
211
|
+
rookSync.sync(() => {
|
|
203
212
|
sendMessageToBroadcast({
|
|
204
213
|
type: MESSAGE_TYPE,
|
|
205
214
|
value: true,
|
|
@@ -230,7 +239,11 @@ export const useRookAutoSync = ({
|
|
|
230
239
|
* containing information to be sent as a broadcast message.
|
|
231
240
|
*/
|
|
232
241
|
const sendMessageToBroadcast = message => {
|
|
233
|
-
|
|
242
|
+
const rookSyncModule = getNativeModule(Platform.select({
|
|
243
|
+
android: () => nativeModules.android.MAIN,
|
|
244
|
+
default: () => nativeModules.ios.MAIN
|
|
245
|
+
})());
|
|
246
|
+
rookSyncModule.sendMessageToBroadcast(message).then().catch();
|
|
234
247
|
};
|
|
235
248
|
return {
|
|
236
249
|
startBackgroundServices
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
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","secret","OS","startAndroidBackgroundSync","startIOSBackgroundSync","isValidUser","rookModule","android","CONFIGURATION","userID","getUserID","console","error","noUserIDAndroidBackground","Error","sendMessageToBroadcast","type","message","value","tryToStartBackgroundSync","rookPermissions","PERMISSIONS","backgroundStatus","checkHealthConnectPermissionsPartially","rookBackground","BACKGROUND","result","scheduleBackgroundSync","log","tryToStartForegroundSync","rookPermissionsModule","hasHCPermissions","checkHealthConnectPermissions","hasAndroidPermissions","hasAndroidBackgroundPermissions","autoStartAndroidBackgroundSync","rookStepsModule","STEPS","enableBackgroundAndroidSteps","tryToStartSamsungHealthSync","isAvailable","checkSamsungAvailability","rookSyncModule","SYNC","enableSamsungSync","enabledSources","isValid","isSamsungEnabled","isEnabled","push","isForegroundEnabled","join","ios","rookConfigModule","rookSync","status","checkPermissionsStatus","enableBackGroundUpdates","sync","err","autoStartIOSBackgroundSync","includes","select","MAIN","default","then","catch"],"sourceRoot":"../../../../src","sources":["modules/hook/useRookAutoSync.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
|
|
2
2
|
//# sourceMappingURL=sendMessageBroadcast.js.map
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
1
|
export const errors = {
|
|
4
2
|
autoStartAndroidBackgroundSync: 'ROOK - We try to start the health connect background sync but some permissions are missing, please grant permissions on health connect and android permissions, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/grantpermissons/#request-permissions',
|
|
5
3
|
autoStartIOSBackgroundSync: 'ROOK - We try to start the background sync but some error occurred please check the permissions are granted and data exists in the device, https://docs.tryrook.io/docs/rookconnect/sdk/reactnative/fundamentals/grantpermissons/#request-permissions',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["errors","autoStartAndroidBackgroundSync","autoStartIOSBackgroundSync","noUserIDAndroidBackground"],"sourceRoot":"../../../../src","sources":["modules/utils/errors.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["errors","autoStartAndroidBackgroundSync","autoStartIOSBackgroundSync","noUserIDAndroidBackground"],"sourceRoot":"../../../../src","sources":["modules/utils/errors.ts"],"mappings":"AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,8BAA8B,EAC5B,4QAA4Q;EAE9QC,0BAA0B,EACxB,wPAAwP;EAC1PC,yBAAyB,EACvB;AACJ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the unit of measurement for nutrition.
|
|
3
|
+
* Map these integers to your SDK's unit requirements (e.g., Grams, Calories).
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Main Interface for Apple Health Nutrition Insertion
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
export const parseWriteNutritionToAH = data => {
|
|
11
|
+
return {
|
|
12
|
+
name: data.name,
|
|
13
|
+
date: data.date,
|
|
14
|
+
quantity: {
|
|
15
|
+
unit: data.unit ?? 1,
|
|
16
|
+
amount: data.amount ?? 0
|
|
17
|
+
},
|
|
18
|
+
energyWaterData: {
|
|
19
|
+
dietaryKiloCaloriesEnergyConsumed: data.calories,
|
|
20
|
+
dietaryMilliLiterWater: data.water
|
|
21
|
+
},
|
|
22
|
+
carbohydratesData: {
|
|
23
|
+
dietaryGramCarbohydrates: data.totalCarbohydrates,
|
|
24
|
+
dietaryGramFiber: data.dietaryFiber,
|
|
25
|
+
dietaryGramSugar: data.sugar
|
|
26
|
+
},
|
|
27
|
+
fatsData: {
|
|
28
|
+
dietaryGramFatTotal: data.totalFat,
|
|
29
|
+
dietaryGramFatSaturated: data.saturatedFat,
|
|
30
|
+
dietaryGramFatMonounsaturated: data.monounsaturatedFat,
|
|
31
|
+
dietaryGramFatPolyunsaturated: data.polyunsaturatedFat
|
|
32
|
+
},
|
|
33
|
+
proteinData: {
|
|
34
|
+
dietaryGramProtein: data.protein,
|
|
35
|
+
dietaryMilliGramCholesterol: data.cholesterol
|
|
36
|
+
},
|
|
37
|
+
vitaminsData: {
|
|
38
|
+
dietaryMicroGramVitaminA: data.vitaminA,
|
|
39
|
+
dietaryMilliGramVitaminB6: data.vitaminB6,
|
|
40
|
+
dietaryMicroGramVitaminB12: data.vitaminB12,
|
|
41
|
+
dietaryMilliGramVitaminC: data.vitaminC,
|
|
42
|
+
dietaryMicroGramVitaminD: data.vitaminD,
|
|
43
|
+
dietaryMilliGramVitaminE: data.vitaminE,
|
|
44
|
+
dietaryMicroGramVitaminK: data.vitaminK,
|
|
45
|
+
dietaryMilliGramThiamin: data.thiamin,
|
|
46
|
+
dietaryMilliGramRiboflavin: data.riboflavin,
|
|
47
|
+
dietaryMilliGramNiacin: data.niacin,
|
|
48
|
+
dietaryMilliGramPantothenicAcid: data.pantothenicAcid,
|
|
49
|
+
dietaryMicroGramFolate: data.folate,
|
|
50
|
+
dietaryMicroGramBiotin: data.biotin
|
|
51
|
+
},
|
|
52
|
+
mineralData: {
|
|
53
|
+
dietaryMilliGramsCalcium: data.calcium,
|
|
54
|
+
dietaryMilliGramsChloride: data.chloride,
|
|
55
|
+
dietaryMilliGramsChromium: data.chromium,
|
|
56
|
+
dietaryMilliGramsCopper: data.copper,
|
|
57
|
+
dietaryMilliGramsIodine: data.iodine,
|
|
58
|
+
dietaryMilliGramsIron: data.iron,
|
|
59
|
+
dietaryMilliGramsMagnesium: data.magnesium,
|
|
60
|
+
dietaryMilliGramsManganese: data.manganese,
|
|
61
|
+
dietaryMilliGramsMolybdenum: data.molybdenum,
|
|
62
|
+
dietaryMilliGramsPhosphorus: data.phosphorus,
|
|
63
|
+
dietaryMilliGramsPotassium: data.potassium,
|
|
64
|
+
dietaryMilliGramsSelenium: data.selenium,
|
|
65
|
+
dietaryMilliGramsSodium: data.sodium,
|
|
66
|
+
dietaryMilliGramsZinc: data.zinc
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=AppleHealthNutritionEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["parseWriteNutritionToAH","data","name","date","quantity","unit","amount","energyWaterData","dietaryKiloCaloriesEnergyConsumed","calories","dietaryMilliLiterWater","water","carbohydratesData","dietaryGramCarbohydrates","totalCarbohydrates","dietaryGramFiber","dietaryFiber","dietaryGramSugar","sugar","fatsData","dietaryGramFatTotal","totalFat","dietaryGramFatSaturated","saturatedFat","dietaryGramFatMonounsaturated","monounsaturatedFat","dietaryGramFatPolyunsaturated","polyunsaturatedFat","proteinData","dietaryGramProtein","protein","dietaryMilliGramCholesterol","cholesterol","vitaminsData","dietaryMicroGramVitaminA","vitaminA","dietaryMilliGramVitaminB6","vitaminB6","dietaryMicroGramVitaminB12","vitaminB12","dietaryMilliGramVitaminC","vitaminC","dietaryMicroGramVitaminD","vitaminD","dietaryMilliGramVitaminE","vitaminE","dietaryMicroGramVitaminK","vitaminK","dietaryMilliGramThiamin","thiamin","dietaryMilliGramRiboflavin","riboflavin","dietaryMilliGramNiacin","niacin","dietaryMilliGramPantothenicAcid","pantothenicAcid","dietaryMicroGramFolate","folate","dietaryMicroGramBiotin","biotin","mineralData","dietaryMilliGramsCalcium","calcium","dietaryMilliGramsChloride","chloride","dietaryMilliGramsChromium","chromium","dietaryMilliGramsCopper","copper","dietaryMilliGramsIodine","iodine","dietaryMilliGramsIron","iron","dietaryMilliGramsMagnesium","magnesium","dietaryMilliGramsManganese","manganese","dietaryMilliGramsMolybdenum","molybdenum","dietaryMilliGramsPhosphorus","phosphorus","dietaryMilliGramsPotassium","potassium","dietaryMilliGramsSelenium","selenium","dietaryMilliGramsSodium","sodium","dietaryMilliGramsZinc","zinc"],"sourceRoot":"../../../src","sources":["types/AppleHealthNutritionEvent.ts"],"mappings":"AAEA;AACA;AACA;AACA;;AA8DA;AACA;AACA;;AAcA,OAAO,MAAMA,uBAAuB,GAClCC,IAAoB,IACU;EAC9B,OAAO;IACLC,IAAI,EAAED,IAAI,CAACC,IAAI;IACfC,IAAI,EAAEF,IAAI,CAACE,IAAI;IACfC,QAAQ,EAAE;MAAEC,IAAI,EAAEJ,IAAI,CAACI,IAAI,IAAI,CAAC;MAAEC,MAAM,EAAEL,IAAI,CAACK,MAAM,IAAI;IAAE,CAAC;IAC5DC,eAAe,EAAE;MACfC,iCAAiC,EAAEP,IAAI,CAACQ,QAAQ;MAChDC,sBAAsB,EAAET,IAAI,CAACU;IAC/B,CAAC;IACDC,iBAAiB,EAAE;MACjBC,wBAAwB,EAAEZ,IAAI,CAACa,kBAAkB;MACjDC,gBAAgB,EAAEd,IAAI,CAACe,YAAY;MACnCC,gBAAgB,EAAEhB,IAAI,CAACiB;IACzB,CAAC;IACDC,QAAQ,EAAE;MACRC,mBAAmB,EAAEnB,IAAI,CAACoB,QAAQ;MAClCC,uBAAuB,EAAErB,IAAI,CAACsB,YAAY;MAC1CC,6BAA6B,EAAEvB,IAAI,CAACwB,kBAAkB;MACtDC,6BAA6B,EAAEzB,IAAI,CAAC0B;IACtC,CAAC;IACDC,WAAW,EAAE;MACXC,kBAAkB,EAAE5B,IAAI,CAAC6B,OAAO;MAChCC,2BAA2B,EAAE9B,IAAI,CAAC+B;IACpC,CAAC;IACDC,YAAY,EAAE;MACZC,wBAAwB,EAAEjC,IAAI,CAACkC,QAAQ;MACvCC,yBAAyB,EAAEnC,IAAI,CAACoC,SAAS;MACzCC,0BAA0B,EAAErC,IAAI,CAACsC,UAAU;MAC3CC,wBAAwB,EAAEvC,IAAI,CAACwC,QAAQ;MACvCC,wBAAwB,EAAEzC,IAAI,CAAC0C,QAAQ;MACvCC,wBAAwB,EAAE3C,IAAI,CAAC4C,QAAQ;MACvCC,wBAAwB,EAAE7C,IAAI,CAAC8C,QAAQ;MACvCC,uBAAuB,EAAE/C,IAAI,CAACgD,OAAO;MACrCC,0BAA0B,EAAEjD,IAAI,CAACkD,UAAU;MAC3CC,sBAAsB,EAAEnD,IAAI,CAACoD,MAAM;MACnCC,+BAA+B,EAAErD,IAAI,CAACsD,eAAe;MACrDC,sBAAsB,EAAEvD,IAAI,CAACwD,MAAM;MACnCC,sBAAsB,EAAEzD,IAAI,CAAC0D;IAC/B,CAAC;IACDC,WAAW,EAAE;MACXC,wBAAwB,EAAE5D,IAAI,CAAC6D,OAAO;MACtCC,yBAAyB,EAAE9D,IAAI,CAAC+D,QAAQ;MACxCC,yBAAyB,EAAEhE,IAAI,CAACiE,QAAQ;MACxCC,uBAAuB,EAAElE,IAAI,CAACmE,MAAM;MACpCC,uBAAuB,EAAEpE,IAAI,CAACqE,MAAM;MACpCC,qBAAqB,EAAEtE,IAAI,CAACuE,IAAI;MAChCC,0BAA0B,EAAExE,IAAI,CAACyE,SAAS;MAC1CC,0BAA0B,EAAE1E,IAAI,CAAC2E,SAAS;MAC1CC,2BAA2B,EAAE5E,IAAI,CAAC6E,UAAU;MAC5CC,2BAA2B,EAAE9E,IAAI,CAAC+E,UAAU;MAC5CC,0BAA0B,EAAEhF,IAAI,CAACiF,SAAS;MAC1CC,yBAAyB,EAAElF,IAAI,CAACmF,QAAQ;MACxCC,uBAAuB,EAAEpF,IAAI,CAACqF,MAAM;MACpCC,qBAAqB,EAAEtF,IAAI,CAACuF;IAC9B;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AppleHealthPermission"],"sourceRoot":"../../../src","sources":["types/AppleHealthPermissions.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["AppleHealthPermission"],"sourceRoot":"../../../src","sources":["types/AppleHealthPermissions.ts"],"mappings":"AAAA,WAAYA,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["APIDataSource"],"sourceRoot":"../../../src","sources":["types/DataSource.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["APIDataSource"],"sourceRoot":"../../../src","sources":["types/DataSource.ts"],"mappings":"AAQA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/DiagnosticState.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { MealDataType } from './WriteNutrition';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Interface representing nutrition and meal data for Health Connect.
|
|
5
|
+
* * Note: All gram values have a range of [0.0 - 100.0] unless specified otherwise.
|
|
6
|
+
* Energy and macro values have a range of [0.0 - 100,000.0].
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export const parseWriteNutritionToHC = data => {
|
|
10
|
+
return {
|
|
11
|
+
name: data.name,
|
|
12
|
+
startDateTime: data.date,
|
|
13
|
+
endDateTime: data.date,
|
|
14
|
+
type: data.mealType ?? MealDataType.SNACK,
|
|
15
|
+
biotinGrams: data.biotin,
|
|
16
|
+
caffeineGrams: data.caffeine,
|
|
17
|
+
calciumGrams: data.calcium,
|
|
18
|
+
energyKcal: data.calories,
|
|
19
|
+
energyFromFatKcal: data.caloriesFromFat,
|
|
20
|
+
chlorideGrams: data.chloride,
|
|
21
|
+
cholesterolGrams: data.cholesterol,
|
|
22
|
+
chromiumGrams: data.chromium,
|
|
23
|
+
copperGrams: data.copper,
|
|
24
|
+
dietaryFiberGrams: data.dietaryFiber,
|
|
25
|
+
folateGrams: data.folate,
|
|
26
|
+
folicAcidGrams: data.folicAcid,
|
|
27
|
+
iodineGrams: data.iodine,
|
|
28
|
+
ironGrams: data.iron,
|
|
29
|
+
magnesiumGrams: data.magnesium,
|
|
30
|
+
manganeseGrams: data.manganese,
|
|
31
|
+
molybdenumGrams: data.molybdenum,
|
|
32
|
+
monounsaturatedFatGrams: data.monounsaturatedFat,
|
|
33
|
+
niacinGrams: data.niacin,
|
|
34
|
+
pantothenicAcidGrams: data.pantothenicAcid,
|
|
35
|
+
phosphorusGrams: data.phosphorus,
|
|
36
|
+
polyunsaturatedFatGrams: data.polyunsaturatedFat,
|
|
37
|
+
potassiumGrams: data.potassium,
|
|
38
|
+
proteinGrams: data.protein,
|
|
39
|
+
riboflavinGrams: data.riboflavin,
|
|
40
|
+
saturatedFatGrams: data.saturatedFat,
|
|
41
|
+
seleniumGrams: data.selenium,
|
|
42
|
+
sodiumGrams: data.sodium,
|
|
43
|
+
sugarGrams: data.sugar,
|
|
44
|
+
thiaminGrams: data.thiamin,
|
|
45
|
+
totalCarbohydrateGrams: data.totalCarbohydrates,
|
|
46
|
+
totalFatGrams: data.totalFat,
|
|
47
|
+
transFatGrams: data.transFat,
|
|
48
|
+
unsaturatedFatGrams: data.unsaturatedFat,
|
|
49
|
+
vitaminAGrams: data.vitaminA,
|
|
50
|
+
vitaminB12Grams: data.vitaminB12,
|
|
51
|
+
vitaminB6Grams: data.vitaminB6,
|
|
52
|
+
vitaminCGrams: data.vitaminC,
|
|
53
|
+
vitaminDGrams: data.vitaminD,
|
|
54
|
+
vitaminEGrams: data.vitaminE,
|
|
55
|
+
vitaminKGrams: data.vitaminK,
|
|
56
|
+
zincGrams: data.zinc
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=HCMealData.js.map
|