@kingstinct/react-native-healthkit 13.4.0 → 14.0.1

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 (190) hide show
  1. package/ReactNativeHealthkit.podspec +1 -0
  2. package/app.plugin.ts +40 -2
  3. package/ios/BackgroundDeliveryManager.swift +196 -0
  4. package/ios/CategoryTypeModule.swift +1 -1
  5. package/ios/CoreModule.swift +24 -0
  6. package/ios/CorrelationTypeModule.swift +2 -35
  7. package/ios/ElectrocardiogramModule.swift +2 -34
  8. package/ios/HeartbeatSeriesModule.swift +2 -34
  9. package/ios/Helpers.swift +3 -6
  10. package/ios/MedicationModule.swift +3 -35
  11. package/ios/PredicateHelpers.swift +2 -2
  12. package/ios/QuantityTypeModule.swift +11 -11
  13. package/ios/Serializers.swift +58 -90
  14. package/ios/StateOfMindModule.swift +2 -34
  15. package/ios/WorkoutProxy.swift +3 -149
  16. package/ios/generated/HealthkitGenerated.swift +52 -0
  17. package/lib/commonjs/generated/healthkit.generated.js +745 -0
  18. package/lib/commonjs/healthkit.ios.js +51 -17
  19. package/lib/commonjs/healthkit.js +120 -34
  20. package/lib/commonjs/specs/QuantityTypeModule.nitro.js +1 -0
  21. package/lib/commonjs/type-tests/generated-typing.js +2 -0
  22. package/lib/commonjs/types/CategoryType.js +19 -99
  23. package/lib/commonjs/types/Medication.js +2 -0
  24. package/lib/commonjs/types/MetadataEnums.js +17 -0
  25. package/lib/commonjs/types/QuantityType.js +4 -15
  26. package/lib/commonjs/types/WeatherCondition.js +2 -32
  27. package/lib/commonjs/types/Workouts.js +3 -98
  28. package/lib/commonjs/types/index.js +2 -0
  29. package/lib/module/generated/healthkit.generated.js +742 -0
  30. package/lib/module/healthkit.ios.js +49 -15
  31. package/lib/module/healthkit.js +94 -20
  32. package/lib/module/specs/QuantityTypeModule.nitro.js +1 -0
  33. package/lib/module/type-tests/generated-typing.js +1 -0
  34. package/lib/module/types/CategoryType.js +2 -98
  35. package/lib/module/types/Medication.js +1 -0
  36. package/lib/module/types/MetadataEnums.js +1 -0
  37. package/lib/module/types/QuantityType.js +2 -14
  38. package/lib/module/types/WeatherCondition.js +1 -32
  39. package/lib/module/types/Workouts.js +2 -98
  40. package/lib/module/types/index.js +2 -0
  41. package/lib/typescript/generated/healthkit.generated.d.ts +1006 -0
  42. package/lib/typescript/healthkit.d.ts +39 -36
  43. package/lib/typescript/healthkit.ios.d.ts +64 -53
  44. package/lib/typescript/hooks/useMostRecentQuantitySample.d.ts +3 -2
  45. package/lib/typescript/hooks/useMostRecentWorkout.d.ts +2 -2
  46. package/lib/typescript/hooks/useQuantitySampleById.d.ts +5 -4
  47. package/lib/typescript/hooks/useStatisticsForQuantity.d.ts +2 -2
  48. package/lib/typescript/hooks/useSubscribeToQuantitySamples.d.ts +1 -1
  49. package/lib/typescript/modules.d.ts +2 -2
  50. package/lib/typescript/specs/CategoryTypeModule.nitro.d.ts +3 -3
  51. package/lib/typescript/specs/CoreModule.nitro.d.ts +15 -0
  52. package/lib/typescript/specs/QuantityTypeModule.nitro.d.ts +20 -9
  53. package/lib/typescript/type-tests/generated-typing.d.ts +1 -0
  54. package/lib/typescript/types/CategoryType.d.ts +10 -104
  55. package/lib/typescript/types/CategoryTypeIdentifier.d.ts +1 -61
  56. package/lib/typescript/types/CorrelationType.d.ts +8 -2
  57. package/lib/typescript/types/ElectrocardiogramSample.d.ts +8 -1
  58. package/lib/typescript/types/HeartbeatSeries.d.ts +8 -1
  59. package/lib/typescript/types/InterfaceVerification.d.ts +14 -1
  60. package/lib/typescript/types/Medication.d.ts +10 -0
  61. package/lib/typescript/types/MetadataEnums.d.ts +1 -0
  62. package/lib/typescript/types/QuantitySample.d.ts +9 -1
  63. package/lib/typescript/types/QuantityType.d.ts +14 -18
  64. package/lib/typescript/types/QuantityTypeIdentifier.d.ts +1 -671
  65. package/lib/typescript/types/QueryOptions.d.ts +8 -4
  66. package/lib/typescript/types/Shared.d.ts +12 -41
  67. package/lib/typescript/types/StateOfMind.d.ts +8 -1
  68. package/lib/typescript/types/Subscriptions.d.ts +11 -11
  69. package/lib/typescript/types/WeatherCondition.d.ts +1 -30
  70. package/lib/typescript/types/Workouts.d.ts +18 -104
  71. package/lib/typescript/types/index.d.ts +2 -0
  72. package/lib/typescript/utils/getMostRecentQuantitySample.d.ts +2 -1
  73. package/lib/typescript/utils/getMostRecentWorkout.d.ts +2 -1
  74. package/lib/typescript/utils/getPreferredUnit.d.ts +2 -1
  75. package/lib/typescript/utils/getQuantitySampleById.d.ts +2 -1
  76. package/lib/typescript/utils/subscribeToQuantitySamples.d.ts +1 -1
  77. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.hpp +55 -109
  78. package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Umbrella.hpp +12 -18
  79. package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.hpp +5 -14
  80. package/nitrogen/generated/ios/c++/HybridCoreModuleSpecSwift.hpp +18 -2
  81. package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.hpp +1 -13
  82. package/nitrogen/generated/ios/c++/HybridElectrocardiogramModuleSpecSwift.hpp +1 -13
  83. package/nitrogen/generated/ios/c++/HybridHeartbeatSeriesModuleSpecSwift.hpp +2 -14
  84. package/nitrogen/generated/ios/c++/HybridMedicationModuleSpecSwift.hpp +1 -13
  85. package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.hpp +19 -28
  86. package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.hpp +2 -14
  87. package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.hpp +2 -115
  88. package/nitrogen/generated/ios/swift/CategorySample.swift +4 -329
  89. package/nitrogen/generated/ios/swift/CategoryTypeIdentifier.swift +112 -108
  90. package/nitrogen/generated/ios/swift/CategoryTypeIdentifierWriteable.swift +292 -0
  91. package/nitrogen/generated/ios/swift/CorrelationSample.swift +4 -347
  92. package/nitrogen/generated/ios/swift/ElectrocardiogramSample.swift +4 -329
  93. package/nitrogen/generated/ios/swift/FilterForWorkouts.swift +30 -30
  94. package/nitrogen/generated/ios/swift/FilterForWorkoutsBase.swift +30 -30
  95. package/nitrogen/generated/ios/swift/GeneralForm.swift +4 -4
  96. package/nitrogen/generated/ios/swift/HeartbeatSeriesSample.swift +4 -329
  97. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec.swift +1 -1
  98. package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec_cxx.swift +1 -1
  99. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec.swift +2 -0
  100. package/nitrogen/generated/ios/swift/HybridCoreModuleSpec_cxx.swift +38 -0
  101. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec.swift +6 -6
  102. package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec_cxx.swift +6 -6
  103. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +1 -27
  104. package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +2 -340
  105. package/nitrogen/generated/ios/swift/MedicationDoseEvent.swift +4 -329
  106. package/nitrogen/generated/ios/swift/ObjectTypeIdentifier.swift +492 -492
  107. package/nitrogen/generated/ios/swift/QuantitySample.swift +4 -329
  108. package/nitrogen/generated/ios/swift/QuantityTypeIdentifier.swift +380 -384
  109. package/nitrogen/generated/ios/swift/QuantityTypeIdentifierWriteable.swift +372 -376
  110. package/nitrogen/generated/ios/swift/{QueryOptionsWithAnchorAndUnit.swift → QueryOptionsWithAnchorAndStringUnit.swift} +5 -5
  111. package/nitrogen/generated/ios/swift/{QueryOptionsWithSortOrderAndUnit.swift → QueryOptionsWithSortOrderAndStringUnit.swift} +5 -5
  112. package/nitrogen/generated/ios/swift/QueryStatisticsResponseFromSingleSource.swift +37 -37
  113. package/nitrogen/generated/ios/swift/SampleTypeIdentifier.swift +492 -492
  114. package/nitrogen/generated/ios/swift/SampleTypeIdentifierWriteable.swift +482 -486
  115. package/nitrogen/generated/ios/swift/StateOfMindSample.swift +4 -329
  116. package/nitrogen/generated/ios/swift/{StatisticsQueryOptions.swift → StatisticsQueryOptionsWithStringUnit.swift} +5 -5
  117. package/nitrogen/generated/ios/swift/WorkoutSample.swift +4 -402
  118. package/nitrogen/generated/shared/c++/CategorySample.hpp +8 -100
  119. package/nitrogen/generated/shared/c++/CategoryTypeIdentifier.hpp +153 -149
  120. package/nitrogen/generated/shared/c++/CategoryTypeIdentifierWriteable.hpp +328 -0
  121. package/nitrogen/generated/shared/c++/CorrelationSample.hpp +9 -105
  122. package/nitrogen/generated/shared/c++/ElectrocardiogramSample.hpp +7 -99
  123. package/nitrogen/generated/shared/c++/FilterForWorkouts.hpp +13 -13
  124. package/nitrogen/generated/shared/c++/FilterForWorkoutsBase.hpp +13 -13
  125. package/nitrogen/generated/shared/c++/GeneralForm.hpp +7 -7
  126. package/nitrogen/generated/shared/c++/HeartbeatSeriesSample.hpp +8 -100
  127. package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.hpp +5 -2
  128. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.cpp +2 -0
  129. package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.hpp +4 -2
  130. package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.hpp +15 -15
  131. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.cpp +1 -27
  132. package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.hpp +2 -37
  133. package/nitrogen/generated/shared/c++/MedicationDoseEvent.hpp +7 -99
  134. package/nitrogen/generated/shared/c++/ObjectTypeIdentifier.hpp +565 -565
  135. package/nitrogen/generated/shared/c++/QuantitySample.hpp +8 -100
  136. package/nitrogen/generated/shared/c++/QuantityTypeIdentifier.hpp +407 -411
  137. package/nitrogen/generated/shared/c++/QuantityTypeIdentifierWriteable.hpp +398 -402
  138. package/nitrogen/generated/shared/c++/{QueryOptionsWithAnchorAndUnit.hpp → QueryOptionsWithAnchorAndStringUnit.hpp} +11 -11
  139. package/nitrogen/generated/shared/c++/{QueryOptionsWithSortOrderAndUnit.hpp → QueryOptionsWithSortOrderAndStringUnit.hpp} +11 -11
  140. package/nitrogen/generated/shared/c++/QueryStatisticsResponseFromSingleSource.hpp +12 -12
  141. package/nitrogen/generated/shared/c++/SampleTypeIdentifier.hpp +559 -559
  142. package/nitrogen/generated/shared/c++/SampleTypeIdentifierWriteable.hpp +541 -545
  143. package/nitrogen/generated/shared/c++/StateOfMindSample.hpp +8 -100
  144. package/nitrogen/generated/shared/c++/{StatisticsQueryOptions.hpp → StatisticsQueryOptionsWithStringUnit.hpp} +11 -11
  145. package/nitrogen/generated/shared/c++/WorkoutSample.hpp +7 -120
  146. package/package.json +5 -2
  147. package/src/generated/healthkit-schema.json +3680 -0
  148. package/src/generated/healthkit.generated.ts +1307 -0
  149. package/src/healthkit.ios.ts +225 -19
  150. package/src/healthkit.ts +181 -55
  151. package/src/hooks/useMostRecentQuantitySample.ts +6 -5
  152. package/src/hooks/useMostRecentWorkout.ts +2 -2
  153. package/src/hooks/useQuantitySampleById.ts +6 -5
  154. package/src/hooks/useStatisticsForQuantity.ts +2 -1
  155. package/src/hooks/useSubscribeToQuantitySamples.ts +1 -1
  156. package/src/modules.ts +7 -2
  157. package/src/specs/CategoryTypeModule.nitro.ts +8 -5
  158. package/src/specs/CoreModule.nitro.ts +20 -0
  159. package/src/specs/QuantityTypeModule.nitro.ts +81 -7
  160. package/src/test-setup.ts +2 -0
  161. package/src/type-tests/generated-typing.ts +133 -0
  162. package/src/types/CategoryType.ts +52 -148
  163. package/src/types/CategoryTypeIdentifier.ts +5 -134
  164. package/src/types/CorrelationType.ts +13 -3
  165. package/src/types/ElectrocardiogramSample.ts +13 -1
  166. package/src/types/HeartbeatSeries.ts +13 -1
  167. package/src/types/InterfaceVerification.ts +38 -1
  168. package/src/types/Medication.ts +19 -0
  169. package/src/types/MetadataEnums.ts +15 -0
  170. package/src/types/QuantitySample.ts +14 -2
  171. package/src/types/QuantityType.ts +22 -122
  172. package/src/types/QuantityTypeIdentifier.ts +5 -772
  173. package/src/types/QueryOptions.ts +11 -4
  174. package/src/types/Shared.ts +22 -49
  175. package/src/types/StateOfMind.ts +13 -1
  176. package/src/types/Subscriptions.ts +19 -13
  177. package/src/types/WeatherCondition.ts +1 -31
  178. package/src/types/Workouts.ts +44 -108
  179. package/src/types/index.ts +2 -0
  180. package/src/utils/getMostRecentQuantitySample.ts +4 -3
  181. package/src/utils/getMostRecentWorkout.ts +5 -2
  182. package/src/utils/getPreferredUnit.ts +5 -4
  183. package/src/utils/getQuantitySampleById.ts +4 -3
  184. package/src/utils/subscribeToQuantitySamples.ts +5 -3
  185. package/nitrogen/generated/ios/swift/HeartRateMotionContext.swift +0 -44
  186. package/nitrogen/generated/ios/swift/InsulinDeliveryReason.swift +0 -40
  187. package/nitrogen/generated/ios/swift/WeatherCondition.swift +0 -144
  188. package/nitrogen/generated/shared/c++/HeartRateMotionContext.hpp +0 -67
  189. package/nitrogen/generated/shared/c++/InsulinDeliveryReason.hpp +0 -62
  190. package/nitrogen/generated/shared/c++/WeatherCondition.hpp +0 -88
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// QueryOptionsWithAnchorAndUnit.swift
2
+ /// QueryOptionsWithAnchorAndStringUnit.swift
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -8,15 +8,15 @@
8
8
  import NitroModules
9
9
 
10
10
  /**
11
- * Represents an instance of `QueryOptionsWithAnchorAndUnit`, backed by a C++ struct.
11
+ * Represents an instance of `QueryOptionsWithAnchorAndStringUnit`, backed by a C++ struct.
12
12
  */
13
- public typealias QueryOptionsWithAnchorAndUnit = margelo.nitro.healthkit.QueryOptionsWithAnchorAndUnit
13
+ public typealias QueryOptionsWithAnchorAndStringUnit = margelo.nitro.healthkit.QueryOptionsWithAnchorAndStringUnit
14
14
 
15
- public extension QueryOptionsWithAnchorAndUnit {
15
+ public extension QueryOptionsWithAnchorAndStringUnit {
16
16
  private typealias bridge = margelo.nitro.healthkit.bridge.swift
17
17
 
18
18
  /**
19
- * Create a new instance of `QueryOptionsWithAnchorAndUnit`.
19
+ * Create a new instance of `QueryOptionsWithAnchorAndStringUnit`.
20
20
  */
21
21
  init(unit: String?, anchor: String?, filter: FilterForSamples?, limit: Double) {
22
22
  self.init({ () -> bridge.std__optional_std__string_ in
@@ -1,5 +1,5 @@
1
1
  ///
2
- /// QueryOptionsWithSortOrderAndUnit.swift
2
+ /// QueryOptionsWithSortOrderAndStringUnit.swift
3
3
  /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
4
  /// https://github.com/mrousavy/nitro
5
5
  /// Copyright © Marc Rousavy @ Margelo
@@ -8,15 +8,15 @@
8
8
  import NitroModules
9
9
 
10
10
  /**
11
- * Represents an instance of `QueryOptionsWithSortOrderAndUnit`, backed by a C++ struct.
11
+ * Represents an instance of `QueryOptionsWithSortOrderAndStringUnit`, backed by a C++ struct.
12
12
  */
13
- public typealias QueryOptionsWithSortOrderAndUnit = margelo.nitro.healthkit.QueryOptionsWithSortOrderAndUnit
13
+ public typealias QueryOptionsWithSortOrderAndStringUnit = margelo.nitro.healthkit.QueryOptionsWithSortOrderAndStringUnit
14
14
 
15
- public extension QueryOptionsWithSortOrderAndUnit {
15
+ public extension QueryOptionsWithSortOrderAndStringUnit {
16
16
  private typealias bridge = margelo.nitro.healthkit.bridge.swift
17
17
 
18
18
  /**
19
- * Create a new instance of `QueryOptionsWithSortOrderAndUnit`.
19
+ * Create a new instance of `QueryOptionsWithSortOrderAndStringUnit`.
20
20
  */
21
21
  init(unit: String?, ascending: Bool?, filter: FilterForSamples?, limit: Double) {
22
22
  self.init({ () -> bridge.std__optional_std__string_ in
@@ -18,10 +18,22 @@ public extension QueryStatisticsResponseFromSingleSource {
18
18
  /**
19
19
  * Create a new instance of `QueryStatisticsResponseFromSingleSource`.
20
20
  */
21
- init(source: (any HybridSourceProxySpec), duration: Quantity?, averageQuantity: Quantity?, maximumQuantity: Quantity?, minimumQuantity: Quantity?, sumQuantity: Quantity?, mostRecentQuantity: Quantity?, mostRecentQuantityDateInterval: QuantityDateInterval?, startDate: Date?, endDate: Date?) {
21
+ init(source: (any HybridSourceProxySpec), startDate: Date?, endDate: Date?, duration: Quantity?, averageQuantity: Quantity?, maximumQuantity: Quantity?, minimumQuantity: Quantity?, sumQuantity: Quantity?, mostRecentQuantity: Quantity?, mostRecentQuantityDateInterval: QuantityDateInterval?) {
22
22
  self.init({ () -> bridge.std__shared_ptr_HybridSourceProxySpec_ in
23
23
  let __cxxWrapped = source.getCxxWrapper()
24
24
  return __cxxWrapped.getCxxPart()
25
+ }(), { () -> bridge.std__optional_std__chrono__system_clock__time_point_ in
26
+ if let __unwrappedValue = startDate {
27
+ return bridge.create_std__optional_std__chrono__system_clock__time_point_(__unwrappedValue.toCpp())
28
+ } else {
29
+ return .init()
30
+ }
31
+ }(), { () -> bridge.std__optional_std__chrono__system_clock__time_point_ in
32
+ if let __unwrappedValue = endDate {
33
+ return bridge.create_std__optional_std__chrono__system_clock__time_point_(__unwrappedValue.toCpp())
34
+ } else {
35
+ return .init()
36
+ }
25
37
  }(), { () -> bridge.std__optional_Quantity_ in
26
38
  if let __unwrappedValue = duration {
27
39
  return bridge.create_std__optional_Quantity_(__unwrappedValue)
@@ -64,18 +76,6 @@ public extension QueryStatisticsResponseFromSingleSource {
64
76
  } else {
65
77
  return .init()
66
78
  }
67
- }(), { () -> bridge.std__optional_std__chrono__system_clock__time_point_ in
68
- if let __unwrappedValue = startDate {
69
- return bridge.create_std__optional_std__chrono__system_clock__time_point_(__unwrappedValue.toCpp())
70
- } else {
71
- return .init()
72
- }
73
- }(), { () -> bridge.std__optional_std__chrono__system_clock__time_point_ in
74
- if let __unwrappedValue = endDate {
75
- return bridge.create_std__optional_std__chrono__system_clock__time_point_(__unwrappedValue.toCpp())
76
- } else {
77
- return .init()
78
- }
79
79
  }())
80
80
  }
81
81
 
@@ -88,6 +88,30 @@ public extension QueryStatisticsResponseFromSingleSource {
88
88
  }()
89
89
  }
90
90
 
91
+ @inline(__always)
92
+ var startDate: Date? {
93
+ return { () -> Date? in
94
+ if bridge.has_value_std__optional_std__chrono__system_clock__time_point_(self.__startDate) {
95
+ let __unwrapped = bridge.get_std__optional_std__chrono__system_clock__time_point_(self.__startDate)
96
+ return Date(fromChrono: __unwrapped)
97
+ } else {
98
+ return nil
99
+ }
100
+ }()
101
+ }
102
+
103
+ @inline(__always)
104
+ var endDate: Date? {
105
+ return { () -> Date? in
106
+ if bridge.has_value_std__optional_std__chrono__system_clock__time_point_(self.__endDate) {
107
+ let __unwrapped = bridge.get_std__optional_std__chrono__system_clock__time_point_(self.__endDate)
108
+ return Date(fromChrono: __unwrapped)
109
+ } else {
110
+ return nil
111
+ }
112
+ }()
113
+ }
114
+
91
115
  @inline(__always)
92
116
  var duration: Quantity? {
93
117
  return self.__duration.value
@@ -122,28 +146,4 @@ public extension QueryStatisticsResponseFromSingleSource {
122
146
  var mostRecentQuantityDateInterval: QuantityDateInterval? {
123
147
  return self.__mostRecentQuantityDateInterval.value
124
148
  }
125
-
126
- @inline(__always)
127
- var startDate: Date? {
128
- return { () -> Date? in
129
- if bridge.has_value_std__optional_std__chrono__system_clock__time_point_(self.__startDate) {
130
- let __unwrapped = bridge.get_std__optional_std__chrono__system_clock__time_point_(self.__startDate)
131
- return Date(fromChrono: __unwrapped)
132
- } else {
133
- return nil
134
- }
135
- }()
136
- }
137
-
138
- @inline(__always)
139
- var endDate: Date? {
140
- return { () -> Date? in
141
- if bridge.has_value_std__optional_std__chrono__system_clock__time_point_(self.__endDate) {
142
- let __unwrapped = bridge.get_std__optional_std__chrono__system_clock__time_point_(self.__endDate)
143
- return Date(fromChrono: __unwrapped)
144
- } else {
145
- return nil
146
- }
147
- }()
148
- }
149
149
  }