@kingstinct/react-native-healthkit 12.1.2 → 12.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/ios/CategoryTypeModule.swift +49 -97
  2. package/ios/CharacteristicTypeModule.swift +77 -63
  3. package/ios/CoreModule.swift +324 -280
  4. package/ios/CorrelationTypeModule.swift +192 -144
  5. package/ios/ElectrocardiogramModule.swift +185 -194
  6. package/ios/HeartbeatSeriesModule.swift +123 -171
  7. package/ios/Helpers.swift +312 -571
  8. package/ios/MedicationModule.swift +259 -0
  9. package/ios/PredicateHelpers.swift +334 -0
  10. package/ios/QuantityTypeModule.swift +297 -378
  11. package/ios/Serializers.swift +273 -210
  12. package/ios/SourceProxy.swift +2 -2
  13. package/ios/StateOfMindModule.swift +179 -125
  14. package/ios/WorkoutProxy.swift +235 -112
  15. package/ios/WorkoutsModule.swift +214 -262
  16. package/lib/commonjs/healthkit.ios.js +22 -2
  17. package/lib/commonjs/healthkit.js +35 -5
  18. package/lib/commonjs/hooks/useStatisticsForQuantity.js +1 -1
  19. package/lib/commonjs/hooks/useSubscribeToCategorySamples.js +20 -0
  20. package/lib/commonjs/modules.js +2 -1
  21. package/lib/commonjs/specs/MedicationModule.nitro.js +27 -0
  22. package/lib/commonjs/types/Constants.js +2 -1
  23. package/lib/commonjs/types/QuantityType.js +8 -1
  24. package/lib/commonjs/types/QueryOptions.js +18 -0
  25. package/lib/commonjs/types/WeatherCondition.js +32 -32
  26. package/lib/commonjs/types/Workouts.js +1 -50
  27. package/lib/commonjs/utils/getCategorySampleById.js +1 -1
  28. package/lib/commonjs/utils/getQuantitySampleById.js +1 -1
  29. package/lib/commonjs/utils/getWorkoutById.js +1 -1
  30. package/lib/commonjs/utils/subscribeToCategorySamples.js +29 -0
  31. package/lib/commonjs/utils/subscribeToQuantitySamples.js +8 -25
  32. package/lib/module/healthkit.ios.js +20 -2
  33. package/lib/module/healthkit.js +32 -2
  34. package/lib/module/hooks/useStatisticsForQuantity.js +1 -1
  35. package/lib/module/hooks/useSubscribeToCategorySamples.js +17 -0
  36. package/lib/module/modules.js +1 -0
  37. package/lib/module/specs/MedicationModule.nitro.js +26 -0
  38. package/lib/module/types/Constants.js +1 -0
  39. package/lib/module/types/QuantityType.js +7 -0
  40. package/lib/module/types/QueryOptions.js +17 -1
  41. package/lib/module/types/WeatherCondition.js +31 -31
  42. package/lib/module/types/Workouts.js +0 -49
  43. package/lib/module/utils/getCategorySampleById.js +1 -1
  44. package/lib/module/utils/getQuantitySampleById.js +1 -1
  45. package/lib/module/utils/getWorkoutById.js +1 -1
  46. package/lib/module/utils/subscribeToCategorySamples.js +26 -0
  47. package/lib/module/utils/subscribeToQuantitySamples.js +8 -25
  48. package/lib/typescript/healthkit.d.ts +18 -9
  49. package/lib/typescript/healthkit.ios.d.ts +33 -15
  50. package/lib/typescript/hooks/useSubscribeToCategorySamples.d.ts +3 -0
  51. package/lib/typescript/modules.d.ts +2 -0
  52. package/lib/typescript/specs/CategoryTypeModule.nitro.d.ts +2 -2
  53. package/lib/typescript/specs/CoreModule.nitro.d.ts +2 -1
  54. package/lib/typescript/specs/CorrelationTypeModule.nitro.d.ts +4 -2
  55. package/lib/typescript/specs/ElectrocardiogramModule.nitro.d.ts +1 -1
  56. package/lib/typescript/specs/HeartbeatSeriesModule.nitro.d.ts +1 -1
  57. package/lib/typescript/specs/MedicationModule.nitro.d.ts +56 -0
  58. package/lib/typescript/specs/QuantityTypeModule.nitro.d.ts +4 -4
  59. package/lib/typescript/specs/StateOfMindModule.nitro.d.ts +4 -3
  60. package/lib/typescript/types/CategoryType.d.ts +10 -20
  61. package/lib/typescript/types/Constants.d.ts +1 -0
  62. package/lib/typescript/types/CorrelationType.d.ts +8 -10
  63. package/lib/typescript/types/ElectrocardiogramSample.d.ts +2 -12
  64. package/lib/typescript/types/HeartbeatSeries.d.ts +2 -14
  65. package/lib/typescript/types/QuantitySample.d.ts +2 -8
  66. package/lib/typescript/types/QuantityType.d.ts +7 -8
  67. package/lib/typescript/types/QuantityTypeIdentifier.d.ts +23 -23
  68. package/lib/typescript/types/QueryOptions.d.ts +43 -28
  69. package/lib/typescript/types/Shared.d.ts +52 -7
  70. package/lib/typescript/types/StateOfMind.d.ts +7 -10
  71. package/lib/typescript/types/Subscriptions.d.ts +12 -3
  72. package/lib/typescript/types/WeatherCondition.d.ts +1 -1
  73. package/lib/typescript/types/Workouts.d.ts +28 -81
  74. package/lib/typescript/utils/subscribeToCategorySamples.d.ts +5 -0
  75. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.cpp +57 -0
  76. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.hpp +592 -389
  77. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Umbrella.hpp +65 -30
  78. package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.mm +8 -0
  79. package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.swift +15 -0
  80. package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.hpp +32 -26
  81. package/nitrogen/generated/ios/c++/HybridCoreModuleSpecSwift.hpp +36 -37
  82. package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.hpp +55 -2
  83. package/nitrogen/generated/ios/c++/HybridElectrocardiogramModuleSpecSwift.hpp +36 -30
  84. package/nitrogen/generated/ios/c++/HybridHeartbeatSeriesModuleSpecSwift.hpp +35 -29
  85. package/nitrogen/generated/ios/c++/HybridMedicationModuleSpecSwift.cpp +11 -0
  86. package/nitrogen/generated/ios/c++/HybridMedicationModuleSpecSwift.hpp +181 -0
  87. package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.hpp +48 -42
  88. package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.hpp +59 -36
  89. package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.hpp +150 -29
  90. package/nitrogen/generated/ios/c++/HybridWorkoutsModuleSpecSwift.hpp +13 -28
  91. package/nitrogen/generated/ios/swift/AggregationStyle.swift +48 -0
  92. package/nitrogen/generated/ios/swift/CategorySample.swift +571 -24
  93. package/nitrogen/generated/ios/swift/ComparisonPredicateOperator.swift +2 -2
  94. package/nitrogen/generated/ios/swift/CorrelationSample.swift +640 -17
  95. package/nitrogen/generated/ios/swift/{PredicateWithStartAndEnd.swift → DateFilter.swift} +5 -5
  96. package/nitrogen/generated/ios/swift/ECGQueryOptionsWithAnchor.swift +11 -91
  97. package/nitrogen/generated/ios/swift/ECGQueryOptionsWithSortOrder.swift +11 -91
  98. package/nitrogen/generated/ios/swift/ElectrocardiogramSample.swift +570 -72
  99. package/nitrogen/generated/ios/swift/FilterForSamples.swift +349 -12
  100. package/nitrogen/generated/ios/swift/FilterForSamplesBase.swift +234 -0
  101. package/nitrogen/generated/ios/swift/FilterForWorkouts.swift +366 -0
  102. package/nitrogen/generated/ios/swift/FilterForWorkoutsBase.swift +240 -0
  103. package/nitrogen/generated/ios/swift/Func_void_MedicationDoseEventsWithAnchorResponse.swift +47 -0
  104. package/nitrogen/generated/ios/swift/Func_void_QueryCorrelationSamplesWithAnchorResponse.swift +47 -0
  105. package/nitrogen/generated/ios/swift/Func_void_StateOfMindSamplesWithAnchorResponse.swift +47 -0
  106. package/nitrogen/generated/ios/swift/Func_void_std__vector_MedicationDoseEvent_.swift +47 -0
  107. package/nitrogen/generated/ios/swift/Func_void_std__vector_UserAnnotatedMedication_.swift +47 -0
  108. package/nitrogen/generated/ios/swift/GeneralForm.swift +104 -0
  109. package/nitrogen/generated/ios/swift/HeartRateMotionContext.swift +44 -0
  110. package/nitrogen/generated/ios/swift/HeartbeatSeriesSample.swift +565 -37
  111. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec.swift +1 -1
  112. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec_cxx.swift +2 -2
  113. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec.swift +2 -1
  114. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec_cxx.swift +19 -31
  115. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec.swift +2 -1
  116. package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec_cxx.swift +21 -2
  117. package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec.swift +1 -1
  118. package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec_cxx.swift +2 -2
  119. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec.swift +1 -1
  120. package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec_cxx.swift +2 -2
  121. package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec.swift +60 -0
  122. package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec_cxx.swift +208 -0
  123. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec.swift +2 -2
  124. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec_cxx.swift +9 -43
  125. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec.swift +2 -1
  126. package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec_cxx.swift +21 -2
  127. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +34 -6
  128. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +376 -36
  129. package/nitrogen/generated/ios/swift/InsulinDeliveryReason.swift +40 -0
  130. package/nitrogen/generated/ios/swift/MedicationConcept.swift +80 -0
  131. package/nitrogen/generated/ios/swift/MedicationDoseEvent.swift +781 -0
  132. package/nitrogen/generated/ios/swift/MedicationDoseEventLogStatus.swift +56 -0
  133. package/nitrogen/generated/ios/swift/MedicationDoseEventScheduleType.swift +40 -0
  134. package/nitrogen/generated/ios/swift/MedicationDoseEventsWithAnchorResponse.swift +81 -0
  135. package/nitrogen/generated/ios/swift/ObjectTypeIdentifier.swift +16 -16
  136. package/nitrogen/generated/ios/swift/PredicateWithMetadataKey.swift +7 -7
  137. package/nitrogen/generated/ios/swift/QuantitySample.swift +574 -27
  138. package/nitrogen/generated/ios/swift/QuantityTypeIdentifier.swift +16 -16
  139. package/nitrogen/generated/ios/swift/QueryCorrelationSamplesWithAnchorResponse.swift +81 -0
  140. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchor.swift +11 -91
  141. package/nitrogen/generated/ios/swift/QueryOptionsWithAnchorAndUnit.swift +11 -91
  142. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrder.swift +11 -91
  143. package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrderAndUnit.swift +11 -91
  144. package/nitrogen/generated/ios/swift/RelatedCoding.swift +76 -0
  145. package/nitrogen/generated/ios/swift/SampleType.swift +68 -0
  146. package/nitrogen/generated/ios/swift/SampleTypeIdentifier.swift +16 -16
  147. package/nitrogen/generated/ios/swift/SampleTypeIdentifierWriteable.swift +0 -16
  148. package/nitrogen/generated/ios/swift/StateOfMindSample.swift +586 -58
  149. package/nitrogen/generated/ios/swift/StateOfMindSamplesWithAnchorResponse.swift +81 -0
  150. package/nitrogen/generated/ios/swift/StatisticsQueryOptions.swift +7 -75
  151. package/nitrogen/generated/ios/swift/UserAnnotatedMedication.swift +87 -0
  152. package/nitrogen/generated/ios/swift/WeatherCondition.swift +144 -0
  153. package/nitrogen/generated/ios/swift/WorkoutQueryOptions.swift +11 -105
  154. package/nitrogen/generated/ios/swift/WorkoutQueryOptionsWithAnchor.swift +11 -105
  155. package/nitrogen/generated/ios/swift/WorkoutSample.swift +751 -78
  156. package/nitrogen/generated/shared/c++/AggregationStyle.hpp +64 -0
  157. package/nitrogen/generated/shared/c++/CategorySample.hpp +126 -23
  158. package/nitrogen/generated/shared/c++/CorrelationSample.hpp +134 -12
  159. package/nitrogen/generated/shared/c++/{PredicateWithStartAndEnd.hpp → DateFilter.hpp} +10 -10
  160. package/nitrogen/generated/shared/c++/ECGQueryOptionsWithAnchor.hpp +12 -31
  161. package/nitrogen/generated/shared/c++/ECGQueryOptionsWithSortOrder.hpp +12 -31
  162. package/nitrogen/generated/shared/c++/ElectrocardiogramSample.hpp +135 -36
  163. package/nitrogen/generated/shared/c++/FilterForSamples.hpp +124 -0
  164. package/nitrogen/generated/shared/c++/FilterForSamplesBase.hpp +109 -0
  165. package/nitrogen/generated/shared/c++/FilterForWorkouts.hpp +131 -0
  166. package/nitrogen/generated/shared/c++/FilterForWorkoutsBase.hpp +116 -0
  167. package/nitrogen/generated/shared/c++/GeneralForm.hpp +140 -0
  168. package/nitrogen/generated/shared/c++/HeartRateMotionContext.hpp +67 -0
  169. package/nitrogen/generated/shared/c++/HeartbeatSeriesSample.hpp +131 -28
  170. package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.hpp +1 -2
  171. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.cpp +1 -0
  172. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.hpp +10 -28
  173. package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.cpp +1 -0
  174. package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.hpp +11 -1
  175. package/nitrogen/generated/shared/c++/HybridElectrocardiogramModuleSpec.hpp +1 -2
  176. package/nitrogen/generated/shared/c++/HybridHeartbeatSeriesModuleSpec.hpp +1 -2
  177. package/nitrogen/generated/shared/c++/HybridMedicationModuleSpec.cpp +24 -0
  178. package/nitrogen/generated/shared/c++/HybridMedicationModuleSpec.hpp +80 -0
  179. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.cpp +1 -1
  180. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.hpp +6 -25
  181. package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.cpp +1 -0
  182. package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.hpp +9 -2
  183. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.cpp +33 -5
  184. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.hpp +56 -16
  185. package/nitrogen/generated/shared/c++/InsulinDeliveryReason.hpp +62 -0
  186. package/nitrogen/generated/shared/c++/MedicationConcept.hpp +93 -0
  187. package/nitrogen/generated/shared/c++/MedicationDoseEvent.hpp +240 -0
  188. package/nitrogen/generated/shared/c++/MedicationDoseEventLogStatus.hpp +66 -0
  189. package/nitrogen/generated/shared/c++/MedicationDoseEventScheduleType.hpp +62 -0
  190. package/nitrogen/generated/shared/c++/MedicationDoseEventsWithAnchorResponse.hpp +89 -0
  191. package/nitrogen/generated/shared/c++/ObjectTypeIdentifier.hpp +105 -105
  192. package/nitrogen/generated/shared/c++/PredicateWithMetadataKey.hpp +8 -8
  193. package/nitrogen/generated/shared/c++/QuantitySample.hpp +130 -27
  194. package/nitrogen/generated/shared/c++/QuantityTypeIdentifier.hpp +105 -105
  195. package/nitrogen/generated/shared/c++/QueryCorrelationSamplesWithAnchorResponse.hpp +89 -0
  196. package/nitrogen/generated/shared/c++/QueryOptionsWithAnchor.hpp +12 -31
  197. package/nitrogen/generated/shared/c++/QueryOptionsWithAnchorAndUnit.hpp +12 -31
  198. package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrder.hpp +12 -31
  199. package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrderAndUnit.hpp +12 -31
  200. package/nitrogen/generated/shared/c++/RelatedCoding.hpp +84 -0
  201. package/nitrogen/generated/shared/c++/SampleType.hpp +87 -0
  202. package/nitrogen/generated/shared/c++/SampleTypeIdentifier.hpp +105 -105
  203. package/nitrogen/generated/shared/c++/SampleTypeIdentifierWriteable.hpp +105 -121
  204. package/nitrogen/generated/shared/c++/StateOfMindSample.hpp +139 -36
  205. package/nitrogen/generated/shared/c++/StateOfMindSamplesWithAnchorResponse.hpp +89 -0
  206. package/nitrogen/generated/shared/c++/StatisticsQueryOptions.hpp +8 -27
  207. package/nitrogen/generated/shared/c++/UserAnnotatedMedication.hpp +90 -0
  208. package/nitrogen/generated/shared/c++/WeatherCondition.hpp +88 -0
  209. package/nitrogen/generated/shared/c++/WorkoutQueryOptions.hpp +12 -37
  210. package/nitrogen/generated/shared/c++/WorkoutQueryOptionsWithAnchor.hpp +12 -37
  211. package/nitrogen/generated/shared/c++/WorkoutSample.hpp +159 -35
  212. package/package.json +1 -1
  213. package/src/healthkit.ios.ts +30 -0
  214. package/src/healthkit.ts +68 -3
  215. package/src/hooks/useStatisticsForQuantity.ts +1 -1
  216. package/src/hooks/useSubscribeToCategorySamples.ts +31 -0
  217. package/src/modules.ts +4 -0
  218. package/src/specs/CategoryTypeModule.nitro.ts +2 -2
  219. package/src/specs/CoreModule.nitro.ts +3 -0
  220. package/src/specs/CorrelationTypeModule.nitro.ts +11 -3
  221. package/src/specs/ElectrocardiogramModule.nitro.ts +1 -1
  222. package/src/specs/HeartbeatSeriesModule.nitro.ts +1 -1
  223. package/src/specs/MedicationModule.nitro.ts +140 -0
  224. package/src/specs/QuantityTypeModule.nitro.ts +4 -7
  225. package/src/specs/StateOfMindModule.nitro.ts +10 -2
  226. package/src/types/CategoryType.ts +15 -22
  227. package/src/types/Constants.ts +3 -0
  228. package/src/types/CorrelationType.ts +10 -15
  229. package/src/types/ElectrocardiogramSample.ts +2 -14
  230. package/src/types/HeartbeatSeries.ts +2 -15
  231. package/src/types/QuantitySample.ts +2 -8
  232. package/src/types/QuantityType.ts +8 -17
  233. package/src/types/QuantityTypeIdentifier.ts +25 -25
  234. package/src/types/QueryOptions.ts +54 -43
  235. package/src/types/Shared.ts +74 -17
  236. package/src/types/StateOfMind.ts +8 -10
  237. package/src/types/Subscriptions.ts +19 -3
  238. package/src/types/WeatherCondition.ts +1 -1
  239. package/src/types/Workouts.ts +28 -91
  240. package/src/utils/getCategorySampleById.ts +1 -1
  241. package/src/utils/getQuantitySampleById.ts +1 -1
  242. package/src/utils/getWorkoutById.ts +1 -2
  243. package/src/utils/subscribeToCategorySamples.ts +38 -0
  244. package/src/utils/subscribeToQuantitySamples.ts +12 -37
  245. package/nitrogen/generated/ios/swift/FilterForSamplesAnd.swift +0 -94
  246. package/nitrogen/generated/ios/swift/FilterForSamplesOr.swift +0 -94
  247. package/nitrogen/generated/ios/swift/PredicateForSamples.swift +0 -21
  248. package/nitrogen/generated/ios/swift/PredicateForWorkouts.swift +0 -23
  249. package/nitrogen/generated/ios/swift/PredicateForWorkoutsAnd.swift +0 -108
  250. package/nitrogen/generated/ios/swift/PredicateForWorkoutsOr.swift +0 -108
  251. package/nitrogen/generated/ios/swift/PredicateFromWorkout.swift +0 -45
  252. package/nitrogen/generated/ios/swift/PredicateWithMetadataOperator.swift +0 -48
  253. package/nitrogen/generated/ios/swift/PredicateWithUUID.swift +0 -35
  254. package/nitrogen/generated/ios/swift/PredicateWithUUIDs.swift +0 -47
  255. package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_FilterForSamplesAnd_FilterForSamplesOr.swift +0 -23
  256. package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_WorkoutActivityTypePredicate_WorkoutDurationPredicate_PredicateForWorkoutsOr_PredicateForWorkoutsAnd.swift +0 -25
  257. package/nitrogen/generated/ios/swift/WorkoutActivityTypePredicate.swift +0 -35
  258. package/nitrogen/generated/shared/c++/FilterForSamplesAnd.hpp +0 -90
  259. package/nitrogen/generated/shared/c++/FilterForSamplesOr.hpp +0 -90
  260. package/nitrogen/generated/shared/c++/PredicateForWorkoutsAnd.hpp +0 -96
  261. package/nitrogen/generated/shared/c++/PredicateForWorkoutsOr.hpp +0 -96
  262. package/nitrogen/generated/shared/c++/PredicateFromWorkout.hpp +0 -77
  263. package/nitrogen/generated/shared/c++/PredicateWithMetadataOperator.hpp +0 -84
  264. package/nitrogen/generated/shared/c++/PredicateWithUUID.hpp +0 -75
  265. package/nitrogen/generated/shared/c++/PredicateWithUUIDs.hpp +0 -76
  266. package/nitrogen/generated/shared/c++/WorkoutActivityTypePredicate.hpp +0 -76
@@ -14,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.useSources = exports.useIsHealthDataAvailable = exports.useHealthkitAuthorization = exports.useSubscribeToChanges = exports.useMostRecentWorkout = exports.useMostRecentQuantitySample = exports.getPreferredUnit = exports.getMostRecentWorkout = exports.getMostRecentQuantitySample = exports.saveStateOfMindSample = exports.queryStateOfMindSamples = exports.startWatchApp = exports.saveWorkoutSample = exports.queryWorkoutSamplesWithAnchor = exports.queryWorkoutSamples = exports.queryElectrocardiogramSamplesWithAnchor = exports.queryElectrocardiogramSamples = exports.queryHeartbeatSeriesSamplesWithAnchor = exports.queryHeartbeatSeriesSamples = exports.saveCorrelationSample = exports.queryCorrelationSamples = exports.saveCategorySample = exports.isQuantityCompatibleWithUnit = exports.saveQuantitySample = exports.queryStatisticsCollectionForQuantity = exports.queryStatisticsForQuantity = exports.queryQuantitySamplesWithAnchor = exports.queryQuantitySamples = exports.getWheelchairUse = exports.getFitzpatrickSkinType = exports.getDateOfBirth = exports.getBloodType = exports.getBiologicalSex = exports.areObjectTypesAvailableAsync = exports.areObjectTypesAvailable = exports.isObjectTypeAvailableAsync = exports.isObjectTypeAvailable = exports.isProtectedDataAvailable = exports.subscribeToChanges = exports.deleteObjects = exports.requestAuthorization = exports.querySources = exports.isHealthDataAvailableAsync = exports.isHealthDataAvailable = exports.getRequestStatusForAuthorization = exports.getPreferredUnits = exports.enableBackgroundDelivery = exports.disableBackgroundDelivery = exports.disableAllBackgroundDelivery = exports.authorizationStatusFor = void 0;
18
- exports.useSubscribeToQuantitySamples = exports.subscribeToQuantitySamples = exports.getWheelchairUseAsync = exports.getFitzpatrickSkinTypeAsync = exports.getDateOfBirthAsync = exports.getBloodTypeAsync = exports.getBiologicalSexAsync = exports.useStatisticsForQuantity = void 0;
17
+ exports.useHealthkitAuthorization = exports.useSubscribeToChanges = exports.useMostRecentWorkout = exports.useMostRecentQuantitySample = exports.getPreferredUnit = exports.getMostRecentWorkout = exports.getMostRecentQuantitySample = exports.saveStateOfMindSample = exports.queryCorrelationSamplesWithAnchor = exports.queryStateOfMindSamplesWithAnchor = exports.queryStateOfMindSamples = exports.startWatchApp = exports.saveWorkoutSample = exports.queryWorkoutSamplesWithAnchor = exports.queryWorkoutSamples = exports.queryElectrocardiogramSamplesWithAnchor = exports.queryElectrocardiogramSamples = exports.queryHeartbeatSeriesSamplesWithAnchor = exports.queryHeartbeatSeriesSamples = exports.saveCorrelationSample = exports.queryCorrelationSamples = exports.saveCategorySample = exports.isQuantityCompatibleWithUnit = exports.saveQuantitySample = exports.queryStatisticsCollectionForQuantity = exports.queryStatisticsForQuantity = exports.queryQuantitySamplesWithAnchor = exports.queryQuantitySamples = exports.getWheelchairUse = exports.getFitzpatrickSkinType = exports.getDateOfBirth = exports.getBloodType = exports.getBiologicalSex = exports.areObjectTypesAvailableAsync = exports.areObjectTypesAvailable = exports.isObjectTypeAvailableAsync = exports.isObjectTypeAvailable = exports.isProtectedDataAvailable = exports.subscribeToChanges = exports.deleteObjects = exports.requestAuthorization = exports.querySources = exports.isHealthDataAvailableAsync = exports.isHealthDataAvailable = exports.getRequestStatusForAuthorization = exports.getPreferredUnits = exports.enableBackgroundDelivery = exports.disableBackgroundDelivery = exports.disableAllBackgroundDelivery = exports.authorizationStatusFor = void 0;
18
+ exports.requestMedicationsAuthorization = exports.subscribeToCategorySamples = exports.useSubscribeToCategorySamples = exports.useSubscribeToQuantitySamples = exports.queryMedicationEventsWithAnchor = exports.queryMedicationEvents = exports.queryMedications = exports.currentAppSource = exports.subscribeToQuantitySamples = exports.getWheelchairUseAsync = exports.getFitzpatrickSkinTypeAsync = exports.getDateOfBirthAsync = exports.getBloodTypeAsync = exports.getBiologicalSexAsync = exports.useStatisticsForQuantity = exports.useSources = exports.useIsHealthDataAvailable = void 0;
19
19
  exports.queryCategorySamples = queryCategorySamples;
20
20
  exports.queryCategorySamplesWithAnchor = queryCategorySamplesWithAnchor;
21
21
  exports.getMostRecentCategorySample = getMostRecentCategorySample;
@@ -123,6 +123,16 @@ Promise.resolve(undefined));
123
123
  exports.startWatchApp = UnavailableFnFromModule('startWatchApp', Promise.resolve(false));
124
124
  // StateOfMindModule functions
125
125
  exports.queryStateOfMindSamples = UnavailableFnFromModule('queryStateOfMindSamples', Promise.resolve([]));
126
+ exports.queryStateOfMindSamplesWithAnchor = UnavailableFnFromModule('queryStateOfMindSamplesWithAnchor', Promise.resolve({
127
+ samples: [],
128
+ deletedSamples: [],
129
+ newAnchor: '',
130
+ }));
131
+ exports.queryCorrelationSamplesWithAnchor = UnavailableFnFromModule('queryCorrelationSamplesWithAnchor', Promise.resolve({
132
+ correlations: [],
133
+ deletedSamples: [],
134
+ newAnchor: '',
135
+ }));
126
136
  exports.saveStateOfMindSample = UnavailableFnFromModule('saveStateOfMindSample', Promise.resolve(false));
127
137
  // Utility functions (from original export list)
128
138
  function getMostRecentCategorySample(_identifier) {
@@ -166,8 +176,19 @@ const subscribeToQuantitySamples = UnavailableFnFromModule('subscribeToQuantityS
166
176
  remove: () => false,
167
177
  }); // Mocking the observer query UUID
168
178
  exports.subscribeToQuantitySamples = subscribeToQuantitySamples;
169
- const useSubscribeToQuantitySamples = UnavailableFnFromModule('useSubscribeToQuantitySamples', undefined); // Mocking callback structure
170
- exports.useSubscribeToQuantitySamples = useSubscribeToQuantitySamples;
179
+ exports.currentAppSource = UnavailableFnFromModule('currentAppSource', {
180
+ bundleIdentifier: '',
181
+ name: '',
182
+ }); // Mocking callback structure
183
+ exports.queryMedications = UnavailableFnFromModule('queryMedications', Promise.resolve([])); // Mocking callback structure
184
+ exports.queryMedicationEvents = UnavailableFnFromModule('queryMedicationEvents', Promise.resolve([])); // Mocking callback structure
185
+ exports.queryMedicationEventsWithAnchor = UnavailableFnFromModule('queryMedicationEventsWithAnchor', Promise.resolve({ newAnchor: '', samples: [], deletedSamples: [] })); // Mocking callback structure
186
+ exports.useSubscribeToQuantitySamples = UnavailableFnFromModule('useSubscribeToQuantitySamples', undefined);
187
+ exports.useSubscribeToCategorySamples = UnavailableFnFromModule('useSubscribeToCategorySamples', undefined);
188
+ exports.subscribeToCategorySamples = UnavailableFnFromModule('subscribeToCategorySamples', {
189
+ remove: () => false,
190
+ }); // Mocking the observer query UUID
191
+ exports.requestMedicationsAuthorization = UnavailableFnFromModule('requestMedicationsAuthorization', Promise.resolve(false)); // Mocking callback structure
171
192
  // --- Default Export ---
172
193
  // This attempts to match the structure of the default export from index.ios.ts
173
194
  const HealthkitModule = {
@@ -218,9 +239,17 @@ const HealthkitModule = {
218
239
  startWatchApp: exports.startWatchApp,
219
240
  isProtectedDataAvailable: exports.isProtectedDataAvailable,
220
241
  queryStateOfMindSamples: exports.queryStateOfMindSamples,
242
+ queryStateOfMindSamplesWithAnchor: exports.queryStateOfMindSamplesWithAnchor,
221
243
  saveStateOfMindSample: exports.saveStateOfMindSample,
222
244
  subscribeToQuantitySamples,
223
- useSubscribeToQuantitySamples,
245
+ useSubscribeToQuantitySamples: exports.useSubscribeToQuantitySamples,
246
+ queryCorrelationSamplesWithAnchor: exports.queryCorrelationSamplesWithAnchor,
247
+ queryMedications: exports.queryMedications,
248
+ queryMedicationEvents: exports.queryMedicationEvents,
249
+ queryMedicationEventsWithAnchor: exports.queryMedicationEventsWithAnchor,
250
+ requestMedicationsAuthorization: exports.requestMedicationsAuthorization,
251
+ subscribeToCategorySamples: exports.subscribeToCategorySamples,
252
+ currentAppSource: exports.currentAppSource,
224
253
  // Hooks
225
254
  useMostRecentCategorySample,
226
255
  useMostRecentQuantitySample: exports.useMostRecentQuantitySample,
@@ -228,6 +257,7 @@ const HealthkitModule = {
228
257
  useSubscribeToChanges: exports.useSubscribeToChanges,
229
258
  useHealthkitAuthorization: exports.useHealthkitAuthorization,
230
259
  useIsHealthDataAvailable: exports.useIsHealthDataAvailable,
260
+ useSubscribeToCategorySamples: exports.useSubscribeToCategorySamples,
231
261
  useSources: exports.useSources,
232
262
  useStatisticsForQuantity: exports.useStatisticsForQuantity,
233
263
  getBiologicalSexAsync: exports.getBiologicalSexAsync,
@@ -14,7 +14,7 @@ function useStatisticsForQuantity(identifier, options, from, to, unit) {
14
14
  optionsRef.current = options;
15
15
  }, [options]);
16
16
  const update = (0, react_1.useCallback)(async () => {
17
- const res = await modules_1.QuantityTypes.queryStatisticsForQuantity(identifier, optionsRef.current, { filter: { startDate: from, endDate: to }, unit });
17
+ const res = await modules_1.QuantityTypes.queryStatisticsForQuantity(identifier, optionsRef.current, { filter: { date: { startDate: from, endDate: to } }, unit });
18
18
  setResult(res);
19
19
  }, [identifier, from, to, unit]);
20
20
  (0, react_1.useEffect)(() => {
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSubscribeToCategorySamples = useSubscribeToCategorySamples;
4
+ const react_1 = require("react");
5
+ const subscribeToCategorySamples_1 = require("../utils/subscribeToCategorySamples");
6
+ function useSubscribeToCategorySamples(identifier, onChange) {
7
+ const onChangeRef = (0, react_1.useRef)(onChange);
8
+ (0, react_1.useEffect)(() => {
9
+ onChangeRef.current = onChange;
10
+ }, [onChange]);
11
+ (0, react_1.useEffect)(() => {
12
+ const subscription = (0, subscribeToCategorySamples_1.subscribeToCategorySamples)(identifier, (args) => {
13
+ onChangeRef.current(args);
14
+ });
15
+ return () => {
16
+ subscription.remove();
17
+ };
18
+ }, [identifier]);
19
+ }
20
+ exports.default = useSubscribeToCategorySamples;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StateOfMind = exports.HeartbeatSeries = exports.Electrocardiograms = exports.CorrelationTypes = exports.CategoryTypes = exports.QuantityTypes = exports.Characteristics = exports.Workouts = exports.Core = void 0;
3
+ exports.StateOfMind = exports.HeartbeatSeries = exports.Electrocardiograms = exports.CorrelationTypes = exports.CategoryTypes = exports.QuantityTypes = exports.Characteristics = exports.Workouts = exports.Medication = exports.Core = void 0;
4
4
  const react_native_nitro_modules_1 = require("react-native-nitro-modules");
5
5
  exports.Core = react_native_nitro_modules_1.NitroModules.createHybridObject('CoreModule');
6
+ exports.Medication = react_native_nitro_modules_1.NitroModules.createHybridObject('MedicationModule');
6
7
  exports.Workouts = react_native_nitro_modules_1.NitroModules.createHybridObject('WorkoutsModule');
7
8
  exports.Characteristics = react_native_nitro_modules_1.NitroModules.createHybridObject('CharacteristicTypeModule');
8
9
  exports.QuantityTypes = react_native_nitro_modules_1.NitroModules.createHybridObject('QuantityTypeModule');
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var MedicationDoseEventScheduleType;
4
+ (function (MedicationDoseEventScheduleType) {
5
+ MedicationDoseEventScheduleType[MedicationDoseEventScheduleType["asNeeded"] = 1] = "asNeeded";
6
+ /// The person logged this dose event in response to a scheduled medication reminder.
7
+ MedicationDoseEventScheduleType[MedicationDoseEventScheduleType["schedule"] = 2] = "schedule";
8
+ })(MedicationDoseEventScheduleType || (MedicationDoseEventScheduleType = {}));
9
+ var MedicationDoseEventLogStatus;
10
+ (function (MedicationDoseEventLogStatus) {
11
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["notInteracted"] = 1] = "notInteracted";
12
+ /// The system assigns this status when it fails to deliver a scheduled medication notification.
13
+ ///
14
+ /// The system can generate this status because of a person's notification
15
+ /// restrictions or issues with notification delivery.
16
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["notificationNotSent"] = 2] = "notificationNotSent";
17
+ /// The person snoozes a scheduled medication notification.
18
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["snoozed"] = 3] = "snoozed";
19
+ /// The person logs that they took the medication dose.
20
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["taken"] = 4] = "taken";
21
+ /// The person logs that they skipped the medication dose.
22
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["skipped"] = 5] = "skipped";
23
+ /// The person undoes a previously logged medication status.
24
+ ///
25
+ /// The system clears the prior status.
26
+ MedicationDoseEventLogStatus[MedicationDoseEventLogStatus["notLogged"] = 6] = "notLogged";
27
+ })(MedicationDoseEventLogStatus || (MedicationDoseEventLogStatus = {}));
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ElectrocardiogramTypeIdentifier = exports.HeartbeatSeriesTypeIdentifier = exports.StateOfMindTypeIdentifier = exports.WorkoutRouteTypeIdentifier = exports.WorkoutTypeIdentifier = void 0;
3
+ exports.UserAnnotatedMedicationTypeIdentifier = exports.ElectrocardiogramTypeIdentifier = exports.HeartbeatSeriesTypeIdentifier = exports.StateOfMindTypeIdentifier = exports.WorkoutRouteTypeIdentifier = exports.WorkoutTypeIdentifier = void 0;
4
4
  /**
5
5
  * Represents a workout type identifier.
6
6
  * @see {@link https://developer.apple.com/documentation/healthkit/hkworkouttypeidentifier Apple Docs HKWorkoutTypeIdentifier}
@@ -26,3 +26,4 @@ exports.HeartbeatSeriesTypeIdentifier = 'HKDataTypeIdentifierHeartbeatSeries';
26
26
  * @see {@link https://developer.apple.com/documentation/healthkit/hkelectrocardiogramtype Apple Docs HKElectrocardiogramType}
27
27
  */
28
28
  exports.ElectrocardiogramTypeIdentifier = 'HKElectrocardiogramType';
29
+ exports.UserAnnotatedMedicationTypeIdentifier = 'HKUserAnnotatedMedicationTypeIdentifier';
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HeartRateMotionContext = exports.InsulinDeliveryReason = void 0;
3
+ exports.HeartRateMotionContext = exports.InsulinDeliveryReason = exports.AggregationStyle = void 0;
4
+ var AggregationStyle;
5
+ (function (AggregationStyle) {
6
+ AggregationStyle[AggregationStyle["cumulative"] = 0] = "cumulative";
7
+ AggregationStyle[AggregationStyle["discreteArithmetic"] = 1] = "discreteArithmetic";
8
+ AggregationStyle[AggregationStyle["discreteTemporallyWeighted"] = 2] = "discreteTemporallyWeighted";
9
+ AggregationStyle[AggregationStyle["discreteEquivalentContinuousLevel"] = 3] = "discreteEquivalentContinuousLevel";
10
+ })(AggregationStyle || (exports.AggregationStyle = AggregationStyle = {}));
4
11
  /**
5
12
  * @see {@link https://developer.apple.com/documentation/healthkit/hkinsulindeliveryreason Apple Docs }
6
13
  */
@@ -1,2 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ComparisonPredicateOperator = void 0;
4
+ var ComparisonPredicateOperator;
5
+ (function (ComparisonPredicateOperator) {
6
+ ComparisonPredicateOperator[ComparisonPredicateOperator["lessThan"] = 0] = "lessThan";
7
+ ComparisonPredicateOperator[ComparisonPredicateOperator["lessThanOrEqualTo"] = 1] = "lessThanOrEqualTo";
8
+ ComparisonPredicateOperator[ComparisonPredicateOperator["greaterThan"] = 2] = "greaterThan";
9
+ ComparisonPredicateOperator[ComparisonPredicateOperator["greaterThanOrEqualTo"] = 3] = "greaterThanOrEqualTo";
10
+ ComparisonPredicateOperator[ComparisonPredicateOperator["equalTo"] = 4] = "equalTo";
11
+ ComparisonPredicateOperator[ComparisonPredicateOperator["notEqualTo"] = 5] = "notEqualTo";
12
+ ComparisonPredicateOperator[ComparisonPredicateOperator["matches"] = 6] = "matches";
13
+ ComparisonPredicateOperator[ComparisonPredicateOperator["like"] = 7] = "like";
14
+ ComparisonPredicateOperator[ComparisonPredicateOperator["beginsWith"] = 8] = "beginsWith";
15
+ ComparisonPredicateOperator[ComparisonPredicateOperator["endsWith"] = 9] = "endsWith";
16
+ ComparisonPredicateOperator[ComparisonPredicateOperator["IN"] = 10] = "IN";
17
+ ComparisonPredicateOperator[ComparisonPredicateOperator["customSelector"] = 11] = "customSelector";
18
+ ComparisonPredicateOperator[ComparisonPredicateOperator["contains"] = 99] = "contains";
19
+ ComparisonPredicateOperator[ComparisonPredicateOperator["between"] = 100] = "between";
20
+ })(ComparisonPredicateOperator || (exports.ComparisonPredicateOperator = ComparisonPredicateOperator = {}));
@@ -1,35 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HKWeatherCondition = void 0;
3
+ exports.WeatherCondition = void 0;
4
4
  // documented at https://developer.apple.com/documentation/healthkit/hkweathercondition
5
- var HKWeatherCondition;
6
- (function (HKWeatherCondition) {
7
- HKWeatherCondition[HKWeatherCondition["none"] = 0] = "none";
8
- HKWeatherCondition[HKWeatherCondition["clear"] = 1] = "clear";
9
- HKWeatherCondition[HKWeatherCondition["fair"] = 2] = "fair";
10
- HKWeatherCondition[HKWeatherCondition["partlyCloudy"] = 3] = "partlyCloudy";
11
- HKWeatherCondition[HKWeatherCondition["mostlyCloudy"] = 4] = "mostlyCloudy";
12
- HKWeatherCondition[HKWeatherCondition["cloudy"] = 5] = "cloudy";
13
- HKWeatherCondition[HKWeatherCondition["foggy"] = 6] = "foggy";
14
- HKWeatherCondition[HKWeatherCondition["haze"] = 7] = "haze";
15
- HKWeatherCondition[HKWeatherCondition["windy"] = 8] = "windy";
16
- HKWeatherCondition[HKWeatherCondition["blustery"] = 9] = "blustery";
17
- HKWeatherCondition[HKWeatherCondition["smoky"] = 10] = "smoky";
18
- HKWeatherCondition[HKWeatherCondition["dust"] = 11] = "dust";
19
- HKWeatherCondition[HKWeatherCondition["snow"] = 12] = "snow";
20
- HKWeatherCondition[HKWeatherCondition["hail"] = 13] = "hail";
21
- HKWeatherCondition[HKWeatherCondition["sleet"] = 14] = "sleet";
22
- HKWeatherCondition[HKWeatherCondition["freezingDrizzle"] = 15] = "freezingDrizzle";
23
- HKWeatherCondition[HKWeatherCondition["freezingRain"] = 16] = "freezingRain";
24
- HKWeatherCondition[HKWeatherCondition["mixedRainAndHail"] = 17] = "mixedRainAndHail";
25
- HKWeatherCondition[HKWeatherCondition["mixedRainAndSnow"] = 18] = "mixedRainAndSnow";
26
- HKWeatherCondition[HKWeatherCondition["mixedRainAndSleet"] = 19] = "mixedRainAndSleet";
27
- HKWeatherCondition[HKWeatherCondition["mixedSnowAndSleet"] = 20] = "mixedSnowAndSleet";
28
- HKWeatherCondition[HKWeatherCondition["drizzle"] = 21] = "drizzle";
29
- HKWeatherCondition[HKWeatherCondition["scatteredShowers"] = 22] = "scatteredShowers";
30
- HKWeatherCondition[HKWeatherCondition["showers"] = 23] = "showers";
31
- HKWeatherCondition[HKWeatherCondition["thunderstorms"] = 24] = "thunderstorms";
32
- HKWeatherCondition[HKWeatherCondition["tropicalStorm"] = 25] = "tropicalStorm";
33
- HKWeatherCondition[HKWeatherCondition["hurricane"] = 26] = "hurricane";
34
- HKWeatherCondition[HKWeatherCondition["tornado"] = 27] = "tornado";
35
- })(HKWeatherCondition || (exports.HKWeatherCondition = HKWeatherCondition = {}));
5
+ var WeatherCondition;
6
+ (function (WeatherCondition) {
7
+ WeatherCondition[WeatherCondition["none"] = 0] = "none";
8
+ WeatherCondition[WeatherCondition["clear"] = 1] = "clear";
9
+ WeatherCondition[WeatherCondition["fair"] = 2] = "fair";
10
+ WeatherCondition[WeatherCondition["partlyCloudy"] = 3] = "partlyCloudy";
11
+ WeatherCondition[WeatherCondition["mostlyCloudy"] = 4] = "mostlyCloudy";
12
+ WeatherCondition[WeatherCondition["cloudy"] = 5] = "cloudy";
13
+ WeatherCondition[WeatherCondition["foggy"] = 6] = "foggy";
14
+ WeatherCondition[WeatherCondition["haze"] = 7] = "haze";
15
+ WeatherCondition[WeatherCondition["windy"] = 8] = "windy";
16
+ WeatherCondition[WeatherCondition["blustery"] = 9] = "blustery";
17
+ WeatherCondition[WeatherCondition["smoky"] = 10] = "smoky";
18
+ WeatherCondition[WeatherCondition["dust"] = 11] = "dust";
19
+ WeatherCondition[WeatherCondition["snow"] = 12] = "snow";
20
+ WeatherCondition[WeatherCondition["hail"] = 13] = "hail";
21
+ WeatherCondition[WeatherCondition["sleet"] = 14] = "sleet";
22
+ WeatherCondition[WeatherCondition["freezingDrizzle"] = 15] = "freezingDrizzle";
23
+ WeatherCondition[WeatherCondition["freezingRain"] = 16] = "freezingRain";
24
+ WeatherCondition[WeatherCondition["mixedRainAndHail"] = 17] = "mixedRainAndHail";
25
+ WeatherCondition[WeatherCondition["mixedRainAndSnow"] = 18] = "mixedRainAndSnow";
26
+ WeatherCondition[WeatherCondition["mixedRainAndSleet"] = 19] = "mixedRainAndSleet";
27
+ WeatherCondition[WeatherCondition["mixedSnowAndSleet"] = 20] = "mixedSnowAndSleet";
28
+ WeatherCondition[WeatherCondition["drizzle"] = 21] = "drizzle";
29
+ WeatherCondition[WeatherCondition["scatteredShowers"] = 22] = "scatteredShowers";
30
+ WeatherCondition[WeatherCondition["showers"] = 23] = "showers";
31
+ WeatherCondition[WeatherCondition["thunderstorms"] = 24] = "thunderstorms";
32
+ WeatherCondition[WeatherCondition["tropicalStorm"] = 25] = "tropicalStorm";
33
+ WeatherCondition[WeatherCondition["hurricane"] = 26] = "hurricane";
34
+ WeatherCondition[WeatherCondition["tornado"] = 27] = "tornado";
35
+ })(WeatherCondition || (exports.WeatherCondition = WeatherCondition = {}));
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WorkoutEventType = exports.WeatherCondition = exports.WorkoutActivityType = void 0;
3
+ exports.WorkoutEventType = exports.WorkoutActivityType = void 0;
4
4
  var WorkoutActivityType;
5
5
  (function (WorkoutActivityType) {
6
6
  WorkoutActivityType[WorkoutActivityType["americanFootball"] = 1] = "americanFootball";
@@ -88,38 +88,6 @@ var WorkoutActivityType;
88
88
  WorkoutActivityType[WorkoutActivityType["underwaterDiving"] = 84] = "underwaterDiving";
89
89
  WorkoutActivityType[WorkoutActivityType["other"] = 3000] = "other";
90
90
  })(WorkoutActivityType || (exports.WorkoutActivityType = WorkoutActivityType = {}));
91
- // documented at https://developer.apple.com/documentation/healthkit/hkweathercondition
92
- var WeatherCondition;
93
- (function (WeatherCondition) {
94
- WeatherCondition[WeatherCondition["none"] = 0] = "none";
95
- WeatherCondition[WeatherCondition["clear"] = 1] = "clear";
96
- WeatherCondition[WeatherCondition["fair"] = 2] = "fair";
97
- WeatherCondition[WeatherCondition["partlyCloudy"] = 3] = "partlyCloudy";
98
- WeatherCondition[WeatherCondition["mostlyCloudy"] = 4] = "mostlyCloudy";
99
- WeatherCondition[WeatherCondition["cloudy"] = 5] = "cloudy";
100
- WeatherCondition[WeatherCondition["foggy"] = 6] = "foggy";
101
- WeatherCondition[WeatherCondition["haze"] = 7] = "haze";
102
- WeatherCondition[WeatherCondition["windy"] = 8] = "windy";
103
- WeatherCondition[WeatherCondition["blustery"] = 9] = "blustery";
104
- WeatherCondition[WeatherCondition["smoky"] = 10] = "smoky";
105
- WeatherCondition[WeatherCondition["dust"] = 11] = "dust";
106
- WeatherCondition[WeatherCondition["snow"] = 12] = "snow";
107
- WeatherCondition[WeatherCondition["hail"] = 13] = "hail";
108
- WeatherCondition[WeatherCondition["sleet"] = 14] = "sleet";
109
- WeatherCondition[WeatherCondition["freezingDrizzle"] = 15] = "freezingDrizzle";
110
- WeatherCondition[WeatherCondition["freezingRain"] = 16] = "freezingRain";
111
- WeatherCondition[WeatherCondition["mixedRainAndHail"] = 17] = "mixedRainAndHail";
112
- WeatherCondition[WeatherCondition["mixedRainAndSnow"] = 18] = "mixedRainAndSnow";
113
- WeatherCondition[WeatherCondition["mixedRainAndSleet"] = 19] = "mixedRainAndSleet";
114
- WeatherCondition[WeatherCondition["mixedSnowAndSleet"] = 20] = "mixedSnowAndSleet";
115
- WeatherCondition[WeatherCondition["drizzle"] = 21] = "drizzle";
116
- WeatherCondition[WeatherCondition["scatteredShowers"] = 22] = "scatteredShowers";
117
- WeatherCondition[WeatherCondition["showers"] = 23] = "showers";
118
- WeatherCondition[WeatherCondition["thunderstorms"] = 24] = "thunderstorms";
119
- WeatherCondition[WeatherCondition["tropicalStorm"] = 25] = "tropicalStorm";
120
- WeatherCondition[WeatherCondition["hurricane"] = 26] = "hurricane";
121
- WeatherCondition[WeatherCondition["tornado"] = 27] = "tornado";
122
- })(WeatherCondition || (exports.WeatherCondition = WeatherCondition = {}));
123
91
  var WorkoutEventType;
124
92
  (function (WorkoutEventType) {
125
93
  WorkoutEventType[WorkoutEventType["pause"] = 1] = "pause";
@@ -131,20 +99,3 @@ var WorkoutEventType;
131
99
  WorkoutEventType[WorkoutEventType["segment"] = 7] = "segment";
132
100
  WorkoutEventType[WorkoutEventType["pauseOrResumeRequest"] = 8] = "pauseOrResumeRequest";
133
101
  })(WorkoutEventType || (exports.WorkoutEventType = WorkoutEventType = {}));
134
- var ComparisonPredicateOperator;
135
- (function (ComparisonPredicateOperator) {
136
- ComparisonPredicateOperator[ComparisonPredicateOperator["lessThan"] = 0] = "lessThan";
137
- ComparisonPredicateOperator[ComparisonPredicateOperator["lessThanOrEqualTo"] = 1] = "lessThanOrEqualTo";
138
- ComparisonPredicateOperator[ComparisonPredicateOperator["greaterThan"] = 2] = "greaterThan";
139
- ComparisonPredicateOperator[ComparisonPredicateOperator["greaterThanOrEqualTo"] = 3] = "greaterThanOrEqualTo";
140
- ComparisonPredicateOperator[ComparisonPredicateOperator["equalTo"] = 4] = "equalTo";
141
- ComparisonPredicateOperator[ComparisonPredicateOperator["notEqualTo"] = 5] = "notEqualTo";
142
- ComparisonPredicateOperator[ComparisonPredicateOperator["matches"] = 6] = "matches";
143
- ComparisonPredicateOperator[ComparisonPredicateOperator["like"] = 7] = "like";
144
- ComparisonPredicateOperator[ComparisonPredicateOperator["beginsWith"] = 8] = "beginsWith";
145
- ComparisonPredicateOperator[ComparisonPredicateOperator["endsWith"] = 9] = "endsWith";
146
- ComparisonPredicateOperator[ComparisonPredicateOperator["in"] = 10] = "in";
147
- ComparisonPredicateOperator[ComparisonPredicateOperator["customSelector"] = 11] = "customSelector";
148
- ComparisonPredicateOperator[ComparisonPredicateOperator["contains"] = 99] = "contains";
149
- ComparisonPredicateOperator[ComparisonPredicateOperator["between"] = 100] = "between";
150
- })(ComparisonPredicateOperator || (ComparisonPredicateOperator = {}));
@@ -5,7 +5,7 @@ const modules_1 = require("../modules");
5
5
  async function getCategorySampleById(identifier, uuid) {
6
6
  const samples = await modules_1.CategoryTypes.queryCategorySamples(identifier, {
7
7
  limit: 1,
8
- filter: { uuid: uuid },
8
+ filter: { uuids: [uuid] },
9
9
  });
10
10
  return samples[0];
11
11
  }
@@ -6,7 +6,7 @@ async function getQuantitySampleById(identifier, uuid, unit) {
6
6
  limit: 1,
7
7
  unit,
8
8
  filter: {
9
- uuid: uuid,
9
+ uuids: [uuid],
10
10
  },
11
11
  });
12
12
  return samples[0];
@@ -5,7 +5,7 @@ const getWorkoutById = async (uuid) => {
5
5
  const workouts = await modules_1.Workouts.queryWorkoutSamples({
6
6
  limit: 1,
7
7
  filter: {
8
- uuid: uuid,
8
+ uuids: [uuid],
9
9
  },
10
10
  });
11
11
  return workouts[0];
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.subscribeToCategorySamples = subscribeToCategorySamples;
4
+ const modules_1 = require("../modules");
5
+ const subscribeToChanges_1 = require("./subscribeToChanges");
6
+ function subscribeToCategorySamples(identifier, callback, after = new Date()) {
7
+ return (0, subscribeToChanges_1.subscribeToChanges)(identifier, async ({ errorMessage }) => {
8
+ if (errorMessage) {
9
+ return callback({
10
+ typeIdentifier: identifier,
11
+ errorMessage,
12
+ });
13
+ }
14
+ const samplesAfterLast = await modules_1.CategoryTypes.queryCategorySamples(identifier, {
15
+ limit: 0,
16
+ filter: {
17
+ date: {
18
+ startDate: after,
19
+ },
20
+ },
21
+ });
22
+ if (samplesAfterLast.length > 0) {
23
+ callback({
24
+ typeIdentifier: identifier,
25
+ samples: samplesAfterLast,
26
+ });
27
+ }
28
+ });
29
+ }
@@ -3,19 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.subscribeToQuantitySamples = void 0;
4
4
  const modules_1 = require("../modules");
5
5
  const subscribeToChanges_1 = require("./subscribeToChanges");
6
- const subscribeToQuantitySamples = (identifier, callback, after) => {
7
- let anchor;
8
- const afterDate = after ?? new Date();
9
- const init = async () => {
10
- // we need to do an initial query to get a handle for the deletedSamples
11
- const { newAnchor } = await modules_1.QuantityTypes.queryQuantitySamplesWithAnchor(identifier, {
12
- filter: {
13
- startDate: afterDate,
14
- },
15
- });
16
- anchor = newAnchor;
17
- };
18
- init();
6
+ const subscribeToQuantitySamples = (identifier, callback, after = new Date()) => {
19
7
  return (0, subscribeToChanges_1.subscribeToChanges)(identifier, async ({ errorMessage }) => {
20
8
  if (errorMessage) {
21
9
  return callback({
@@ -23,23 +11,18 @@ const subscribeToQuantitySamples = (identifier, callback, after) => {
23
11
  errorMessage,
24
12
  });
25
13
  }
26
- // seems like all deletedSamples are included when no anchor is provided, so we don't want to return those for the first query
27
- const hadAnchorWhenDoingQuery = !!anchor;
28
- const { samples, newAnchor, deletedSamples } = await modules_1.QuantityTypes.queryQuantitySamplesWithAnchor(identifier, {
29
- anchor,
14
+ const samplesAfterLast = await modules_1.QuantityTypes.queryQuantitySamples(identifier, {
15
+ limit: 0,
30
16
  filter: {
31
- startDate: afterDate,
17
+ date: {
18
+ startDate: after,
19
+ },
32
20
  },
33
21
  });
34
- anchor = newAnchor;
35
- const hasNewSamples = samples.length > 0 ||
36
- (deletedSamples.length > 0 && hadAnchorWhenDoingQuery);
37
- if (hasNewSamples) {
22
+ if (samplesAfterLast.length > 0) {
38
23
  callback({
39
24
  typeIdentifier: identifier,
40
- samples,
41
- anchor: newAnchor,
42
- deletedSamples: hadAnchorWhenDoingQuery ? deletedSamples : [],
25
+ samples: samplesAfterLast,
43
26
  });
44
27
  }
45
28
  });
@@ -6,18 +6,20 @@ import useMostRecentQuantitySample from './hooks/useMostRecentQuantitySample';
6
6
  import useMostRecentWorkout from './hooks/useMostRecentWorkout';
7
7
  import useSources from './hooks/useSources';
8
8
  import useStatisticsForQuantity from './hooks/useStatisticsForQuantity';
9
+ import useSubscribeToCategorySamples from './hooks/useSubscribeToCategorySamples';
9
10
  import useSubscribeToChanges from './hooks/useSubscribeToChanges';
10
11
  import useSubscribeToQuantitySamples from './hooks/useSubscribeToQuantitySamples';
11
- import { CategoryTypes, Characteristics, Core, CorrelationTypes, Electrocardiograms, HeartbeatSeries, QuantityTypes, StateOfMind, Workouts, } from './modules';
12
+ import { CategoryTypes, Characteristics, Core, CorrelationTypes, Electrocardiograms, HeartbeatSeries, Medication, QuantityTypes, StateOfMind, Workouts, } from './modules';
12
13
  import getMostRecentCategorySample from './utils/getMostRecentCategorySample';
13
14
  import getMostRecentQuantitySample from './utils/getMostRecentQuantitySample';
14
15
  import getMostRecentWorkout from './utils/getMostRecentWorkout';
15
16
  import getPreferredUnit from './utils/getPreferredUnit';
17
+ import { subscribeToCategorySamples } from './utils/subscribeToCategorySamples';
16
18
  import { subscribeToChanges } from './utils/subscribeToChanges';
17
19
  import { subscribeToQuantitySamples } from './utils/subscribeToQuantitySamples';
18
20
  export * from './types';
19
21
  const currentMajorVersionIOS = Platform.OS === 'ios' ? Number.parseInt(Platform.Version, 10) : 0;
20
- export { getMostRecentCategorySample, getMostRecentQuantitySample, getMostRecentWorkout, getPreferredUnit, subscribeToChanges, subscribeToQuantitySamples, useHealthkitAuthorization, useIsHealthDataAvailable, useMostRecentCategorySample, useMostRecentQuantitySample, useMostRecentWorkout, useSources, useStatisticsForQuantity, useSubscribeToChanges, useSubscribeToQuantitySamples, };
22
+ export { getMostRecentCategorySample, getMostRecentQuantitySample, getMostRecentWorkout, getPreferredUnit, subscribeToCategorySamples, subscribeToChanges, subscribeToQuantitySamples, useHealthkitAuthorization, useIsHealthDataAvailable, useMostRecentCategorySample, useMostRecentQuantitySample, useMostRecentWorkout, useSources, useStatisticsForQuantity, useSubscribeToCategorySamples, useSubscribeToChanges, useSubscribeToQuantitySamples, };
21
23
  // Named exports - all functions bound to their respective modules
22
24
  export const authorizationStatusFor = Core.authorizationStatusFor.bind(Core);
23
25
  export const disableAllBackgroundDelivery = Core.disableAllBackgroundDelivery.bind(Core);
@@ -35,6 +37,7 @@ export const isHealthDataAvailableAsync = Core.isHealthDataAvailableAsync.bind(C
35
37
  export const queryCategorySamples = CategoryTypes.queryCategorySamples.bind(CategoryTypes);
36
38
  export const queryCategorySamplesWithAnchor = CategoryTypes.queryCategorySamplesWithAnchor.bind(CategoryTypes);
37
39
  export const queryCorrelationSamples = CorrelationTypes.queryCorrelationSamples.bind(CorrelationTypes);
40
+ export const queryCorrelationSamplesWithAnchor = CorrelationTypes.queryCorrelationSamplesWithAnchor.bind(CorrelationTypes);
38
41
  export const queryHeartbeatSeriesSamples = HeartbeatSeries.queryHeartbeatSeriesSamples.bind(HeartbeatSeries);
39
42
  export const queryHeartbeatSeriesSamplesWithAnchor = HeartbeatSeries.queryHeartbeatSeriesSamplesWithAnchor.bind(HeartbeatSeries);
40
43
  export const queryElectrocardiogramSamples = Electrocardiograms.queryElectrocardiogramSamples.bind(Electrocardiograms);
@@ -55,12 +58,18 @@ export const saveWorkoutSample = Workouts.saveWorkoutSample.bind(Workouts);
55
58
  export const startWatchApp = Workouts.startWatchAppWithWorkoutConfiguration.bind(Workouts);
56
59
  export const isProtectedDataAvailable = Core.isProtectedDataAvailable.bind(Core);
57
60
  export const queryStateOfMindSamples = StateOfMind.queryStateOfMindSamples.bind(StateOfMind);
61
+ export const queryStateOfMindSamplesWithAnchor = StateOfMind.queryStateOfMindSamplesWithAnchor.bind(StateOfMind);
58
62
  export const saveStateOfMindSample = StateOfMind.saveStateOfMindSample.bind(StateOfMind);
59
63
  export const isQuantityCompatibleWithUnit = QuantityTypes.isQuantityCompatibleWithUnit.bind(QuantityTypes);
60
64
  export const isObjectTypeAvailable = Core.isObjectTypeAvailable.bind(Core);
61
65
  export const isObjectTypeAvailableAsync = Core.isObjectTypeAvailableAsync.bind(Core);
62
66
  export const areObjectTypesAvailable = Core.areObjectTypesAvailable.bind(Core);
63
67
  export const areObjectTypesAvailableAsync = Core.areObjectTypesAvailableAsync.bind(Core);
68
+ export const requestMedicationsAuthorization = Medication.requestMedicationsAuthorization.bind(Medication);
69
+ export const queryMedications = Medication.queryMedications.bind(Medication);
70
+ export const queryMedicationEvents = Medication.queryMedicationEvents.bind(Medication);
71
+ export const queryMedicationEventsWithAnchor = Medication.queryMedicationEventsWithAnchor.bind(Medication);
72
+ export const currentAppSource = Core.currentAppSource.bind(Core);
64
73
  export const getBiologicalSexAsync = Characteristics.getBiologicalSexAsync.bind(Characteristics);
65
74
  export const getBloodTypeAsync = Characteristics.getBloodTypeAsync.bind(Characteristics);
66
75
  export const getDateOfBirthAsync = Characteristics.getDateOfBirthAsync.bind(Characteristics);
@@ -97,6 +106,7 @@ export default {
97
106
  queryCategorySamples,
98
107
  queryCategorySamplesWithAnchor,
99
108
  queryCorrelationSamples,
109
+ queryCorrelationSamplesWithAnchor,
100
110
  queryHeartbeatSeriesSamples,
101
111
  queryHeartbeatSeriesSamplesWithAnchor,
102
112
  queryElectrocardiogramSamples,
@@ -119,7 +129,15 @@ export default {
119
129
  startWatchApp,
120
130
  isProtectedDataAvailable,
121
131
  queryStateOfMindSamples,
132
+ queryStateOfMindSamplesWithAnchor,
122
133
  saveStateOfMindSample,
134
+ requestMedicationsAuthorization,
135
+ currentAppSource,
136
+ queryMedicationEventsWithAnchor,
137
+ queryMedicationEvents,
138
+ queryMedications,
139
+ subscribeToCategorySamples,
140
+ useSubscribeToCategorySamples,
123
141
  // hooks
124
142
  useMostRecentCategorySample,
125
143
  useMostRecentQuantitySample,
@@ -101,6 +101,16 @@ Promise.resolve(undefined));
101
101
  export const startWatchApp = UnavailableFnFromModule('startWatchApp', Promise.resolve(false));
102
102
  // StateOfMindModule functions
103
103
  export const queryStateOfMindSamples = UnavailableFnFromModule('queryStateOfMindSamples', Promise.resolve([]));
104
+ export const queryStateOfMindSamplesWithAnchor = UnavailableFnFromModule('queryStateOfMindSamplesWithAnchor', Promise.resolve({
105
+ samples: [],
106
+ deletedSamples: [],
107
+ newAnchor: '',
108
+ }));
109
+ export const queryCorrelationSamplesWithAnchor = UnavailableFnFromModule('queryCorrelationSamplesWithAnchor', Promise.resolve({
110
+ correlations: [],
111
+ deletedSamples: [],
112
+ newAnchor: '',
113
+ }));
104
114
  export const saveStateOfMindSample = UnavailableFnFromModule('saveStateOfMindSample', Promise.resolve(false));
105
115
  // Utility functions (from original export list)
106
116
  export function getMostRecentCategorySample(_identifier) {
@@ -144,8 +154,19 @@ const subscribeToQuantitySamples = UnavailableFnFromModule('subscribeToQuantityS
144
154
  remove: () => false,
145
155
  }); // Mocking the observer query UUID
146
156
  export { subscribeToQuantitySamples };
147
- const useSubscribeToQuantitySamples = UnavailableFnFromModule('useSubscribeToQuantitySamples', undefined); // Mocking callback structure
148
- export { useSubscribeToQuantitySamples };
157
+ export const currentAppSource = UnavailableFnFromModule('currentAppSource', {
158
+ bundleIdentifier: '',
159
+ name: '',
160
+ }); // Mocking callback structure
161
+ export const queryMedications = UnavailableFnFromModule('queryMedications', Promise.resolve([])); // Mocking callback structure
162
+ export const queryMedicationEvents = UnavailableFnFromModule('queryMedicationEvents', Promise.resolve([])); // Mocking callback structure
163
+ export const queryMedicationEventsWithAnchor = UnavailableFnFromModule('queryMedicationEventsWithAnchor', Promise.resolve({ newAnchor: '', samples: [], deletedSamples: [] })); // Mocking callback structure
164
+ export const useSubscribeToQuantitySamples = UnavailableFnFromModule('useSubscribeToQuantitySamples', undefined);
165
+ export const useSubscribeToCategorySamples = UnavailableFnFromModule('useSubscribeToCategorySamples', undefined);
166
+ export const subscribeToCategorySamples = UnavailableFnFromModule('subscribeToCategorySamples', {
167
+ remove: () => false,
168
+ }); // Mocking the observer query UUID
169
+ export const requestMedicationsAuthorization = UnavailableFnFromModule('requestMedicationsAuthorization', Promise.resolve(false)); // Mocking callback structure
149
170
  // --- Default Export ---
150
171
  // This attempts to match the structure of the default export from index.ios.ts
151
172
  const HealthkitModule = {
@@ -196,9 +217,17 @@ const HealthkitModule = {
196
217
  startWatchApp,
197
218
  isProtectedDataAvailable,
198
219
  queryStateOfMindSamples,
220
+ queryStateOfMindSamplesWithAnchor,
199
221
  saveStateOfMindSample,
200
222
  subscribeToQuantitySamples,
201
223
  useSubscribeToQuantitySamples,
224
+ queryCorrelationSamplesWithAnchor,
225
+ queryMedications,
226
+ queryMedicationEvents,
227
+ queryMedicationEventsWithAnchor,
228
+ requestMedicationsAuthorization,
229
+ subscribeToCategorySamples,
230
+ currentAppSource,
202
231
  // Hooks
203
232
  useMostRecentCategorySample,
204
233
  useMostRecentQuantitySample,
@@ -206,6 +235,7 @@ const HealthkitModule = {
206
235
  useSubscribeToChanges,
207
236
  useHealthkitAuthorization,
208
237
  useIsHealthDataAvailable,
238
+ useSubscribeToCategorySamples,
209
239
  useSources,
210
240
  useStatisticsForQuantity,
211
241
  getBiologicalSexAsync,
@@ -8,7 +8,7 @@ export function useStatisticsForQuantity(identifier, options, from, to, unit) {
8
8
  optionsRef.current = options;
9
9
  }, [options]);
10
10
  const update = useCallback(async () => {
11
- const res = await QuantityTypes.queryStatisticsForQuantity(identifier, optionsRef.current, { filter: { startDate: from, endDate: to }, unit });
11
+ const res = await QuantityTypes.queryStatisticsForQuantity(identifier, optionsRef.current, { filter: { date: { startDate: from, endDate: to } }, unit });
12
12
  setResult(res);
13
13
  }, [identifier, from, to, unit]);
14
14
  useEffect(() => {