@kingstinct/react-native-healthkit 13.1.4 → 13.2.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.
- package/ios/MedicationModule.swift +51 -4
- package/ios/WorkoutProxy.swift +4 -0
- package/lib/typescript/specs/MedicationModule.nitro.d.ts +1 -0
- package/lib/typescript/types/CategoryTypeIdentifier.d.ts +31 -1
- package/lib/typescript/types/QuantityTypeIdentifier.d.ts +12 -0
- package/lib/typescript/types/Workouts.d.ts +4 -0
- package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.hpp +17 -1
- package/nitrogen/generated/ios/swift/CategoryTypeIdentifier.swift +20 -0
- package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +4 -0
- package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +52 -0
- package/nitrogen/generated/ios/swift/MedicationDoseEvent.swift +32 -2
- package/nitrogen/generated/ios/swift/ObjectTypeIdentifier.swift +28 -0
- package/nitrogen/generated/ios/swift/QuantityTypeIdentifier.swift +8 -0
- package/nitrogen/generated/ios/swift/SampleTypeIdentifier.swift +28 -0
- package/nitrogen/generated/ios/swift/SampleTypeIdentifierWriteable.swift +28 -0
- package/nitrogen/generated/ios/swift/WorkoutSample.swift +94 -2
- package/nitrogen/generated/shared/c++/CategoryTypeIdentifier.hpp +20 -0
- package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.cpp +4 -0
- package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.hpp +5 -1
- package/nitrogen/generated/shared/c++/MedicationDoseEvent.hpp +6 -2
- package/nitrogen/generated/shared/c++/ObjectTypeIdentifier.hpp +162 -134
- package/nitrogen/generated/shared/c++/QuantityTypeIdentifier.hpp +92 -84
- package/nitrogen/generated/shared/c++/SampleTypeIdentifier.hpp +155 -127
- package/nitrogen/generated/shared/c++/SampleTypeIdentifierWriteable.hpp +149 -121
- package/nitrogen/generated/shared/c++/WorkoutSample.hpp +18 -2
- package/package.json +2 -2
- package/src/specs/MedicationModule.nitro.ts +1 -0
- package/src/types/CategoryTypeIdentifier.ts +35 -0
- package/src/types/QuantityTypeIdentifier.ts +14 -0
- package/src/types/Workouts.ts +4 -0
|
@@ -19,8 +19,32 @@ public extension WorkoutSample {
|
|
|
19
19
|
/**
|
|
20
20
|
* Create a new instance of `WorkoutSample`.
|
|
21
21
|
*/
|
|
22
|
-
init(workoutActivityType: WorkoutActivityType, duration: Quantity, events: [WorkoutEvent]?, activities: [WorkoutActivity]?, metadataAverageMETs: Quantity?, metadataElevationAscended: Quantity?, metadataElevationDescended: Quantity?, metadataIndoorWorkout: Bool?, metadataAverageSpeed: Quantity?, metadataMaximumSpeed: Quantity?, sampleType: SampleType, startDate: Date, endDate: Date, hasUndeterminedDuration: Bool, metadataWeatherCondition: WeatherCondition?, metadataWeatherHumidity: Quantity?, metadataWeatherTemperature: Quantity?, metadataInsulinDeliveryReason: InsulinDeliveryReason?, metadataHeartRateMotionContext: HeartRateMotionContext?, uuid: String, sourceRevision: SourceRevision, device: Device?, metadata: AnyMap, metadataExternalUUID: String?, metadataTimeZone: String?, metadataWasUserEntered: Bool?, metadataDeviceSerialNumber: String?, metadataUdiDeviceIdentifier: String?, metadataUdiProductionIdentifier: String?, metadataDigitalSignature: String?, metadataDeviceName: String?, metadataDeviceManufacturerName: String?, metadataSyncIdentifier: String?, metadataSyncVersion: Double?, metadataWasTakenInLab: Bool?, metadataReferenceRangeLowerLimit: Double?, metadataReferenceRangeUpperLimit: Double?, metadataAlgorithmVersion: Double?) {
|
|
23
|
-
self.init(workoutActivityType, duration, { () -> bridge.
|
|
22
|
+
init(workoutActivityType: WorkoutActivityType, duration: Quantity, totalEnergyBurned: Quantity?, totalDistance: Quantity?, totalSwimmingStrokeCount: Quantity?, totalFlightsClimbed: Quantity?, events: [WorkoutEvent]?, activities: [WorkoutActivity]?, metadataAverageMETs: Quantity?, metadataElevationAscended: Quantity?, metadataElevationDescended: Quantity?, metadataIndoorWorkout: Bool?, metadataAverageSpeed: Quantity?, metadataMaximumSpeed: Quantity?, sampleType: SampleType, startDate: Date, endDate: Date, hasUndeterminedDuration: Bool, metadataWeatherCondition: WeatherCondition?, metadataWeatherHumidity: Quantity?, metadataWeatherTemperature: Quantity?, metadataInsulinDeliveryReason: InsulinDeliveryReason?, metadataHeartRateMotionContext: HeartRateMotionContext?, uuid: String, sourceRevision: SourceRevision, device: Device?, metadata: AnyMap, metadataExternalUUID: String?, metadataTimeZone: String?, metadataWasUserEntered: Bool?, metadataDeviceSerialNumber: String?, metadataUdiDeviceIdentifier: String?, metadataUdiProductionIdentifier: String?, metadataDigitalSignature: String?, metadataDeviceName: String?, metadataDeviceManufacturerName: String?, metadataSyncIdentifier: String?, metadataSyncVersion: Double?, metadataWasTakenInLab: Bool?, metadataReferenceRangeLowerLimit: Double?, metadataReferenceRangeUpperLimit: Double?, metadataAlgorithmVersion: Double?) {
|
|
23
|
+
self.init(workoutActivityType, duration, { () -> bridge.std__optional_Quantity_ in
|
|
24
|
+
if let __unwrappedValue = totalEnergyBurned {
|
|
25
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
26
|
+
} else {
|
|
27
|
+
return .init()
|
|
28
|
+
}
|
|
29
|
+
}(), { () -> bridge.std__optional_Quantity_ in
|
|
30
|
+
if let __unwrappedValue = totalDistance {
|
|
31
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
32
|
+
} else {
|
|
33
|
+
return .init()
|
|
34
|
+
}
|
|
35
|
+
}(), { () -> bridge.std__optional_Quantity_ in
|
|
36
|
+
if let __unwrappedValue = totalSwimmingStrokeCount {
|
|
37
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
38
|
+
} else {
|
|
39
|
+
return .init()
|
|
40
|
+
}
|
|
41
|
+
}(), { () -> bridge.std__optional_Quantity_ in
|
|
42
|
+
if let __unwrappedValue = totalFlightsClimbed {
|
|
43
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
44
|
+
} else {
|
|
45
|
+
return .init()
|
|
46
|
+
}
|
|
47
|
+
}(), { () -> bridge.std__optional_std__vector_WorkoutEvent__ in
|
|
24
48
|
if let __unwrappedValue = events {
|
|
25
49
|
return bridge.create_std__optional_std__vector_WorkoutEvent__({ () -> bridge.std__vector_WorkoutEvent_ in
|
|
26
50
|
var __vector = bridge.create_std__vector_WorkoutEvent_(__unwrappedValue.count)
|
|
@@ -231,6 +255,74 @@ public extension WorkoutSample {
|
|
|
231
255
|
}
|
|
232
256
|
}
|
|
233
257
|
|
|
258
|
+
var totalEnergyBurned: Quantity? {
|
|
259
|
+
@inline(__always)
|
|
260
|
+
get {
|
|
261
|
+
return self.__totalEnergyBurned.value
|
|
262
|
+
}
|
|
263
|
+
@inline(__always)
|
|
264
|
+
set {
|
|
265
|
+
self.__totalEnergyBurned = { () -> bridge.std__optional_Quantity_ in
|
|
266
|
+
if let __unwrappedValue = newValue {
|
|
267
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
268
|
+
} else {
|
|
269
|
+
return .init()
|
|
270
|
+
}
|
|
271
|
+
}()
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
var totalDistance: Quantity? {
|
|
276
|
+
@inline(__always)
|
|
277
|
+
get {
|
|
278
|
+
return self.__totalDistance.value
|
|
279
|
+
}
|
|
280
|
+
@inline(__always)
|
|
281
|
+
set {
|
|
282
|
+
self.__totalDistance = { () -> bridge.std__optional_Quantity_ in
|
|
283
|
+
if let __unwrappedValue = newValue {
|
|
284
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
285
|
+
} else {
|
|
286
|
+
return .init()
|
|
287
|
+
}
|
|
288
|
+
}()
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
var totalSwimmingStrokeCount: Quantity? {
|
|
293
|
+
@inline(__always)
|
|
294
|
+
get {
|
|
295
|
+
return self.__totalSwimmingStrokeCount.value
|
|
296
|
+
}
|
|
297
|
+
@inline(__always)
|
|
298
|
+
set {
|
|
299
|
+
self.__totalSwimmingStrokeCount = { () -> bridge.std__optional_Quantity_ in
|
|
300
|
+
if let __unwrappedValue = newValue {
|
|
301
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
302
|
+
} else {
|
|
303
|
+
return .init()
|
|
304
|
+
}
|
|
305
|
+
}()
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
var totalFlightsClimbed: Quantity? {
|
|
310
|
+
@inline(__always)
|
|
311
|
+
get {
|
|
312
|
+
return self.__totalFlightsClimbed.value
|
|
313
|
+
}
|
|
314
|
+
@inline(__always)
|
|
315
|
+
set {
|
|
316
|
+
self.__totalFlightsClimbed = { () -> bridge.std__optional_Quantity_ in
|
|
317
|
+
if let __unwrappedValue = newValue {
|
|
318
|
+
return bridge.create_std__optional_Quantity_(__unwrappedValue)
|
|
319
|
+
} else {
|
|
320
|
+
return .init()
|
|
321
|
+
}
|
|
322
|
+
}()
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
|
|
234
326
|
var events: [WorkoutEvent]? {
|
|
235
327
|
@inline(__always)
|
|
236
328
|
get {
|
|
@@ -93,6 +93,11 @@ namespace margelo::nitro::healthkit {
|
|
|
93
93
|
HKCATEGORYTYPEIDENTIFIERWHEEZING SWIFT_NAME(hkcategorytypeidentifierwheezing) = 61,
|
|
94
94
|
HKCATEGORYTYPEIDENTIFIERBLEEDINGAFTERPREGNANCY SWIFT_NAME(hkcategorytypeidentifierbleedingafterpregnancy) = 62,
|
|
95
95
|
HKCATEGORYTYPEIDENTIFIERBLEEDINGDURINGPREGNANCY SWIFT_NAME(hkcategorytypeidentifierbleedingduringpregnancy) = 63,
|
|
96
|
+
HKCATEGORYTYPEIDENTIFIERINFREQUENTMENSTRUALCYCLES SWIFT_NAME(hkcategorytypeidentifierinfrequentmenstrualcycles) = 64,
|
|
97
|
+
HKCATEGORYTYPEIDENTIFIERIRREGULARMENSTRUALCYCLES SWIFT_NAME(hkcategorytypeidentifierirregularmenstrualcycles) = 65,
|
|
98
|
+
HKCATEGORYTYPEIDENTIFIERPERSISTENTINTERMENSTRUALBLEEDING SWIFT_NAME(hkcategorytypeidentifierpersistentintermenstrualbleeding) = 66,
|
|
99
|
+
HKCATEGORYTYPEIDENTIFIERPROLONGEDMENSTRUALPERIODS SWIFT_NAME(hkcategorytypeidentifierprolongedmenstrualperiods) = 67,
|
|
100
|
+
HKCATEGORYTYPEIDENTIFIERSLEEPAPNEAEVENT SWIFT_NAME(hkcategorytypeidentifiersleepapneaevent) = 68,
|
|
96
101
|
} CLOSED_ENUM;
|
|
97
102
|
|
|
98
103
|
} // namespace margelo::nitro::healthkit
|
|
@@ -169,6 +174,11 @@ namespace margelo::nitro {
|
|
|
169
174
|
case hashString("HKCategoryTypeIdentifierWheezing"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERWHEEZING;
|
|
170
175
|
case hashString("HKCategoryTypeIdentifierBleedingAfterPregnancy"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERBLEEDINGAFTERPREGNANCY;
|
|
171
176
|
case hashString("HKCategoryTypeIdentifierBleedingDuringPregnancy"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERBLEEDINGDURINGPREGNANCY;
|
|
177
|
+
case hashString("HKCategoryTypeIdentifierInfrequentMenstrualCycles"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERINFREQUENTMENSTRUALCYCLES;
|
|
178
|
+
case hashString("HKCategoryTypeIdentifierIrregularMenstrualCycles"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERIRREGULARMENSTRUALCYCLES;
|
|
179
|
+
case hashString("HKCategoryTypeIdentifierPersistentIntermenstrualBleeding"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERPERSISTENTINTERMENSTRUALBLEEDING;
|
|
180
|
+
case hashString("HKCategoryTypeIdentifierProlongedMenstrualPeriods"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERPROLONGEDMENSTRUALPERIODS;
|
|
181
|
+
case hashString("HKCategoryTypeIdentifierSleepApneaEvent"): return margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERSLEEPAPNEAEVENT;
|
|
172
182
|
default: [[unlikely]]
|
|
173
183
|
throw std::invalid_argument("Cannot convert \"" + unionValue + "\" to enum CategoryTypeIdentifier - invalid value!");
|
|
174
184
|
}
|
|
@@ -239,6 +249,11 @@ namespace margelo::nitro {
|
|
|
239
249
|
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERWHEEZING: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierWheezing");
|
|
240
250
|
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERBLEEDINGAFTERPREGNANCY: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierBleedingAfterPregnancy");
|
|
241
251
|
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERBLEEDINGDURINGPREGNANCY: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierBleedingDuringPregnancy");
|
|
252
|
+
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERINFREQUENTMENSTRUALCYCLES: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierInfrequentMenstrualCycles");
|
|
253
|
+
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERIRREGULARMENSTRUALCYCLES: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierIrregularMenstrualCycles");
|
|
254
|
+
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERPERSISTENTINTERMENSTRUALBLEEDING: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierPersistentIntermenstrualBleeding");
|
|
255
|
+
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERPROLONGEDMENSTRUALPERIODS: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierProlongedMenstrualPeriods");
|
|
256
|
+
case margelo::nitro::healthkit::CategoryTypeIdentifier::HKCATEGORYTYPEIDENTIFIERSLEEPAPNEAEVENT: return JSIConverter<std::string>::toJSI(runtime, "HKCategoryTypeIdentifierSleepApneaEvent");
|
|
242
257
|
default: [[unlikely]]
|
|
243
258
|
throw std::invalid_argument("Cannot convert CategoryTypeIdentifier to JS - invalid value: "
|
|
244
259
|
+ std::to_string(static_cast<int>(arg)) + "!");
|
|
@@ -314,6 +329,11 @@ namespace margelo::nitro {
|
|
|
314
329
|
case hashString("HKCategoryTypeIdentifierWheezing"):
|
|
315
330
|
case hashString("HKCategoryTypeIdentifierBleedingAfterPregnancy"):
|
|
316
331
|
case hashString("HKCategoryTypeIdentifierBleedingDuringPregnancy"):
|
|
332
|
+
case hashString("HKCategoryTypeIdentifierInfrequentMenstrualCycles"):
|
|
333
|
+
case hashString("HKCategoryTypeIdentifierIrregularMenstrualCycles"):
|
|
334
|
+
case hashString("HKCategoryTypeIdentifierPersistentIntermenstrualBleeding"):
|
|
335
|
+
case hashString("HKCategoryTypeIdentifierProlongedMenstrualPeriods"):
|
|
336
|
+
case hashString("HKCategoryTypeIdentifierSleepApneaEvent"):
|
|
317
337
|
return true;
|
|
318
338
|
default:
|
|
319
339
|
return false;
|
|
@@ -16,6 +16,10 @@ namespace margelo::nitro::healthkit {
|
|
|
16
16
|
registerHybrids(this, [](Prototype& prototype) {
|
|
17
17
|
prototype.registerHybridGetter("workoutActivityType", &HybridWorkoutProxySpec::getWorkoutActivityType);
|
|
18
18
|
prototype.registerHybridGetter("duration", &HybridWorkoutProxySpec::getDuration);
|
|
19
|
+
prototype.registerHybridGetter("totalEnergyBurned", &HybridWorkoutProxySpec::getTotalEnergyBurned);
|
|
20
|
+
prototype.registerHybridGetter("totalDistance", &HybridWorkoutProxySpec::getTotalDistance);
|
|
21
|
+
prototype.registerHybridGetter("totalSwimmingStrokeCount", &HybridWorkoutProxySpec::getTotalSwimmingStrokeCount);
|
|
22
|
+
prototype.registerHybridGetter("totalFlightsClimbed", &HybridWorkoutProxySpec::getTotalFlightsClimbed);
|
|
19
23
|
prototype.registerHybridGetter("events", &HybridWorkoutProxySpec::getEvents);
|
|
20
24
|
prototype.registerHybridGetter("activities", &HybridWorkoutProxySpec::getActivities);
|
|
21
25
|
prototype.registerHybridGetter("metadataAverageMETs", &HybridWorkoutProxySpec::getMetadataAverageMETs);
|
|
@@ -48,9 +48,9 @@ namespace margelo::nitro::healthkit { enum class QuantityTypeIdentifier; }
|
|
|
48
48
|
|
|
49
49
|
#include "WorkoutActivityType.hpp"
|
|
50
50
|
#include "Quantity.hpp"
|
|
51
|
+
#include <optional>
|
|
51
52
|
#include "WorkoutEvent.hpp"
|
|
52
53
|
#include <vector>
|
|
53
|
-
#include <optional>
|
|
54
54
|
#include "WorkoutActivity.hpp"
|
|
55
55
|
#include "SampleType.hpp"
|
|
56
56
|
#include <chrono>
|
|
@@ -99,6 +99,10 @@ namespace margelo::nitro::healthkit {
|
|
|
99
99
|
// Properties
|
|
100
100
|
virtual WorkoutActivityType getWorkoutActivityType() = 0;
|
|
101
101
|
virtual Quantity getDuration() = 0;
|
|
102
|
+
virtual std::optional<Quantity> getTotalEnergyBurned() = 0;
|
|
103
|
+
virtual std::optional<Quantity> getTotalDistance() = 0;
|
|
104
|
+
virtual std::optional<Quantity> getTotalSwimmingStrokeCount() = 0;
|
|
105
|
+
virtual std::optional<Quantity> getTotalFlightsClimbed() = 0;
|
|
102
106
|
virtual std::optional<std::vector<WorkoutEvent>> getEvents() = 0;
|
|
103
107
|
virtual std::optional<std::vector<WorkoutActivity>> getActivities() = 0;
|
|
104
108
|
virtual std::optional<Quantity> getMetadataAverageMETs() = 0;
|
|
@@ -44,8 +44,8 @@ namespace margelo::nitro::healthkit { struct Device; }
|
|
|
44
44
|
|
|
45
45
|
#include "MedicationDoseEventScheduleType.hpp"
|
|
46
46
|
#include <string>
|
|
47
|
-
#include <chrono>
|
|
48
47
|
#include <optional>
|
|
48
|
+
#include <chrono>
|
|
49
49
|
#include "MedicationDoseEventLogStatus.hpp"
|
|
50
50
|
#include "SampleType.hpp"
|
|
51
51
|
#include "WeatherCondition.hpp"
|
|
@@ -65,6 +65,7 @@ namespace margelo::nitro::healthkit {
|
|
|
65
65
|
public:
|
|
66
66
|
MedicationDoseEventScheduleType scheduleType SWIFT_PRIVATE;
|
|
67
67
|
std::string medicationConceptIdentifier SWIFT_PRIVATE;
|
|
68
|
+
std::optional<std::string> medicationDisplayText SWIFT_PRIVATE;
|
|
68
69
|
std::optional<std::chrono::system_clock::time_point> scheduledDate SWIFT_PRIVATE;
|
|
69
70
|
std::optional<double> scheduledDoseQuantity SWIFT_PRIVATE;
|
|
70
71
|
std::optional<double> doseQuantity SWIFT_PRIVATE;
|
|
@@ -101,7 +102,7 @@ namespace margelo::nitro::healthkit {
|
|
|
101
102
|
|
|
102
103
|
public:
|
|
103
104
|
MedicationDoseEvent() = default;
|
|
104
|
-
explicit MedicationDoseEvent(MedicationDoseEventScheduleType scheduleType, std::string medicationConceptIdentifier, std::optional<std::chrono::system_clock::time_point> scheduledDate, std::optional<double> scheduledDoseQuantity, std::optional<double> doseQuantity, MedicationDoseEventLogStatus logStatus, std::string unit, SampleType sampleType, std::chrono::system_clock::time_point startDate, std::chrono::system_clock::time_point endDate, bool hasUndeterminedDuration, std::optional<WeatherCondition> metadataWeatherCondition, std::optional<Quantity> metadataWeatherHumidity, std::optional<Quantity> metadataWeatherTemperature, std::optional<InsulinDeliveryReason> metadataInsulinDeliveryReason, std::optional<HeartRateMotionContext> metadataHeartRateMotionContext, std::string uuid, SourceRevision sourceRevision, std::optional<Device> device, std::shared_ptr<AnyMap> metadata, std::optional<std::string> metadataExternalUUID, std::optional<std::string> metadataTimeZone, std::optional<bool> metadataWasUserEntered, std::optional<std::string> metadataDeviceSerialNumber, std::optional<std::string> metadataUdiDeviceIdentifier, std::optional<std::string> metadataUdiProductionIdentifier, std::optional<std::string> metadataDigitalSignature, std::optional<std::string> metadataDeviceName, std::optional<std::string> metadataDeviceManufacturerName, std::optional<std::string> metadataSyncIdentifier, std::optional<double> metadataSyncVersion, std::optional<bool> metadataWasTakenInLab, std::optional<double> metadataReferenceRangeLowerLimit, std::optional<double> metadataReferenceRangeUpperLimit, std::optional<double> metadataAlgorithmVersion): scheduleType(scheduleType), medicationConceptIdentifier(medicationConceptIdentifier), scheduledDate(scheduledDate), scheduledDoseQuantity(scheduledDoseQuantity), doseQuantity(doseQuantity), logStatus(logStatus), unit(unit), sampleType(sampleType), startDate(startDate), endDate(endDate), hasUndeterminedDuration(hasUndeterminedDuration), metadataWeatherCondition(metadataWeatherCondition), metadataWeatherHumidity(metadataWeatherHumidity), metadataWeatherTemperature(metadataWeatherTemperature), metadataInsulinDeliveryReason(metadataInsulinDeliveryReason), metadataHeartRateMotionContext(metadataHeartRateMotionContext), uuid(uuid), sourceRevision(sourceRevision), device(device), metadata(metadata), metadataExternalUUID(metadataExternalUUID), metadataTimeZone(metadataTimeZone), metadataWasUserEntered(metadataWasUserEntered), metadataDeviceSerialNumber(metadataDeviceSerialNumber), metadataUdiDeviceIdentifier(metadataUdiDeviceIdentifier), metadataUdiProductionIdentifier(metadataUdiProductionIdentifier), metadataDigitalSignature(metadataDigitalSignature), metadataDeviceName(metadataDeviceName), metadataDeviceManufacturerName(metadataDeviceManufacturerName), metadataSyncIdentifier(metadataSyncIdentifier), metadataSyncVersion(metadataSyncVersion), metadataWasTakenInLab(metadataWasTakenInLab), metadataReferenceRangeLowerLimit(metadataReferenceRangeLowerLimit), metadataReferenceRangeUpperLimit(metadataReferenceRangeUpperLimit), metadataAlgorithmVersion(metadataAlgorithmVersion) {}
|
|
105
|
+
explicit MedicationDoseEvent(MedicationDoseEventScheduleType scheduleType, std::string medicationConceptIdentifier, std::optional<std::string> medicationDisplayText, std::optional<std::chrono::system_clock::time_point> scheduledDate, std::optional<double> scheduledDoseQuantity, std::optional<double> doseQuantity, MedicationDoseEventLogStatus logStatus, std::string unit, SampleType sampleType, std::chrono::system_clock::time_point startDate, std::chrono::system_clock::time_point endDate, bool hasUndeterminedDuration, std::optional<WeatherCondition> metadataWeatherCondition, std::optional<Quantity> metadataWeatherHumidity, std::optional<Quantity> metadataWeatherTemperature, std::optional<InsulinDeliveryReason> metadataInsulinDeliveryReason, std::optional<HeartRateMotionContext> metadataHeartRateMotionContext, std::string uuid, SourceRevision sourceRevision, std::optional<Device> device, std::shared_ptr<AnyMap> metadata, std::optional<std::string> metadataExternalUUID, std::optional<std::string> metadataTimeZone, std::optional<bool> metadataWasUserEntered, std::optional<std::string> metadataDeviceSerialNumber, std::optional<std::string> metadataUdiDeviceIdentifier, std::optional<std::string> metadataUdiProductionIdentifier, std::optional<std::string> metadataDigitalSignature, std::optional<std::string> metadataDeviceName, std::optional<std::string> metadataDeviceManufacturerName, std::optional<std::string> metadataSyncIdentifier, std::optional<double> metadataSyncVersion, std::optional<bool> metadataWasTakenInLab, std::optional<double> metadataReferenceRangeLowerLimit, std::optional<double> metadataReferenceRangeUpperLimit, std::optional<double> metadataAlgorithmVersion): scheduleType(scheduleType), medicationConceptIdentifier(medicationConceptIdentifier), medicationDisplayText(medicationDisplayText), scheduledDate(scheduledDate), scheduledDoseQuantity(scheduledDoseQuantity), doseQuantity(doseQuantity), logStatus(logStatus), unit(unit), sampleType(sampleType), startDate(startDate), endDate(endDate), hasUndeterminedDuration(hasUndeterminedDuration), metadataWeatherCondition(metadataWeatherCondition), metadataWeatherHumidity(metadataWeatherHumidity), metadataWeatherTemperature(metadataWeatherTemperature), metadataInsulinDeliveryReason(metadataInsulinDeliveryReason), metadataHeartRateMotionContext(metadataHeartRateMotionContext), uuid(uuid), sourceRevision(sourceRevision), device(device), metadata(metadata), metadataExternalUUID(metadataExternalUUID), metadataTimeZone(metadataTimeZone), metadataWasUserEntered(metadataWasUserEntered), metadataDeviceSerialNumber(metadataDeviceSerialNumber), metadataUdiDeviceIdentifier(metadataUdiDeviceIdentifier), metadataUdiProductionIdentifier(metadataUdiProductionIdentifier), metadataDigitalSignature(metadataDigitalSignature), metadataDeviceName(metadataDeviceName), metadataDeviceManufacturerName(metadataDeviceManufacturerName), metadataSyncIdentifier(metadataSyncIdentifier), metadataSyncVersion(metadataSyncVersion), metadataWasTakenInLab(metadataWasTakenInLab), metadataReferenceRangeLowerLimit(metadataReferenceRangeLowerLimit), metadataReferenceRangeUpperLimit(metadataReferenceRangeUpperLimit), metadataAlgorithmVersion(metadataAlgorithmVersion) {}
|
|
105
106
|
};
|
|
106
107
|
|
|
107
108
|
} // namespace margelo::nitro::healthkit
|
|
@@ -116,6 +117,7 @@ namespace margelo::nitro {
|
|
|
116
117
|
return margelo::nitro::healthkit::MedicationDoseEvent(
|
|
117
118
|
JSIConverter<margelo::nitro::healthkit::MedicationDoseEventScheduleType>::fromJSI(runtime, obj.getProperty(runtime, "scheduleType")),
|
|
118
119
|
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "medicationConceptIdentifier")),
|
|
120
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "medicationDisplayText")),
|
|
119
121
|
JSIConverter<std::optional<std::chrono::system_clock::time_point>>::fromJSI(runtime, obj.getProperty(runtime, "scheduledDate")),
|
|
120
122
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "scheduledDoseQuantity")),
|
|
121
123
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "doseQuantity")),
|
|
@@ -155,6 +157,7 @@ namespace margelo::nitro {
|
|
|
155
157
|
jsi::Object obj(runtime);
|
|
156
158
|
obj.setProperty(runtime, "scheduleType", JSIConverter<margelo::nitro::healthkit::MedicationDoseEventScheduleType>::toJSI(runtime, arg.scheduleType));
|
|
157
159
|
obj.setProperty(runtime, "medicationConceptIdentifier", JSIConverter<std::string>::toJSI(runtime, arg.medicationConceptIdentifier));
|
|
160
|
+
obj.setProperty(runtime, "medicationDisplayText", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.medicationDisplayText));
|
|
158
161
|
obj.setProperty(runtime, "scheduledDate", JSIConverter<std::optional<std::chrono::system_clock::time_point>>::toJSI(runtime, arg.scheduledDate));
|
|
159
162
|
obj.setProperty(runtime, "scheduledDoseQuantity", JSIConverter<std::optional<double>>::toJSI(runtime, arg.scheduledDoseQuantity));
|
|
160
163
|
obj.setProperty(runtime, "doseQuantity", JSIConverter<std::optional<double>>::toJSI(runtime, arg.doseQuantity));
|
|
@@ -200,6 +203,7 @@ namespace margelo::nitro {
|
|
|
200
203
|
}
|
|
201
204
|
if (!JSIConverter<margelo::nitro::healthkit::MedicationDoseEventScheduleType>::canConvert(runtime, obj.getProperty(runtime, "scheduleType"))) return false;
|
|
202
205
|
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "medicationConceptIdentifier"))) return false;
|
|
206
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "medicationDisplayText"))) return false;
|
|
203
207
|
if (!JSIConverter<std::optional<std::chrono::system_clock::time_point>>::canConvert(runtime, obj.getProperty(runtime, "scheduledDate"))) return false;
|
|
204
208
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "scheduledDoseQuantity"))) return false;
|
|
205
209
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "doseQuantity"))) return false;
|