@kingstinct/react-native-healthkit 8.7.2 → 9.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.
Files changed (449) hide show
  1. package/ReactNativeHealthkit.podspec +36 -0
  2. package/app.plugin.js +43 -33
  3. package/ios/Bridge.h +8 -0
  4. package/ios/CategoryTypeModule.swift +128 -0
  5. package/ios/CharacteristicTypeModule.swift +78 -0
  6. package/ios/Constants.swift +2 -0
  7. package/ios/CoreModule.swift +376 -0
  8. package/ios/CorrelationTypeModule.swift +153 -0
  9. package/ios/HeartbeatSeriesModule.swift +189 -0
  10. package/ios/Helpers.swift +529 -251
  11. package/ios/QuantityTypeModule.swift +461 -0
  12. package/ios/Serializers.swift +211 -124
  13. package/ios/SourceProxy.swift +35 -0
  14. package/ios/StateOfMindModule.swift +160 -0
  15. package/ios/WorkoutProxy.swift +405 -0
  16. package/ios/WorkoutSessionModule.swift +182 -0
  17. package/ios/WorkoutsModule.swift +357 -0
  18. package/package.json +43 -127
  19. package/react-native.config.js +16 -0
  20. package/src/hooks/useHealthkitAuthorization.test.ts +47 -29
  21. package/src/hooks/useHealthkitAuthorization.ts +21 -15
  22. package/src/hooks/useIsHealthDataAvailable.test.ts +17 -7
  23. package/src/hooks/useIsHealthDataAvailable.ts +7 -7
  24. package/src/hooks/useMostRecentCategorySample.ts +10 -12
  25. package/src/hooks/useMostRecentQuantitySample.ts +17 -36
  26. package/src/hooks/useMostRecentWorkout.ts +16 -38
  27. package/src/hooks/useSources.ts +8 -12
  28. package/src/hooks/useStatisticsForQuantity.ts +19 -14
  29. package/src/hooks/useSubscribeToChanges.ts +9 -13
  30. package/src/index.ios.ts +232 -0
  31. package/src/index.ts +444 -0
  32. package/src/modules.ts +43 -0
  33. package/src/specs/CategoryTypeModule.nitro.ts +64 -0
  34. package/src/specs/CharacteristicTypeModule.nitro.ts +22 -0
  35. package/src/specs/CoreModule.nitro.ts +107 -0
  36. package/src/specs/CorrelationTypeModule.nitro.ts +23 -0
  37. package/src/specs/HeartbeatSeriesModule.nitro.ts +19 -0
  38. package/src/specs/QuantityTypeModule.nitro.ts +60 -0
  39. package/src/specs/SourceProxy.nitro.ts +13 -0
  40. package/src/specs/StateOfMindModule.nitro.ts +23 -0
  41. package/src/specs/WorkoutProxy.nitro.ts +18 -0
  42. package/src/specs/WorkoutSessionModule.nitro.ts +71 -0
  43. package/src/specs/WorkoutsModule.nitro.ts +32 -0
  44. package/src/test-setup.ts +68 -54
  45. package/src/test-utils.ts +3 -2
  46. package/src/types/Auth.ts +17 -0
  47. package/src/types/Background.ts +9 -0
  48. package/src/types/CategoryType.ts +249 -0
  49. package/src/types/CategoryTypeIdentifier.ts +99 -0
  50. package/src/types/Characteristics.ts +53 -0
  51. package/src/types/Constants.ts +25 -0
  52. package/src/types/CorrelationType.ts +31 -0
  53. package/src/types/Device.ts +13 -0
  54. package/src/types/HeartbeatSeries.ts +29 -0
  55. package/src/types/InterfaceVerification.ts +164 -0
  56. package/src/types/InterfaceVerificationExample.ts +89 -0
  57. package/src/types/QuantitySample.ts +30 -0
  58. package/src/types/QuantityType.ts +192 -0
  59. package/src/types/QuantityTypeIdentifier.ts +758 -0
  60. package/src/types/QueryOptions.ts +69 -0
  61. package/src/types/README-InterfaceVerification.md +103 -0
  62. package/src/types/Shared.ts +79 -0
  63. package/src/types/Source.ts +11 -0
  64. package/src/types/StateOfMind.ts +110 -0
  65. package/src/types/Subscriptons.ts +10 -0
  66. package/src/types/Units.ts +190 -0
  67. package/src/types/WeatherCondition.ts +31 -0
  68. package/src/types/WorkoutKit.ts +18 -0
  69. package/src/types/Workouts.ts +282 -0
  70. package/src/utils/getMostRecentCategorySample.ts +7 -11
  71. package/src/utils/getMostRecentQuantitySample.ts +8 -18
  72. package/src/utils/getMostRecentWorkout.ts +7 -17
  73. package/src/utils/getPreferredUnit.ts +12 -8
  74. package/src/utils/subscribeToChanges.ts +9 -26
  75. package/LICENSE +0 -21
  76. package/README.md +0 -179
  77. package/ios/ReactNativeHealthkit-Bridging-Header.h +0 -2
  78. package/ios/ReactNativeHealthkit.m +0 -271
  79. package/ios/ReactNativeHealthkit.swift +0 -2333
  80. package/ios/ReactNativeHealthkit.xcodeproj/project.pbxproj +0 -279
  81. package/kingstinct-react-native-healthkit.podspec +0 -21
  82. package/lib/commonjs/hooks/useHealthkitAuthorization.js +0 -39
  83. package/lib/commonjs/hooks/useHealthkitAuthorization.js.map +0 -1
  84. package/lib/commonjs/hooks/useHealthkitAuthorization.test.js +0 -72
  85. package/lib/commonjs/hooks/useHealthkitAuthorization.test.js.map +0 -1
  86. package/lib/commonjs/hooks/useIsHealthDataAvailable.js +0 -27
  87. package/lib/commonjs/hooks/useIsHealthDataAvailable.js.map +0 -1
  88. package/lib/commonjs/hooks/useIsHealthDataAvailable.test.js +0 -41
  89. package/lib/commonjs/hooks/useIsHealthDataAvailable.test.js.map +0 -1
  90. package/lib/commonjs/hooks/useMostRecentCategorySample.js +0 -23
  91. package/lib/commonjs/hooks/useMostRecentCategorySample.js.map +0 -1
  92. package/lib/commonjs/hooks/useMostRecentQuantitySample.js +0 -37
  93. package/lib/commonjs/hooks/useMostRecentQuantitySample.js.map +0 -1
  94. package/lib/commonjs/hooks/useMostRecentWorkout.js +0 -48
  95. package/lib/commonjs/hooks/useMostRecentWorkout.js.map +0 -1
  96. package/lib/commonjs/hooks/useSources.js +0 -22
  97. package/lib/commonjs/hooks/useSources.js.map +0 -1
  98. package/lib/commonjs/hooks/useStatisticsForQuantity.js +0 -28
  99. package/lib/commonjs/hooks/useStatisticsForQuantity.js.map +0 -1
  100. package/lib/commonjs/hooks/useSubscribeToChanges.js +0 -28
  101. package/lib/commonjs/hooks/useSubscribeToChanges.js.map +0 -1
  102. package/lib/commonjs/index.ios.js +0 -531
  103. package/lib/commonjs/index.ios.js.map +0 -1
  104. package/lib/commonjs/index.js +0 -22
  105. package/lib/commonjs/index.js.map +0 -1
  106. package/lib/commonjs/index.native.js +0 -235
  107. package/lib/commonjs/index.native.js.map +0 -1
  108. package/lib/commonjs/index.web.js +0 -22
  109. package/lib/commonjs/index.web.js.map +0 -1
  110. package/lib/commonjs/native-types.js +0 -1575
  111. package/lib/commonjs/native-types.js.map +0 -1
  112. package/lib/commonjs/test-setup.js +0 -57
  113. package/lib/commonjs/test-setup.js.map +0 -1
  114. package/lib/commonjs/test-utils.js +0 -18
  115. package/lib/commonjs/test-utils.js.map +0 -1
  116. package/lib/commonjs/types.js +0 -17
  117. package/lib/commonjs/types.js.map +0 -1
  118. package/lib/commonjs/utils/deleteQuantitySample.js +0 -11
  119. package/lib/commonjs/utils/deleteQuantitySample.js.map +0 -1
  120. package/lib/commonjs/utils/deleteSamples.js +0 -18
  121. package/lib/commonjs/utils/deleteSamples.js.map +0 -1
  122. package/lib/commonjs/utils/deleteWorkoutSample.js +0 -11
  123. package/lib/commonjs/utils/deleteWorkoutSample.js.map +0 -1
  124. package/lib/commonjs/utils/deserializeCategorySample.js +0 -13
  125. package/lib/commonjs/utils/deserializeCategorySample.js.map +0 -1
  126. package/lib/commonjs/utils/deserializeCategorySample.test.js +0 -26
  127. package/lib/commonjs/utils/deserializeCategorySample.test.js.map +0 -1
  128. package/lib/commonjs/utils/deserializeCorrelation.js +0 -26
  129. package/lib/commonjs/utils/deserializeCorrelation.js.map +0 -1
  130. package/lib/commonjs/utils/deserializeHeartbeatSeriesSample.js +0 -15
  131. package/lib/commonjs/utils/deserializeHeartbeatSeriesSample.js.map +0 -1
  132. package/lib/commonjs/utils/deserializeSample.js +0 -15
  133. package/lib/commonjs/utils/deserializeSample.js.map +0 -1
  134. package/lib/commonjs/utils/deserializeWorkout.js +0 -15
  135. package/lib/commonjs/utils/deserializeWorkout.js.map +0 -1
  136. package/lib/commonjs/utils/ensureMetadata.js +0 -11
  137. package/lib/commonjs/utils/ensureMetadata.js.map +0 -1
  138. package/lib/commonjs/utils/ensureTotals.js +0 -11
  139. package/lib/commonjs/utils/ensureTotals.js.map +0 -1
  140. package/lib/commonjs/utils/ensureUnit.js +0 -17
  141. package/lib/commonjs/utils/ensureUnit.js.map +0 -1
  142. package/lib/commonjs/utils/getDateOfBirth.js +0 -14
  143. package/lib/commonjs/utils/getDateOfBirth.js.map +0 -1
  144. package/lib/commonjs/utils/getMostRecentCategorySample.js +0 -17
  145. package/lib/commonjs/utils/getMostRecentCategorySample.js.map +0 -1
  146. package/lib/commonjs/utils/getMostRecentQuantitySample.js +0 -21
  147. package/lib/commonjs/utils/getMostRecentQuantitySample.js.map +0 -1
  148. package/lib/commonjs/utils/getMostRecentWorkout.js +0 -19
  149. package/lib/commonjs/utils/getMostRecentWorkout.js.map +0 -1
  150. package/lib/commonjs/utils/getPreferredUnit.js +0 -14
  151. package/lib/commonjs/utils/getPreferredUnit.js.map +0 -1
  152. package/lib/commonjs/utils/getPreferredUnits.js +0 -14
  153. package/lib/commonjs/utils/getPreferredUnits.js.map +0 -1
  154. package/lib/commonjs/utils/getPreferredUnitsTyped.js +0 -33
  155. package/lib/commonjs/utils/getPreferredUnitsTyped.js.map +0 -1
  156. package/lib/commonjs/utils/getRequestStatusForAuthorization.js +0 -21
  157. package/lib/commonjs/utils/getRequestStatusForAuthorization.js.map +0 -1
  158. package/lib/commonjs/utils/getWorkoutPlanById.js +0 -13
  159. package/lib/commonjs/utils/getWorkoutPlanById.js.map +0 -1
  160. package/lib/commonjs/utils/prepareOptions.js +0 -25
  161. package/lib/commonjs/utils/prepareOptions.js.map +0 -1
  162. package/lib/commonjs/utils/queryCategorySamples.js +0 -17
  163. package/lib/commonjs/utils/queryCategorySamples.js.map +0 -1
  164. package/lib/commonjs/utils/queryCategorySamplesWithAnchor.js +0 -21
  165. package/lib/commonjs/utils/queryCategorySamplesWithAnchor.js.map +0 -1
  166. package/lib/commonjs/utils/queryCorrelationSamples.js +0 -17
  167. package/lib/commonjs/utils/queryCorrelationSamples.js.map +0 -1
  168. package/lib/commonjs/utils/queryHeartbeatSeriesSamples.js +0 -17
  169. package/lib/commonjs/utils/queryHeartbeatSeriesSamples.js.map +0 -1
  170. package/lib/commonjs/utils/queryHeartbeatSeriesSamplesWithAnchor.js +0 -21
  171. package/lib/commonjs/utils/queryHeartbeatSeriesSamplesWithAnchor.js.map +0 -1
  172. package/lib/commonjs/utils/queryQuantitySamples.js +0 -19
  173. package/lib/commonjs/utils/queryQuantitySamples.js.map +0 -1
  174. package/lib/commonjs/utils/queryQuantitySamplesWithAnchor.js +0 -23
  175. package/lib/commonjs/utils/queryQuantitySamplesWithAnchor.js.map +0 -1
  176. package/lib/commonjs/utils/querySources.js +0 -14
  177. package/lib/commonjs/utils/querySources.js.map +0 -1
  178. package/lib/commonjs/utils/queryStateOfMindSamples.js +0 -22
  179. package/lib/commonjs/utils/queryStateOfMindSamples.js.map +0 -1
  180. package/lib/commonjs/utils/queryStatisticsCollectionForQuantity.js +0 -16
  181. package/lib/commonjs/utils/queryStatisticsCollectionForQuantity.js.map +0 -1
  182. package/lib/commonjs/utils/queryStatisticsForQuantity.js +0 -29
  183. package/lib/commonjs/utils/queryStatisticsForQuantity.js.map +0 -1
  184. package/lib/commonjs/utils/queryWorkoutSamplesWithAnchor.js +0 -26
  185. package/lib/commonjs/utils/queryWorkoutSamplesWithAnchor.js.map +0 -1
  186. package/lib/commonjs/utils/queryWorkouts.js +0 -22
  187. package/lib/commonjs/utils/queryWorkouts.js.map +0 -1
  188. package/lib/commonjs/utils/requestAuthorization.js +0 -22
  189. package/lib/commonjs/utils/requestAuthorization.js.map +0 -1
  190. package/lib/commonjs/utils/saveCategorySample.js +0 -20
  191. package/lib/commonjs/utils/saveCategorySample.js.map +0 -1
  192. package/lib/commonjs/utils/saveCorrelationSample.js +0 -35
  193. package/lib/commonjs/utils/saveCorrelationSample.js.map +0 -1
  194. package/lib/commonjs/utils/saveQuantitySample.js +0 -16
  195. package/lib/commonjs/utils/saveQuantitySample.js.map +0 -1
  196. package/lib/commonjs/utils/saveStateOfMindSample.js +0 -17
  197. package/lib/commonjs/utils/saveStateOfMindSample.js.map +0 -1
  198. package/lib/commonjs/utils/saveWorkoutRoute.js +0 -26
  199. package/lib/commonjs/utils/saveWorkoutRoute.js.map +0 -1
  200. package/lib/commonjs/utils/saveWorkoutSample.js +0 -36
  201. package/lib/commonjs/utils/saveWorkoutSample.js.map +0 -1
  202. package/lib/commonjs/utils/serializeDate.js +0 -9
  203. package/lib/commonjs/utils/serializeDate.js.map +0 -1
  204. package/lib/commonjs/utils/serializeDate.test.js +0 -17
  205. package/lib/commonjs/utils/serializeDate.test.js.map +0 -1
  206. package/lib/commonjs/utils/startWatchApp.js +0 -11
  207. package/lib/commonjs/utils/startWatchApp.js.map +0 -1
  208. package/lib/commonjs/utils/subscribeToChanges.js +0 -27
  209. package/lib/commonjs/utils/subscribeToChanges.js.map +0 -1
  210. package/lib/module/hooks/useHealthkitAuthorization.js +0 -32
  211. package/lib/module/hooks/useHealthkitAuthorization.js.map +0 -1
  212. package/lib/module/hooks/useHealthkitAuthorization.test.js +0 -68
  213. package/lib/module/hooks/useHealthkitAuthorization.test.js.map +0 -1
  214. package/lib/module/hooks/useIsHealthDataAvailable.js +0 -21
  215. package/lib/module/hooks/useIsHealthDataAvailable.js.map +0 -1
  216. package/lib/module/hooks/useIsHealthDataAvailable.test.js +0 -37
  217. package/lib/module/hooks/useIsHealthDataAvailable.test.js.map +0 -1
  218. package/lib/module/hooks/useMostRecentCategorySample.js +0 -16
  219. package/lib/module/hooks/useMostRecentCategorySample.js.map +0 -1
  220. package/lib/module/hooks/useMostRecentQuantitySample.js +0 -30
  221. package/lib/module/hooks/useMostRecentQuantitySample.js.map +0 -1
  222. package/lib/module/hooks/useMostRecentWorkout.js +0 -41
  223. package/lib/module/hooks/useMostRecentWorkout.js.map +0 -1
  224. package/lib/module/hooks/useSources.js +0 -15
  225. package/lib/module/hooks/useSources.js.map +0 -1
  226. package/lib/module/hooks/useStatisticsForQuantity.js +0 -21
  227. package/lib/module/hooks/useStatisticsForQuantity.js.map +0 -1
  228. package/lib/module/hooks/useSubscribeToChanges.js +0 -21
  229. package/lib/module/hooks/useSubscribeToChanges.js.map +0 -1
  230. package/lib/module/index.ios.js +0 -209
  231. package/lib/module/index.ios.js.map +0 -1
  232. package/lib/module/index.js +0 -4
  233. package/lib/module/index.js.map +0 -1
  234. package/lib/module/index.native.js +0 -160
  235. package/lib/module/index.native.js.map +0 -1
  236. package/lib/module/index.web.js +0 -4
  237. package/lib/module/index.web.js.map +0 -1
  238. package/lib/module/native-types.js +0 -1606
  239. package/lib/module/native-types.js.map +0 -1
  240. package/lib/module/test-setup.js +0 -54
  241. package/lib/module/test-setup.js.map +0 -1
  242. package/lib/module/test-utils.js +0 -11
  243. package/lib/module/test-utils.js.map +0 -1
  244. package/lib/module/types.js +0 -67
  245. package/lib/module/types.js.map +0 -1
  246. package/lib/module/utils/deleteQuantitySample.js +0 -4
  247. package/lib/module/utils/deleteQuantitySample.js.map +0 -1
  248. package/lib/module/utils/deleteSamples.js +0 -11
  249. package/lib/module/utils/deleteSamples.js.map +0 -1
  250. package/lib/module/utils/deleteWorkoutSample.js +0 -4
  251. package/lib/module/utils/deleteWorkoutSample.js.map +0 -1
  252. package/lib/module/utils/deserializeCategorySample.js +0 -7
  253. package/lib/module/utils/deserializeCategorySample.js.map +0 -1
  254. package/lib/module/utils/deserializeCategorySample.test.js +0 -22
  255. package/lib/module/utils/deserializeCategorySample.test.js.map +0 -1
  256. package/lib/module/utils/deserializeCorrelation.js +0 -19
  257. package/lib/module/utils/deserializeCorrelation.js.map +0 -1
  258. package/lib/module/utils/deserializeHeartbeatSeriesSample.js +0 -9
  259. package/lib/module/utils/deserializeHeartbeatSeriesSample.js.map +0 -1
  260. package/lib/module/utils/deserializeSample.js +0 -9
  261. package/lib/module/utils/deserializeSample.js.map +0 -1
  262. package/lib/module/utils/deserializeWorkout.js +0 -9
  263. package/lib/module/utils/deserializeWorkout.js.map +0 -1
  264. package/lib/module/utils/ensureMetadata.js +0 -5
  265. package/lib/module/utils/ensureMetadata.js.map +0 -1
  266. package/lib/module/utils/ensureTotals.js +0 -5
  267. package/lib/module/utils/ensureTotals.js.map +0 -1
  268. package/lib/module/utils/ensureUnit.js +0 -10
  269. package/lib/module/utils/ensureUnit.js.map +0 -1
  270. package/lib/module/utils/getDateOfBirth.js +0 -7
  271. package/lib/module/utils/getDateOfBirth.js.map +0 -1
  272. package/lib/module/utils/getMostRecentCategorySample.js +0 -10
  273. package/lib/module/utils/getMostRecentCategorySample.js.map +0 -1
  274. package/lib/module/utils/getMostRecentQuantitySample.js +0 -14
  275. package/lib/module/utils/getMostRecentQuantitySample.js.map +0 -1
  276. package/lib/module/utils/getMostRecentWorkout.js +0 -12
  277. package/lib/module/utils/getMostRecentWorkout.js.map +0 -1
  278. package/lib/module/utils/getPreferredUnit.js +0 -7
  279. package/lib/module/utils/getPreferredUnit.js.map +0 -1
  280. package/lib/module/utils/getPreferredUnits.js +0 -7
  281. package/lib/module/utils/getPreferredUnits.js.map +0 -1
  282. package/lib/module/utils/getPreferredUnitsTyped.js +0 -26
  283. package/lib/module/utils/getPreferredUnitsTyped.js.map +0 -1
  284. package/lib/module/utils/getRequestStatusForAuthorization.js +0 -14
  285. package/lib/module/utils/getRequestStatusForAuthorization.js.map +0 -1
  286. package/lib/module/utils/getWorkoutPlanById.js +0 -6
  287. package/lib/module/utils/getWorkoutPlanById.js.map +0 -1
  288. package/lib/module/utils/prepareOptions.js +0 -18
  289. package/lib/module/utils/prepareOptions.js.map +0 -1
  290. package/lib/module/utils/queryCategorySamples.js +0 -10
  291. package/lib/module/utils/queryCategorySamples.js.map +0 -1
  292. package/lib/module/utils/queryCategorySamplesWithAnchor.js +0 -14
  293. package/lib/module/utils/queryCategorySamplesWithAnchor.js.map +0 -1
  294. package/lib/module/utils/queryCorrelationSamples.js +0 -10
  295. package/lib/module/utils/queryCorrelationSamples.js.map +0 -1
  296. package/lib/module/utils/queryHeartbeatSeriesSamples.js +0 -10
  297. package/lib/module/utils/queryHeartbeatSeriesSamples.js.map +0 -1
  298. package/lib/module/utils/queryHeartbeatSeriesSamplesWithAnchor.js +0 -14
  299. package/lib/module/utils/queryHeartbeatSeriesSamplesWithAnchor.js.map +0 -1
  300. package/lib/module/utils/queryQuantitySamples.js +0 -12
  301. package/lib/module/utils/queryQuantitySamples.js.map +0 -1
  302. package/lib/module/utils/queryQuantitySamplesWithAnchor.js +0 -16
  303. package/lib/module/utils/queryQuantitySamplesWithAnchor.js.map +0 -1
  304. package/lib/module/utils/querySources.js +0 -7
  305. package/lib/module/utils/querySources.js.map +0 -1
  306. package/lib/module/utils/queryStateOfMindSamples.js +0 -14
  307. package/lib/module/utils/queryStateOfMindSamples.js.map +0 -1
  308. package/lib/module/utils/queryStatisticsCollectionForQuantity.js +0 -9
  309. package/lib/module/utils/queryStatisticsCollectionForQuantity.js.map +0 -1
  310. package/lib/module/utils/queryStatisticsForQuantity.js +0 -22
  311. package/lib/module/utils/queryStatisticsForQuantity.js.map +0 -1
  312. package/lib/module/utils/queryWorkoutSamplesWithAnchor.js +0 -19
  313. package/lib/module/utils/queryWorkoutSamplesWithAnchor.js.map +0 -1
  314. package/lib/module/utils/queryWorkouts.js +0 -15
  315. package/lib/module/utils/queryWorkouts.js.map +0 -1
  316. package/lib/module/utils/requestAuthorization.js +0 -15
  317. package/lib/module/utils/requestAuthorization.js.map +0 -1
  318. package/lib/module/utils/saveCategorySample.js +0 -13
  319. package/lib/module/utils/saveCategorySample.js.map +0 -1
  320. package/lib/module/utils/saveCorrelationSample.js +0 -28
  321. package/lib/module/utils/saveCorrelationSample.js.map +0 -1
  322. package/lib/module/utils/saveQuantitySample.js +0 -9
  323. package/lib/module/utils/saveQuantitySample.js.map +0 -1
  324. package/lib/module/utils/saveStateOfMindSample.js +0 -10
  325. package/lib/module/utils/saveStateOfMindSample.js.map +0 -1
  326. package/lib/module/utils/saveWorkoutRoute.js +0 -19
  327. package/lib/module/utils/saveWorkoutRoute.js.map +0 -1
  328. package/lib/module/utils/saveWorkoutSample.js +0 -29
  329. package/lib/module/utils/saveWorkoutSample.js.map +0 -1
  330. package/lib/module/utils/serializeDate.js +0 -3
  331. package/lib/module/utils/serializeDate.js.map +0 -1
  332. package/lib/module/utils/serializeDate.test.js +0 -14
  333. package/lib/module/utils/serializeDate.test.js.map +0 -1
  334. package/lib/module/utils/startWatchApp.js +0 -4
  335. package/lib/module/utils/startWatchApp.js.map +0 -1
  336. package/lib/module/utils/subscribeToChanges.js +0 -20
  337. package/lib/module/utils/subscribeToChanges.js.map +0 -1
  338. package/lib/typescript/example-expo/App.d.ts +0 -2
  339. package/lib/typescript/src/hooks/useHealthkitAuthorization.d.ts +0 -8
  340. package/lib/typescript/src/hooks/useHealthkitAuthorization.test.d.ts +0 -1
  341. package/lib/typescript/src/hooks/useIsHealthDataAvailable.d.ts +0 -7
  342. package/lib/typescript/src/hooks/useIsHealthDataAvailable.test.d.ts +0 -1
  343. package/lib/typescript/src/hooks/useMostRecentCategorySample.d.ts +0 -7
  344. package/lib/typescript/src/hooks/useMostRecentQuantitySample.d.ts +0 -7
  345. package/lib/typescript/src/hooks/useMostRecentWorkout.d.ts +0 -10
  346. package/lib/typescript/src/hooks/useSources.d.ts +0 -3
  347. package/lib/typescript/src/hooks/useStatisticsForQuantity.d.ts +0 -4
  348. package/lib/typescript/src/hooks/useSubscribeToChanges.d.ts +0 -3
  349. package/lib/typescript/src/index.d.ts +0 -3
  350. package/lib/typescript/src/index.ios.d.ts +0 -198
  351. package/lib/typescript/src/index.native.d.ts +0 -41
  352. package/lib/typescript/src/index.web.d.ts +0 -3
  353. package/lib/typescript/src/native-types.d.ts +0 -1764
  354. package/lib/typescript/src/test-setup.d.ts +0 -1
  355. package/lib/typescript/src/test-utils.d.ts +0 -2
  356. package/lib/typescript/src/types.d.ts +0 -111
  357. package/lib/typescript/src/utils/deleteQuantitySample.d.ts +0 -4
  358. package/lib/typescript/src/utils/deleteSamples.d.ts +0 -8
  359. package/lib/typescript/src/utils/deleteWorkoutSample.d.ts +0 -3
  360. package/lib/typescript/src/utils/deserializeCategorySample.d.ts +0 -4
  361. package/lib/typescript/src/utils/deserializeCategorySample.test.d.ts +0 -1
  362. package/lib/typescript/src/utils/deserializeCorrelation.d.ts +0 -4
  363. package/lib/typescript/src/utils/deserializeHeartbeatSeriesSample.d.ts +0 -4
  364. package/lib/typescript/src/utils/deserializeSample.d.ts +0 -4
  365. package/lib/typescript/src/utils/deserializeWorkout.d.ts +0 -4
  366. package/lib/typescript/src/utils/ensureMetadata.d.ts +0 -2
  367. package/lib/typescript/src/utils/ensureTotals.d.ts +0 -2
  368. package/lib/typescript/src/utils/ensureUnit.d.ts +0 -3
  369. package/lib/typescript/src/utils/getDateOfBirth.d.ts +0 -2
  370. package/lib/typescript/src/utils/getMostRecentCategorySample.d.ts +0 -4
  371. package/lib/typescript/src/utils/getMostRecentQuantitySample.d.ts +0 -4
  372. package/lib/typescript/src/utils/getMostRecentWorkout.d.ts +0 -5
  373. package/lib/typescript/src/utils/getPreferredUnit.d.ts +0 -4
  374. package/lib/typescript/src/utils/getPreferredUnits.d.ts +0 -4
  375. package/lib/typescript/src/utils/getPreferredUnitsTyped.d.ts +0 -9
  376. package/lib/typescript/src/utils/getRequestStatusForAuthorization.d.ts +0 -3
  377. package/lib/typescript/src/utils/getWorkoutPlanById.d.ts +0 -5
  378. package/lib/typescript/src/utils/prepareOptions.d.ts +0 -9
  379. package/lib/typescript/src/utils/queryCategorySamples.d.ts +0 -5
  380. package/lib/typescript/src/utils/queryCategorySamplesWithAnchor.d.ts +0 -10
  381. package/lib/typescript/src/utils/queryCorrelationSamples.d.ts +0 -5
  382. package/lib/typescript/src/utils/queryHeartbeatSeriesSamples.d.ts +0 -10
  383. package/lib/typescript/src/utils/queryHeartbeatSeriesSamplesWithAnchor.d.ts +0 -10
  384. package/lib/typescript/src/utils/queryQuantitySamples.d.ts +0 -7
  385. package/lib/typescript/src/utils/queryQuantitySamplesWithAnchor.d.ts +0 -12
  386. package/lib/typescript/src/utils/querySources.d.ts +0 -4
  387. package/lib/typescript/src/utils/queryStateOfMindSamples.d.ts +0 -7
  388. package/lib/typescript/src/utils/queryStatisticsCollectionForQuantity.d.ts +0 -3
  389. package/lib/typescript/src/utils/queryStatisticsForQuantity.d.ts +0 -14
  390. package/lib/typescript/src/utils/queryWorkoutSamplesWithAnchor.d.ts +0 -9
  391. package/lib/typescript/src/utils/queryWorkouts.d.ts +0 -4
  392. package/lib/typescript/src/utils/requestAuthorization.d.ts +0 -4
  393. package/lib/typescript/src/utils/saveCategorySample.d.ts +0 -11
  394. package/lib/typescript/src/utils/saveCorrelationSample.d.ts +0 -8
  395. package/lib/typescript/src/utils/saveQuantitySample.d.ts +0 -7
  396. package/lib/typescript/src/utils/saveStateOfMindSample.d.ts +0 -11
  397. package/lib/typescript/src/utils/saveWorkoutRoute.d.ts +0 -3
  398. package/lib/typescript/src/utils/saveWorkoutSample.d.ts +0 -11
  399. package/lib/typescript/src/utils/serializeDate.d.ts +0 -2
  400. package/lib/typescript/src/utils/serializeDate.test.d.ts +0 -1
  401. package/lib/typescript/src/utils/startWatchApp.d.ts +0 -3
  402. package/lib/typescript/src/utils/subscribeToChanges.d.ts +0 -3
  403. package/src/index.ios.tsx +0 -292
  404. package/src/index.native.tsx +0 -233
  405. package/src/index.tsx +0 -5
  406. package/src/index.web.tsx +0 -5
  407. package/src/native-types.ts +0 -2471
  408. package/src/types.ts +0 -156
  409. package/src/utils/deleteQuantitySample.ts +0 -14
  410. package/src/utils/deleteSamples.ts +0 -23
  411. package/src/utils/deleteWorkoutSample.ts +0 -7
  412. package/src/utils/deserializeCategorySample.test.ts +0 -24
  413. package/src/utils/deserializeCategorySample.ts +0 -12
  414. package/src/utils/deserializeCorrelation.ts +0 -28
  415. package/src/utils/deserializeHeartbeatSeriesSample.ts +0 -12
  416. package/src/utils/deserializeSample.ts +0 -17
  417. package/src/utils/deserializeWorkout.ts +0 -14
  418. package/src/utils/ensureMetadata.ts +0 -5
  419. package/src/utils/ensureTotals.ts +0 -5
  420. package/src/utils/ensureUnit.ts +0 -19
  421. package/src/utils/getDateOfBirth.ts +0 -8
  422. package/src/utils/getPreferredUnits.ts +0 -14
  423. package/src/utils/getPreferredUnitsTyped.ts +0 -38
  424. package/src/utils/getRequestStatusForAuthorization.ts +0 -21
  425. package/src/utils/getWorkoutPlanById.ts +0 -7
  426. package/src/utils/prepareOptions.ts +0 -19
  427. package/src/utils/queryCategorySamples.ts +0 -29
  428. package/src/utils/queryCategorySamplesWithAnchor.ts +0 -39
  429. package/src/utils/queryCorrelationSamples.ts +0 -29
  430. package/src/utils/queryHeartbeatSeriesSamples.ts +0 -29
  431. package/src/utils/queryHeartbeatSeriesSamplesWithAnchor.ts +0 -33
  432. package/src/utils/queryQuantitySamples.ts +0 -38
  433. package/src/utils/queryQuantitySamplesWithAnchor.ts +0 -46
  434. package/src/utils/querySources.ts +0 -21
  435. package/src/utils/queryStateOfMindSamples.ts +0 -14
  436. package/src/utils/queryStatisticsCollectionForQuantity.ts +0 -38
  437. package/src/utils/queryStatisticsForQuantity.ts +0 -38
  438. package/src/utils/queryWorkoutSamplesWithAnchor.ts +0 -46
  439. package/src/utils/queryWorkouts.ts +0 -28
  440. package/src/utils/requestAuthorization.ts +0 -19
  441. package/src/utils/saveCategorySample.ts +0 -31
  442. package/src/utils/saveCorrelationSample.ts +0 -43
  443. package/src/utils/saveQuantitySample.ts +0 -29
  444. package/src/utils/saveStateOfMindSample.ts +0 -38
  445. package/src/utils/saveWorkoutRoute.ts +0 -21
  446. package/src/utils/saveWorkoutSample.ts +0 -42
  447. package/src/utils/serializeDate.test.ts +0 -16
  448. package/src/utils/serializeDate.ts +0 -5
  449. package/src/utils/startWatchApp.ts +0 -7
package/src/index.ios.tsx DELETED
@@ -1,292 +0,0 @@
1
- import { Platform } from 'react-native'
2
-
3
- import useHealthkitAuthorization from './hooks/useHealthkitAuthorization'
4
- import useIsHealthDataAvailable from './hooks/useIsHealthDataAvailable'
5
- import useMostRecentCategorySample from './hooks/useMostRecentCategorySample'
6
- import useMostRecentQuantitySample from './hooks/useMostRecentQuantitySample'
7
- import useMostRecentWorkout from './hooks/useMostRecentWorkout'
8
- import useSources from './hooks/useSources'
9
- import useStatisticsForQuantity from './hooks/useStatisticsForQuantity'
10
- import useSubscribeToChanges from './hooks/useSubscribeToChanges'
11
- import Native, { HKQuantityTypeIdentifier } from './native-types'
12
- import deleteQuantitySample from './utils/deleteQuantitySample'
13
- import deleteSamples from './utils/deleteSamples'
14
- import deleteWorkoutSample from './utils/deleteWorkoutSample'
15
- import getDateOfBirth from './utils/getDateOfBirth'
16
- import getMostRecentCategorySample from './utils/getMostRecentCategorySample'
17
- import getMostRecentQuantitySample from './utils/getMostRecentQuantitySample'
18
- import getMostRecentWorkout from './utils/getMostRecentWorkout'
19
- import getPreferredUnit from './utils/getPreferredUnit'
20
- import getPreferredUnits from './utils/getPreferredUnits'
21
- import getRequestStatusForAuthorization from './utils/getRequestStatusForAuthorization'
22
- import getWorkoutPlanById from './utils/getWorkoutPlanById'
23
- import queryCategorySamples from './utils/queryCategorySamples'
24
- import queryCategorySamplesWithAnchor from './utils/queryCategorySamplesWithAnchor'
25
- import queryCorrelationSamples from './utils/queryCorrelationSamples'
26
- import queryHeartbeatSeriesSamples from './utils/queryHeartbeatSeriesSamples'
27
- import queryHeartbeatSeriesSamplesWithAnchor from './utils/queryHeartbeatSeriesSamplesWithAnchor'
28
- import queryQuantitySamples from './utils/queryQuantitySamples'
29
- import queryQuantitySamplesWithAnchor from './utils/queryQuantitySamplesWithAnchor'
30
- import querySources from './utils/querySources'
31
- import { queryStateOfMindSamples } from './utils/queryStateOfMindSamples'
32
- import queryStatisticsCollectionForQuantity from './utils/queryStatisticsCollectionForQuantity'
33
- import queryStatisticsForQuantity from './utils/queryStatisticsForQuantity'
34
- import queryWorkoutSamples from './utils/queryWorkouts'
35
- import queryWorkoutSamplesWithAnchor from './utils/queryWorkoutSamplesWithAnchor'
36
- import requestAuthorization from './utils/requestAuthorization'
37
- import saveCategorySample from './utils/saveCategorySample'
38
- import saveCorrelationSample from './utils/saveCorrelationSample'
39
- import saveQuantitySample from './utils/saveQuantitySample'
40
- import saveStateOfMindSample from './utils/saveStateOfMindSample'
41
- import saveWorkoutRoute from './utils/saveWorkoutRoute'
42
- import saveWorkoutSample from './utils/saveWorkoutSample'
43
- import startWatchApp from './utils/startWatchApp'
44
- import subscribeToChanges from './utils/subscribeToChanges'
45
-
46
- const currentMajorVersionIOS = Platform.OS === 'ios' ? parseInt(Platform.Version, 10) : 0
47
-
48
- const allQuantityTypesList = [...Object.values(HKQuantityTypeIdentifier)]
49
-
50
- const availableQuantityTypes = (majorVersionIOS = currentMajorVersionIOS) => {
51
- if (majorVersionIOS >= 17) {
52
- return allQuantityTypesList
53
- }
54
-
55
- // remove types that are not available before iOS 17
56
- return allQuantityTypesList.filter((type) => ![
57
- HKQuantityTypeIdentifier.cyclingCadence,
58
- HKQuantityTypeIdentifier.cyclingFunctionalThresholdPower,
59
- HKQuantityTypeIdentifier.cyclingPower,
60
- HKQuantityTypeIdentifier.cyclingSpeed,
61
- HKQuantityTypeIdentifier.physicalEffort,
62
- HKQuantityTypeIdentifier.timeInDaylight,
63
- ].includes(type))
64
- }
65
-
66
- const authorizationStatusFor = Native.authorizationStatusFor.bind(Native)
67
- const isHealthDataAvailable = Native.isHealthDataAvailable.bind(Native)
68
- const isProtectedDataAvailable = Native.isProtectedDataAvailable.bind(Native)
69
- const disableBackgroundDelivery = Native.disableBackgroundDelivery.bind(Native)
70
- const disableAllBackgroundDelivery = Native.disableAllBackgroundDelivery.bind(Native)
71
- const enableBackgroundDelivery = Native.enableBackgroundDelivery.bind(Native)
72
- const getBiologicalSex = Native.getBiologicalSex.bind(Native)
73
- const getFitzpatrickSkinType = Native.getFitzpatrickSkinType.bind(Native)
74
- const getWheelchairUse = Native.getWheelchairUse.bind(Native)
75
- const getBloodType = Native.getBloodType.bind(Native)
76
- const getWorkoutRoutes = Native.getWorkoutRoutes.bind(Native)
77
-
78
- /**
79
- * @see {@link https://developer.apple.com/documentation/healthkit/about_the_healthkit_framework About the HealthKit Framework (Apple Docs)}
80
- */
81
- export default {
82
- /**
83
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614154-authorizationstatus authorizationStatus(for:) (Apple Docs) }
84
- * @see {@link https://developer.apple.com/documentation/healthkit/authorizing_access_to_health_data Authorizing access to health data (Apple Docs) }
85
- */
86
- authorizationStatusFor,
87
-
88
- /**
89
- *
90
- * @returns All available quantity types for the current iOS version (currently excluding types that are not available before iOS 17)
91
- */
92
- availableQuantityTypes,
93
-
94
- /**
95
- * @description By default, HealthKit data is available on iOS and watchOS. HealthKit data is also available on iPadOS 17 or later. However, devices running in an enterprise environment may restrict access to HealthKit data.
96
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614180-ishealthdataavailable isHealthDataAvailable() (Apple Docs)}
97
- * @returns {boolean} true if HealthKit is available; otherwise, false.
98
- */
99
- isHealthDataAvailable,
100
-
101
- /**
102
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614181-isprotecteddataavailable isProtectedDataAvailable() (Apple Docs)}
103
- * @see {@link https://developer.apple.com/documentation/healthkit/protecting_user_privacy#3705074 Protecting User Privacy - Access encrypted data (Apple Docs)}
104
- * @returns {boolean} A Boolean value that indicates whether content protection is active.
105
- */
106
- isProtectedDataAvailable,
107
-
108
- /**
109
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614158-disableallbackgrounddelivery disableAllBackgroundDelivery(completion:) (Apple Docs)}
110
- */
111
- disableAllBackgroundDelivery,
112
- /**
113
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614177-disablebackgrounddelivery disableBackgroundDelivery(for:withCompletion:) (Apple Docs)}
114
- */
115
- disableBackgroundDelivery,
116
- /**
117
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614175-enablebackgrounddelivery enableBackgroundDelivery(for:frequency:withCompletion:) (Apple Docs)}
118
- */
119
- enableBackgroundDelivery,
120
-
121
- // simple convenience getters
122
- /**
123
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614171-biologicalsex biologicalSex() (Apple Docs)}
124
- */
125
- getBiologicalSex,
126
- /**
127
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614161-fitzpatrickskintype fitzpatrickSkinType() (Apple Docs)}
128
- */
129
- getFitzpatrickSkinType,
130
- /**
131
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1648356-wheelchairuse wheelchairUse() (Apple Docs)}
132
- */
133
- getWheelchairUse,
134
- /**
135
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614164-bloodtype bloodType() (Apple Docs)}
136
- */
137
- getBloodType,
138
- /**
139
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1648357-dateofbirthcomponents dateOfBirthComponents() (Apple Docs)}
140
- */
141
- getDateOfBirth,
142
-
143
- getMostRecentQuantitySample,
144
- getMostRecentCategorySample,
145
- getMostRecentWorkout,
146
-
147
- /**
148
- * @see {@link https://developer.apple.com/documentation/healthkit/workouts_and_activity_rings/reading_route_data Reading route data (Apple Docs)}
149
- * @see {@link https://developer.apple.com/documentation/healthkit/hkworkoutroutequery HKWorkoutRouteQuery (Apple Docs)}
150
- */
151
- getWorkoutRoutes,
152
- getWorkoutPlanById,
153
-
154
- getPreferredUnit,
155
- getPreferredUnits,
156
- getRequestStatusForAuthorization,
157
-
158
- // query methods
159
- queryCategorySamples,
160
- queryCategorySamplesWithAnchor,
161
- queryCorrelationSamples,
162
- queryHeartbeatSeriesSamples,
163
- queryHeartbeatSeriesSamplesWithAnchor,
164
- queryQuantitySamples,
165
- queryQuantitySamplesWithAnchor,
166
- queryStatisticsForQuantity,
167
- queryStatisticsCollectionForQuantity,
168
- /**
169
- * @deprecated Use queryWorkoutSamples instead
170
- */
171
- queryWorkouts: queryWorkoutSamples,
172
- queryWorkoutSamples,
173
- queryWorkoutSamplesWithAnchor,
174
- querySources,
175
-
176
- requestAuthorization,
177
-
178
- // delete methods
179
- deleteQuantitySample,
180
- deleteSamples,
181
- deleteWorkoutSample,
182
-
183
- // save methods
184
- /**
185
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614168-savecategorysample save(_:withCompletion:) (Apple Docs)}
186
- * @see {@link https://developer.apple.com/documentation/healthkit/saving_data_to_healthkit Saving data to HealthKit (Apple Docs)}
187
- */
188
- saveCategorySample,
189
- saveCorrelationSample,
190
- saveQuantitySample,
191
- saveWorkoutSample,
192
- saveWorkoutRoute,
193
- saveStateOfMindSample,
194
-
195
- // subscriptions
196
- subscribeToChanges,
197
-
198
- startWatchApp,
199
-
200
- /**
201
- * @returns the most recent sample for the given category type.
202
- */
203
- useMostRecentCategorySample,
204
- /**
205
- * @returns the most recent sample for the given quantity type.
206
- */
207
- useMostRecentQuantitySample,
208
- /**
209
- * @returns the most recent workout sample.
210
- */
211
- useMostRecentWorkout,
212
- useSubscribeToChanges,
213
- /**
214
- * @description By default, HealthKit data is available on iOS and watchOS. HealthKit data is also available on iPadOS 17 or later. However, devices running in an enterprise environment may restrict access to HealthKit data.
215
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614180-ishealthdataavailable Apple Docs}
216
- * @returns {boolean | null} true if HealthKit is available; otherwise, false. null while initializing.
217
- */
218
- useIsHealthDataAvailable,
219
- /**
220
- * @description Hook to retrieve the current authorization status for the given types, and request authorization if needed.
221
- * @see {@link https://developer.apple.com/documentation/healthkit/hkhealthstore/1614152-requestauthorization Apple Docs - requestAuthorization}
222
- * @see {@link https://developer.apple.com/documentation/healthkit/authorizing_access_to_health_data Apple Docs - Authorizing access to health data}
223
- */
224
- useHealthkitAuthorization,
225
- useSources,
226
- useStatisticsForQuantity,
227
- queryStateOfMindSamples,
228
- }
229
-
230
- const queryWorkouts = queryWorkoutSamples
231
-
232
- export {
233
- authorizationStatusFor,
234
- availableQuantityTypes,
235
- disableAllBackgroundDelivery,
236
- disableBackgroundDelivery,
237
- enableBackgroundDelivery,
238
- getBiologicalSex,
239
- getBloodType,
240
- getDateOfBirth,
241
- getFitzpatrickSkinType,
242
- getMostRecentCategorySample,
243
- getMostRecentQuantitySample,
244
- getMostRecentWorkout,
245
- getPreferredUnit,
246
- getPreferredUnits,
247
- getRequestStatusForAuthorization,
248
- getWheelchairUse,
249
- getWorkoutRoutes,
250
- isHealthDataAvailable,
251
- queryCategorySamples,
252
- queryCategorySamplesWithAnchor,
253
- queryCorrelationSamples,
254
- queryHeartbeatSeriesSamples,
255
- queryHeartbeatSeriesSamplesWithAnchor,
256
- queryQuantitySamples,
257
- queryQuantitySamplesWithAnchor,
258
- queryStatisticsForQuantity,
259
- queryStatisticsCollectionForQuantity,
260
- /**
261
- * @deprecated Use queryWorkoutSamples instead
262
- */
263
- queryWorkouts,
264
- queryWorkoutSamples,
265
- queryWorkoutSamplesWithAnchor,
266
- querySources,
267
- requestAuthorization,
268
- deleteQuantitySample,
269
- deleteSamples,
270
- deleteWorkoutSample,
271
- getWorkoutPlanById,
272
- saveCategorySample,
273
- saveStateOfMindSample,
274
- saveCorrelationSample,
275
- saveQuantitySample,
276
- saveWorkoutSample,
277
- saveWorkoutRoute,
278
- subscribeToChanges,
279
- startWatchApp,
280
- useMostRecentCategorySample,
281
- useMostRecentQuantitySample,
282
- useMostRecentWorkout,
283
- useSubscribeToChanges,
284
- useHealthkitAuthorization,
285
- useIsHealthDataAvailable,
286
- useSources,
287
- useStatisticsForQuantity,
288
- isProtectedDataAvailable,
289
- queryStateOfMindSamples,
290
- }
291
-
292
- export * from './types'
@@ -1,233 +0,0 @@
1
- import { Platform } from 'react-native'
2
-
3
- import {
4
- HKAuthorizationRequestStatus, HKAuthorizationStatus, HKBiologicalSex, HKBloodType, HKFitzpatrickSkinType, HKUnits, HKWheelchairUse,
5
- } from './native-types'
6
-
7
- import type ReactNativeHealthkit from './index.ios'
8
- import type { QueryCategorySamplesFn } from './utils/queryCategorySamples'
9
- import type { QueryQuantitySamplesFn } from './utils/queryQuantitySamples'
10
-
11
- const notAvailableError = `[@kingstinct/react-native-healthkit] Platform "${
12
- Platform.OS
13
- }" not supported`
14
-
15
- let hasWarned = false
16
-
17
- function UnavailableFn<T = unknown>(retVal: T) {
18
- return () => {
19
- if (!hasWarned) {
20
- // eslint-disable-next-line no-console
21
- console.warn(notAvailableError)
22
- hasWarned = true
23
- }
24
- return retVal
25
- }
26
- }
27
-
28
- const authorizationStatusFor = UnavailableFn(Promise.resolve(HKAuthorizationStatus.notDetermined)),
29
- availableQuantityTypes = UnavailableFn([]),
30
- disableAllBackgroundDelivery = UnavailableFn(Promise.resolve(false)),
31
- disableBackgroundDelivery = UnavailableFn(Promise.resolve(false)),
32
- enableBackgroundDelivery = UnavailableFn(Promise.resolve(false)),
33
- getBiologicalSex = UnavailableFn(Promise.resolve(HKBiologicalSex.notSet)),
34
- getBloodType = UnavailableFn(Promise.resolve(HKBloodType.notSet)),
35
- getDateOfBirth = UnavailableFn(Promise.resolve(new Date(0))),
36
- getFitzpatrickSkinType = UnavailableFn(Promise.resolve(HKFitzpatrickSkinType.notSet)),
37
- getMostRecentCategorySample = UnavailableFn(Promise.resolve(null)),
38
- getMostRecentQuantitySample = UnavailableFn(Promise.resolve(null)),
39
- getMostRecentWorkout = UnavailableFn(Promise.resolve(null)),
40
- getPreferredUnit = UnavailableFn(Promise.resolve(HKUnits.Count)),
41
- getPreferredUnits = UnavailableFn(Promise.resolve([])),
42
- getRequestStatusForAuthorization = UnavailableFn(Promise.resolve(HKAuthorizationRequestStatus.unknown)),
43
- getWheelchairUse = UnavailableFn(Promise.resolve(HKWheelchairUse.notSet)),
44
- getWorkoutRoutes = UnavailableFn(Promise.resolve([])),
45
- isHealthDataAvailable = async () => Promise.resolve(false),
46
- useSources = UnavailableFn(null),
47
- useStatisticsForQuantity = UnavailableFn(null),
48
- queryCategorySamples = UnavailableFn(Promise.resolve([])) as unknown as QueryCategorySamplesFn,
49
- queryCategorySamplesWithAnchor = UnavailableFn(Promise.resolve({
50
- samples: [],
51
- deletedSamples: [],
52
- newAnchor: '',
53
- })),
54
- queryCorrelationSamples = UnavailableFn(Promise.resolve([])),
55
- queryHeartbeatSeriesSamples = UnavailableFn(Promise.resolve([])),
56
- queryHeartbeatSeriesSamplesWithAnchor = UnavailableFn(Promise.resolve({
57
- samples: [],
58
- deletedSamples: [],
59
- newAnchor: '',
60
- })),
61
- queryQuantitySamples = UnavailableFn(Promise.resolve([])) as unknown as QueryQuantitySamplesFn,
62
- queryQuantitySamplesWithAnchor = UnavailableFn(Promise.resolve({
63
- samples: [],
64
- deletedSamples: [],
65
- newAnchor: '',
66
- })),
67
- queryStatisticsForQuantity = UnavailableFn(Promise.resolve({
68
- averageQuantity: undefined,
69
- maximumQuantity: undefined,
70
- minimumQuantity: undefined,
71
- sumQuantity: undefined,
72
- mostRecentQuantity: undefined,
73
- mostRecentQuantityDateInterval: undefined,
74
- duration: undefined,
75
- })),
76
- queryStatisticsCollectionForQuantity = UnavailableFn(Promise.resolve([
77
- {
78
- averageQuantity: undefined,
79
- maximumQuantity: undefined,
80
- minimumQuantity: undefined,
81
- sumQuantity: undefined,
82
- mostRecentQuantity: undefined,
83
- mostRecentQuantityDateInterval: undefined,
84
- duration: undefined,
85
- },
86
- ])),
87
- queryWorkouts = UnavailableFn(Promise.resolve([])),
88
- queryWorkoutSamples = UnavailableFn(Promise.resolve([])),
89
- queryWorkoutSamplesWithAnchor = UnavailableFn(Promise.resolve({
90
- samples: [],
91
- deletedSamples: [],
92
- newAnchor: '',
93
- })),
94
- querySources = UnavailableFn(Promise.resolve([])),
95
- requestAuthorization = UnavailableFn(Promise.resolve(false)),
96
- deleteQuantitySample = UnavailableFn(Promise.resolve(false)),
97
- deleteSamples = UnavailableFn(Promise.resolve(false)),
98
- deleteWorkoutSample = UnavailableFn(Promise.resolve(false)),
99
- getWorkoutPlanById = UnavailableFn(Promise.resolve(null)),
100
- saveCategorySample = UnavailableFn(Promise.resolve(false)),
101
- saveStateOfMindSample = UnavailableFn(Promise.resolve(false)),
102
- saveCorrelationSample = UnavailableFn(Promise.resolve(false)),
103
- saveQuantitySample = UnavailableFn(Promise.resolve(false)),
104
- saveWorkoutSample = UnavailableFn(Promise.resolve(null)),
105
- saveWorkoutRoute = UnavailableFn(Promise.resolve(false)),
106
- subscribeToChanges = UnavailableFn(Promise.resolve(async () => Promise.resolve(false))),
107
- startWatchApp = UnavailableFn(async () => Promise.resolve(false)),
108
- useMostRecentCategorySample = UnavailableFn(null),
109
- useMostRecentQuantitySample = UnavailableFn(null),
110
- useMostRecentWorkout = UnavailableFn(null),
111
- useSubscribeToChanges = UnavailableFn([null, () => null]),
112
- useHealthkitAuthorization = UnavailableFn([null, async () => Promise.resolve(HKAuthorizationRequestStatus.unknown)] as const),
113
- useIsHealthDataAvailable = () => false,
114
- isProtectedDataAvailable = async () => Promise.resolve(false),
115
- queryStateOfMindSamples = UnavailableFn(Promise.resolve([]))
116
-
117
- const Healthkit: typeof ReactNativeHealthkit = {
118
- authorizationStatusFor,
119
- availableQuantityTypes,
120
- deleteQuantitySample,
121
- deleteSamples,
122
- deleteWorkoutSample,
123
- disableAllBackgroundDelivery,
124
- disableBackgroundDelivery,
125
- enableBackgroundDelivery,
126
- getBiologicalSex,
127
- getBloodType,
128
- getDateOfBirth,
129
- getFitzpatrickSkinType,
130
- getMostRecentCategorySample,
131
- getMostRecentQuantitySample,
132
- getMostRecentWorkout,
133
- getPreferredUnit,
134
- getPreferredUnits,
135
- getRequestStatusForAuthorization,
136
- getWheelchairUse,
137
- getWorkoutPlanById,
138
- getWorkoutRoutes,
139
- isHealthDataAvailable,
140
- isProtectedDataAvailable,
141
- queryCategorySamples,
142
- queryCategorySamplesWithAnchor,
143
- queryCorrelationSamples,
144
- queryHeartbeatSeriesSamples,
145
- queryHeartbeatSeriesSamplesWithAnchor,
146
- queryQuantitySamples,
147
- queryQuantitySamplesWithAnchor,
148
- querySources,
149
- queryStatisticsForQuantity,
150
- queryStatisticsCollectionForQuantity,
151
- queryWorkouts,
152
- queryWorkoutSamples,
153
- queryWorkoutSamplesWithAnchor,
154
- requestAuthorization,
155
- saveStateOfMindSample,
156
- saveCategorySample,
157
- saveCorrelationSample,
158
- saveQuantitySample,
159
- saveWorkoutRoute,
160
- saveWorkoutSample,
161
- subscribeToChanges,
162
- startWatchApp,
163
- useHealthkitAuthorization,
164
- useIsHealthDataAvailable,
165
- useMostRecentCategorySample,
166
- useMostRecentQuantitySample,
167
- useMostRecentWorkout,
168
- useSources,
169
- useStatisticsForQuantity,
170
- useSubscribeToChanges,
171
- queryStateOfMindSamples,
172
- }
173
-
174
- export {
175
- authorizationStatusFor,
176
- availableQuantityTypes,
177
- deleteQuantitySample,
178
- deleteSamples,
179
- deleteWorkoutSample,
180
- disableAllBackgroundDelivery,
181
- disableBackgroundDelivery,
182
- enableBackgroundDelivery,
183
- getBiologicalSex,
184
- getBloodType,
185
- getDateOfBirth,
186
- getFitzpatrickSkinType,
187
- getMostRecentCategorySample,
188
- getMostRecentQuantitySample,
189
- getMostRecentWorkout,
190
- getPreferredUnit,
191
- getPreferredUnits,
192
- getRequestStatusForAuthorization,
193
- getWheelchairUse,
194
- getWorkoutPlanById,
195
- getWorkoutRoutes,
196
- isHealthDataAvailable,
197
- isProtectedDataAvailable,
198
- queryCategorySamples,
199
- queryCategorySamplesWithAnchor,
200
- queryCorrelationSamples,
201
- queryHeartbeatSeriesSamples,
202
- queryHeartbeatSeriesSamplesWithAnchor,
203
- queryQuantitySamples,
204
- queryQuantitySamplesWithAnchor,
205
- querySources,
206
- queryStatisticsForQuantity,
207
- queryStatisticsCollectionForQuantity,
208
- queryWorkouts,
209
- queryWorkoutSamples,
210
- queryWorkoutSamplesWithAnchor,
211
- requestAuthorization,
212
- saveCategorySample,
213
- saveStateOfMindSample,
214
- saveCorrelationSample,
215
- saveQuantitySample,
216
- saveWorkoutRoute,
217
- saveWorkoutSample,
218
- subscribeToChanges,
219
- startWatchApp,
220
- useHealthkitAuthorization,
221
- useIsHealthDataAvailable,
222
- useMostRecentCategorySample,
223
- useMostRecentQuantitySample,
224
- useMostRecentWorkout,
225
- useSources,
226
- useStatisticsForQuantity,
227
- useSubscribeToChanges,
228
- queryStateOfMindSamples,
229
- }
230
-
231
- export * from './types'
232
-
233
- export default Healthkit
package/src/index.tsx DELETED
@@ -1,5 +0,0 @@
1
- import Healthkit from './index.ios'
2
-
3
- export * from './index.ios'
4
-
5
- export default Healthkit
package/src/index.web.tsx DELETED
@@ -1,5 +0,0 @@
1
- import Healthkit from './index.native'
2
-
3
- export * from './index.native'
4
-
5
- export default Healthkit