@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.
- package/ios/CategoryTypeModule.swift +49 -97
- package/ios/CharacteristicTypeModule.swift +77 -63
- package/ios/CoreModule.swift +324 -280
- package/ios/CorrelationTypeModule.swift +192 -144
- package/ios/ElectrocardiogramModule.swift +185 -194
- package/ios/HeartbeatSeriesModule.swift +123 -171
- package/ios/Helpers.swift +312 -571
- package/ios/MedicationModule.swift +259 -0
- package/ios/PredicateHelpers.swift +334 -0
- package/ios/QuantityTypeModule.swift +297 -378
- package/ios/Serializers.swift +273 -210
- package/ios/SourceProxy.swift +2 -2
- package/ios/StateOfMindModule.swift +179 -125
- package/ios/WorkoutProxy.swift +235 -112
- package/ios/WorkoutsModule.swift +214 -262
- package/lib/commonjs/healthkit.ios.js +22 -2
- package/lib/commonjs/healthkit.js +35 -5
- package/lib/commonjs/hooks/useStatisticsForQuantity.js +1 -1
- package/lib/commonjs/hooks/useSubscribeToCategorySamples.js +20 -0
- package/lib/commonjs/modules.js +2 -1
- package/lib/commonjs/specs/MedicationModule.nitro.js +27 -0
- package/lib/commonjs/types/Constants.js +2 -1
- package/lib/commonjs/types/QuantityType.js +8 -1
- package/lib/commonjs/types/QueryOptions.js +18 -0
- package/lib/commonjs/types/WeatherCondition.js +32 -32
- package/lib/commonjs/types/Workouts.js +1 -50
- package/lib/commonjs/utils/getCategorySampleById.js +1 -1
- package/lib/commonjs/utils/getQuantitySampleById.js +1 -1
- package/lib/commonjs/utils/getWorkoutById.js +1 -1
- package/lib/commonjs/utils/subscribeToCategorySamples.js +29 -0
- package/lib/commonjs/utils/subscribeToQuantitySamples.js +8 -25
- package/lib/module/healthkit.ios.js +20 -2
- package/lib/module/healthkit.js +32 -2
- package/lib/module/hooks/useStatisticsForQuantity.js +1 -1
- package/lib/module/hooks/useSubscribeToCategorySamples.js +17 -0
- package/lib/module/modules.js +1 -0
- package/lib/module/specs/MedicationModule.nitro.js +26 -0
- package/lib/module/types/Constants.js +1 -0
- package/lib/module/types/QuantityType.js +7 -0
- package/lib/module/types/QueryOptions.js +17 -1
- package/lib/module/types/WeatherCondition.js +31 -31
- package/lib/module/types/Workouts.js +0 -49
- package/lib/module/utils/getCategorySampleById.js +1 -1
- package/lib/module/utils/getQuantitySampleById.js +1 -1
- package/lib/module/utils/getWorkoutById.js +1 -1
- package/lib/module/utils/subscribeToCategorySamples.js +26 -0
- package/lib/module/utils/subscribeToQuantitySamples.js +8 -25
- package/lib/typescript/healthkit.d.ts +18 -9
- package/lib/typescript/healthkit.ios.d.ts +33 -15
- package/lib/typescript/hooks/useSubscribeToCategorySamples.d.ts +3 -0
- package/lib/typescript/modules.d.ts +2 -0
- package/lib/typescript/specs/CategoryTypeModule.nitro.d.ts +2 -2
- package/lib/typescript/specs/CoreModule.nitro.d.ts +2 -1
- package/lib/typescript/specs/CorrelationTypeModule.nitro.d.ts +4 -2
- package/lib/typescript/specs/ElectrocardiogramModule.nitro.d.ts +1 -1
- package/lib/typescript/specs/HeartbeatSeriesModule.nitro.d.ts +1 -1
- package/lib/typescript/specs/MedicationModule.nitro.d.ts +56 -0
- package/lib/typescript/specs/QuantityTypeModule.nitro.d.ts +4 -4
- package/lib/typescript/specs/StateOfMindModule.nitro.d.ts +4 -3
- package/lib/typescript/types/CategoryType.d.ts +10 -20
- package/lib/typescript/types/Constants.d.ts +1 -0
- package/lib/typescript/types/CorrelationType.d.ts +8 -10
- package/lib/typescript/types/ElectrocardiogramSample.d.ts +2 -12
- package/lib/typescript/types/HeartbeatSeries.d.ts +2 -14
- package/lib/typescript/types/QuantitySample.d.ts +2 -8
- package/lib/typescript/types/QuantityType.d.ts +7 -8
- package/lib/typescript/types/QuantityTypeIdentifier.d.ts +23 -23
- package/lib/typescript/types/QueryOptions.d.ts +43 -28
- package/lib/typescript/types/Shared.d.ts +52 -7
- package/lib/typescript/types/StateOfMind.d.ts +7 -10
- package/lib/typescript/types/Subscriptions.d.ts +12 -3
- package/lib/typescript/types/WeatherCondition.d.ts +1 -1
- package/lib/typescript/types/Workouts.d.ts +28 -81
- package/lib/typescript/utils/subscribeToCategorySamples.d.ts +5 -0
- package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.cpp +57 -0
- package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Bridge.hpp +592 -389
- package/nitrogen/generated/ios/ReactNativeHealthkit-Swift-Cxx-Umbrella.hpp +65 -30
- package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.mm +8 -0
- package/nitrogen/generated/ios/ReactNativeHealthkitAutolinking.swift +15 -0
- package/nitrogen/generated/ios/c++/HybridCategoryTypeModuleSpecSwift.hpp +32 -26
- package/nitrogen/generated/ios/c++/HybridCoreModuleSpecSwift.hpp +36 -37
- package/nitrogen/generated/ios/c++/HybridCorrelationTypeModuleSpecSwift.hpp +55 -2
- package/nitrogen/generated/ios/c++/HybridElectrocardiogramModuleSpecSwift.hpp +36 -30
- package/nitrogen/generated/ios/c++/HybridHeartbeatSeriesModuleSpecSwift.hpp +35 -29
- package/nitrogen/generated/ios/c++/HybridMedicationModuleSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridMedicationModuleSpecSwift.hpp +181 -0
- package/nitrogen/generated/ios/c++/HybridQuantityTypeModuleSpecSwift.hpp +48 -42
- package/nitrogen/generated/ios/c++/HybridStateOfMindModuleSpecSwift.hpp +59 -36
- package/nitrogen/generated/ios/c++/HybridWorkoutProxySpecSwift.hpp +150 -29
- package/nitrogen/generated/ios/c++/HybridWorkoutsModuleSpecSwift.hpp +13 -28
- package/nitrogen/generated/ios/swift/AggregationStyle.swift +48 -0
- package/nitrogen/generated/ios/swift/CategorySample.swift +571 -24
- package/nitrogen/generated/ios/swift/ComparisonPredicateOperator.swift +2 -2
- package/nitrogen/generated/ios/swift/CorrelationSample.swift +640 -17
- package/nitrogen/generated/ios/swift/{PredicateWithStartAndEnd.swift → DateFilter.swift} +5 -5
- package/nitrogen/generated/ios/swift/ECGQueryOptionsWithAnchor.swift +11 -91
- package/nitrogen/generated/ios/swift/ECGQueryOptionsWithSortOrder.swift +11 -91
- package/nitrogen/generated/ios/swift/ElectrocardiogramSample.swift +570 -72
- package/nitrogen/generated/ios/swift/FilterForSamples.swift +349 -12
- package/nitrogen/generated/ios/swift/FilterForSamplesBase.swift +234 -0
- package/nitrogen/generated/ios/swift/FilterForWorkouts.swift +366 -0
- package/nitrogen/generated/ios/swift/FilterForWorkoutsBase.swift +240 -0
- package/nitrogen/generated/ios/swift/Func_void_MedicationDoseEventsWithAnchorResponse.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_QueryCorrelationSamplesWithAnchorResponse.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_StateOfMindSamplesWithAnchorResponse.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_MedicationDoseEvent_.swift +47 -0
- package/nitrogen/generated/ios/swift/Func_void_std__vector_UserAnnotatedMedication_.swift +47 -0
- package/nitrogen/generated/ios/swift/GeneralForm.swift +104 -0
- package/nitrogen/generated/ios/swift/HeartRateMotionContext.swift +44 -0
- package/nitrogen/generated/ios/swift/HeartbeatSeriesSample.swift +565 -37
- package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridCategoryTypeModuleSpec_cxx.swift +2 -2
- package/nitrogen/generated/ios/swift/HybridCoreModuleSpec.swift +2 -1
- package/nitrogen/generated/ios/swift/HybridCoreModuleSpec_cxx.swift +19 -31
- package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec.swift +2 -1
- package/nitrogen/generated/ios/swift/HybridCorrelationTypeModuleSpec_cxx.swift +21 -2
- package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridElectrocardiogramModuleSpec_cxx.swift +2 -2
- package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridHeartbeatSeriesModuleSpec_cxx.swift +2 -2
- package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec.swift +60 -0
- package/nitrogen/generated/ios/swift/HybridMedicationModuleSpec_cxx.swift +208 -0
- package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec.swift +2 -2
- package/nitrogen/generated/ios/swift/HybridQuantityTypeModuleSpec_cxx.swift +9 -43
- package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec.swift +2 -1
- package/nitrogen/generated/ios/swift/HybridStateOfMindModuleSpec_cxx.swift +21 -2
- package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec.swift +34 -6
- package/nitrogen/generated/ios/swift/HybridWorkoutProxySpec_cxx.swift +376 -36
- package/nitrogen/generated/ios/swift/InsulinDeliveryReason.swift +40 -0
- package/nitrogen/generated/ios/swift/MedicationConcept.swift +80 -0
- package/nitrogen/generated/ios/swift/MedicationDoseEvent.swift +781 -0
- package/nitrogen/generated/ios/swift/MedicationDoseEventLogStatus.swift +56 -0
- package/nitrogen/generated/ios/swift/MedicationDoseEventScheduleType.swift +40 -0
- package/nitrogen/generated/ios/swift/MedicationDoseEventsWithAnchorResponse.swift +81 -0
- package/nitrogen/generated/ios/swift/ObjectTypeIdentifier.swift +16 -16
- package/nitrogen/generated/ios/swift/PredicateWithMetadataKey.swift +7 -7
- package/nitrogen/generated/ios/swift/QuantitySample.swift +574 -27
- package/nitrogen/generated/ios/swift/QuantityTypeIdentifier.swift +16 -16
- package/nitrogen/generated/ios/swift/QueryCorrelationSamplesWithAnchorResponse.swift +81 -0
- package/nitrogen/generated/ios/swift/QueryOptionsWithAnchor.swift +11 -91
- package/nitrogen/generated/ios/swift/QueryOptionsWithAnchorAndUnit.swift +11 -91
- package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrder.swift +11 -91
- package/nitrogen/generated/ios/swift/QueryOptionsWithSortOrderAndUnit.swift +11 -91
- package/nitrogen/generated/ios/swift/RelatedCoding.swift +76 -0
- package/nitrogen/generated/ios/swift/SampleType.swift +68 -0
- package/nitrogen/generated/ios/swift/SampleTypeIdentifier.swift +16 -16
- package/nitrogen/generated/ios/swift/SampleTypeIdentifierWriteable.swift +0 -16
- package/nitrogen/generated/ios/swift/StateOfMindSample.swift +586 -58
- package/nitrogen/generated/ios/swift/StateOfMindSamplesWithAnchorResponse.swift +81 -0
- package/nitrogen/generated/ios/swift/StatisticsQueryOptions.swift +7 -75
- package/nitrogen/generated/ios/swift/UserAnnotatedMedication.swift +87 -0
- package/nitrogen/generated/ios/swift/WeatherCondition.swift +144 -0
- package/nitrogen/generated/ios/swift/WorkoutQueryOptions.swift +11 -105
- package/nitrogen/generated/ios/swift/WorkoutQueryOptionsWithAnchor.swift +11 -105
- package/nitrogen/generated/ios/swift/WorkoutSample.swift +751 -78
- package/nitrogen/generated/shared/c++/AggregationStyle.hpp +64 -0
- package/nitrogen/generated/shared/c++/CategorySample.hpp +126 -23
- package/nitrogen/generated/shared/c++/CorrelationSample.hpp +134 -12
- package/nitrogen/generated/shared/c++/{PredicateWithStartAndEnd.hpp → DateFilter.hpp} +10 -10
- package/nitrogen/generated/shared/c++/ECGQueryOptionsWithAnchor.hpp +12 -31
- package/nitrogen/generated/shared/c++/ECGQueryOptionsWithSortOrder.hpp +12 -31
- package/nitrogen/generated/shared/c++/ElectrocardiogramSample.hpp +135 -36
- package/nitrogen/generated/shared/c++/FilterForSamples.hpp +124 -0
- package/nitrogen/generated/shared/c++/FilterForSamplesBase.hpp +109 -0
- package/nitrogen/generated/shared/c++/FilterForWorkouts.hpp +131 -0
- package/nitrogen/generated/shared/c++/FilterForWorkoutsBase.hpp +116 -0
- package/nitrogen/generated/shared/c++/GeneralForm.hpp +140 -0
- package/nitrogen/generated/shared/c++/HeartRateMotionContext.hpp +67 -0
- package/nitrogen/generated/shared/c++/HeartbeatSeriesSample.hpp +131 -28
- package/nitrogen/generated/shared/c++/HybridCategoryTypeModuleSpec.hpp +1 -2
- package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridCoreModuleSpec.hpp +10 -28
- package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridCorrelationTypeModuleSpec.hpp +11 -1
- package/nitrogen/generated/shared/c++/HybridElectrocardiogramModuleSpec.hpp +1 -2
- package/nitrogen/generated/shared/c++/HybridHeartbeatSeriesModuleSpec.hpp +1 -2
- package/nitrogen/generated/shared/c++/HybridMedicationModuleSpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridMedicationModuleSpec.hpp +80 -0
- package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridQuantityTypeModuleSpec.hpp +6 -25
- package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridStateOfMindModuleSpec.hpp +9 -2
- package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.cpp +33 -5
- package/nitrogen/generated/shared/c++/HybridWorkoutProxySpec.hpp +56 -16
- package/nitrogen/generated/shared/c++/InsulinDeliveryReason.hpp +62 -0
- package/nitrogen/generated/shared/c++/MedicationConcept.hpp +93 -0
- package/nitrogen/generated/shared/c++/MedicationDoseEvent.hpp +240 -0
- package/nitrogen/generated/shared/c++/MedicationDoseEventLogStatus.hpp +66 -0
- package/nitrogen/generated/shared/c++/MedicationDoseEventScheduleType.hpp +62 -0
- package/nitrogen/generated/shared/c++/MedicationDoseEventsWithAnchorResponse.hpp +89 -0
- package/nitrogen/generated/shared/c++/ObjectTypeIdentifier.hpp +105 -105
- package/nitrogen/generated/shared/c++/PredicateWithMetadataKey.hpp +8 -8
- package/nitrogen/generated/shared/c++/QuantitySample.hpp +130 -27
- package/nitrogen/generated/shared/c++/QuantityTypeIdentifier.hpp +105 -105
- package/nitrogen/generated/shared/c++/QueryCorrelationSamplesWithAnchorResponse.hpp +89 -0
- package/nitrogen/generated/shared/c++/QueryOptionsWithAnchor.hpp +12 -31
- package/nitrogen/generated/shared/c++/QueryOptionsWithAnchorAndUnit.hpp +12 -31
- package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrder.hpp +12 -31
- package/nitrogen/generated/shared/c++/QueryOptionsWithSortOrderAndUnit.hpp +12 -31
- package/nitrogen/generated/shared/c++/RelatedCoding.hpp +84 -0
- package/nitrogen/generated/shared/c++/SampleType.hpp +87 -0
- package/nitrogen/generated/shared/c++/SampleTypeIdentifier.hpp +105 -105
- package/nitrogen/generated/shared/c++/SampleTypeIdentifierWriteable.hpp +105 -121
- package/nitrogen/generated/shared/c++/StateOfMindSample.hpp +139 -36
- package/nitrogen/generated/shared/c++/StateOfMindSamplesWithAnchorResponse.hpp +89 -0
- package/nitrogen/generated/shared/c++/StatisticsQueryOptions.hpp +8 -27
- package/nitrogen/generated/shared/c++/UserAnnotatedMedication.hpp +90 -0
- package/nitrogen/generated/shared/c++/WeatherCondition.hpp +88 -0
- package/nitrogen/generated/shared/c++/WorkoutQueryOptions.hpp +12 -37
- package/nitrogen/generated/shared/c++/WorkoutQueryOptionsWithAnchor.hpp +12 -37
- package/nitrogen/generated/shared/c++/WorkoutSample.hpp +159 -35
- package/package.json +1 -1
- package/src/healthkit.ios.ts +30 -0
- package/src/healthkit.ts +68 -3
- package/src/hooks/useStatisticsForQuantity.ts +1 -1
- package/src/hooks/useSubscribeToCategorySamples.ts +31 -0
- package/src/modules.ts +4 -0
- package/src/specs/CategoryTypeModule.nitro.ts +2 -2
- package/src/specs/CoreModule.nitro.ts +3 -0
- package/src/specs/CorrelationTypeModule.nitro.ts +11 -3
- package/src/specs/ElectrocardiogramModule.nitro.ts +1 -1
- package/src/specs/HeartbeatSeriesModule.nitro.ts +1 -1
- package/src/specs/MedicationModule.nitro.ts +140 -0
- package/src/specs/QuantityTypeModule.nitro.ts +4 -7
- package/src/specs/StateOfMindModule.nitro.ts +10 -2
- package/src/types/CategoryType.ts +15 -22
- package/src/types/Constants.ts +3 -0
- package/src/types/CorrelationType.ts +10 -15
- package/src/types/ElectrocardiogramSample.ts +2 -14
- package/src/types/HeartbeatSeries.ts +2 -15
- package/src/types/QuantitySample.ts +2 -8
- package/src/types/QuantityType.ts +8 -17
- package/src/types/QuantityTypeIdentifier.ts +25 -25
- package/src/types/QueryOptions.ts +54 -43
- package/src/types/Shared.ts +74 -17
- package/src/types/StateOfMind.ts +8 -10
- package/src/types/Subscriptions.ts +19 -3
- package/src/types/WeatherCondition.ts +1 -1
- package/src/types/Workouts.ts +28 -91
- package/src/utils/getCategorySampleById.ts +1 -1
- package/src/utils/getQuantitySampleById.ts +1 -1
- package/src/utils/getWorkoutById.ts +1 -2
- package/src/utils/subscribeToCategorySamples.ts +38 -0
- package/src/utils/subscribeToQuantitySamples.ts +12 -37
- package/nitrogen/generated/ios/swift/FilterForSamplesAnd.swift +0 -94
- package/nitrogen/generated/ios/swift/FilterForSamplesOr.swift +0 -94
- package/nitrogen/generated/ios/swift/PredicateForSamples.swift +0 -21
- package/nitrogen/generated/ios/swift/PredicateForWorkouts.swift +0 -23
- package/nitrogen/generated/ios/swift/PredicateForWorkoutsAnd.swift +0 -108
- package/nitrogen/generated/ios/swift/PredicateForWorkoutsOr.swift +0 -108
- package/nitrogen/generated/ios/swift/PredicateFromWorkout.swift +0 -45
- package/nitrogen/generated/ios/swift/PredicateWithMetadataOperator.swift +0 -48
- package/nitrogen/generated/ios/swift/PredicateWithUUID.swift +0 -35
- package/nitrogen/generated/ios/swift/PredicateWithUUIDs.swift +0 -47
- package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_FilterForSamplesAnd_FilterForSamplesOr.swift +0 -23
- package/nitrogen/generated/ios/swift/Variant_PredicateWithUUID_PredicateWithUUIDs_PredicateWithMetadataKey_PredicateWithStartAndEnd_PredicateFromWorkout_WorkoutActivityTypePredicate_WorkoutDurationPredicate_PredicateForWorkoutsOr_PredicateForWorkoutsAnd.swift +0 -25
- package/nitrogen/generated/ios/swift/WorkoutActivityTypePredicate.swift +0 -35
- package/nitrogen/generated/shared/c++/FilterForSamplesAnd.hpp +0 -90
- package/nitrogen/generated/shared/c++/FilterForSamplesOr.hpp +0 -90
- package/nitrogen/generated/shared/c++/PredicateForWorkoutsAnd.hpp +0 -96
- package/nitrogen/generated/shared/c++/PredicateForWorkoutsOr.hpp +0 -96
- package/nitrogen/generated/shared/c++/PredicateFromWorkout.hpp +0 -77
- package/nitrogen/generated/shared/c++/PredicateWithMetadataOperator.hpp +0 -84
- package/nitrogen/generated/shared/c++/PredicateWithUUID.hpp +0 -75
- package/nitrogen/generated/shared/c++/PredicateWithUUIDs.hpp +0 -76
- package/nitrogen/generated/shared/c++/WorkoutActivityTypePredicate.hpp +0 -76
|
@@ -23,31 +23,12 @@
|
|
|
23
23
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
24
|
#endif
|
|
25
25
|
|
|
26
|
-
// Forward declaration of `
|
|
27
|
-
namespace margelo::nitro::healthkit { struct
|
|
28
|
-
// Forward declaration of `PredicateWithUUIDs` to properly resolve imports.
|
|
29
|
-
namespace margelo::nitro::healthkit { struct PredicateWithUUIDs; }
|
|
30
|
-
// Forward declaration of `PredicateWithMetadataKey` to properly resolve imports.
|
|
31
|
-
namespace margelo::nitro::healthkit { struct PredicateWithMetadataKey; }
|
|
32
|
-
// Forward declaration of `PredicateWithStartAndEnd` to properly resolve imports.
|
|
33
|
-
namespace margelo::nitro::healthkit { struct PredicateWithStartAndEnd; }
|
|
34
|
-
// Forward declaration of `PredicateFromWorkout` to properly resolve imports.
|
|
35
|
-
namespace margelo::nitro::healthkit { struct PredicateFromWorkout; }
|
|
36
|
-
// Forward declaration of `FilterForSamplesAnd` to properly resolve imports.
|
|
37
|
-
namespace margelo::nitro::healthkit { struct FilterForSamplesAnd; }
|
|
38
|
-
// Forward declaration of `FilterForSamplesOr` to properly resolve imports.
|
|
39
|
-
namespace margelo::nitro::healthkit { struct FilterForSamplesOr; }
|
|
26
|
+
// Forward declaration of `FilterForSamples` to properly resolve imports.
|
|
27
|
+
namespace margelo::nitro::healthkit { struct FilterForSamples; }
|
|
40
28
|
|
|
41
29
|
#include <string>
|
|
42
30
|
#include <optional>
|
|
43
|
-
#include "
|
|
44
|
-
#include "PredicateWithUUIDs.hpp"
|
|
45
|
-
#include "PredicateWithMetadataKey.hpp"
|
|
46
|
-
#include "PredicateWithStartAndEnd.hpp"
|
|
47
|
-
#include "PredicateFromWorkout.hpp"
|
|
48
|
-
#include "FilterForSamplesAnd.hpp"
|
|
49
|
-
#include "FilterForSamplesOr.hpp"
|
|
50
|
-
#include <variant>
|
|
31
|
+
#include "FilterForSamples.hpp"
|
|
51
32
|
|
|
52
33
|
namespace margelo::nitro::healthkit {
|
|
53
34
|
|
|
@@ -58,12 +39,12 @@ namespace margelo::nitro::healthkit {
|
|
|
58
39
|
public:
|
|
59
40
|
bool includeVoltages SWIFT_PRIVATE;
|
|
60
41
|
std::optional<std::string> anchor SWIFT_PRIVATE;
|
|
61
|
-
std::optional<
|
|
62
|
-
|
|
42
|
+
std::optional<FilterForSamples> filter SWIFT_PRIVATE;
|
|
43
|
+
double limit SWIFT_PRIVATE;
|
|
63
44
|
|
|
64
45
|
public:
|
|
65
46
|
ECGQueryOptionsWithAnchor() = default;
|
|
66
|
-
explicit ECGQueryOptionsWithAnchor(bool includeVoltages, std::optional<std::string> anchor, std::optional<
|
|
47
|
+
explicit ECGQueryOptionsWithAnchor(bool includeVoltages, std::optional<std::string> anchor, std::optional<FilterForSamples> filter, double limit): includeVoltages(includeVoltages), anchor(anchor), filter(filter), limit(limit) {}
|
|
67
48
|
};
|
|
68
49
|
|
|
69
50
|
} // namespace margelo::nitro::healthkit
|
|
@@ -78,16 +59,16 @@ namespace margelo::nitro {
|
|
|
78
59
|
return margelo::nitro::healthkit::ECGQueryOptionsWithAnchor(
|
|
79
60
|
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, "includeVoltages")),
|
|
80
61
|
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "anchor")),
|
|
81
|
-
JSIConverter<std::optional<
|
|
82
|
-
JSIConverter<
|
|
62
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::fromJSI(runtime, obj.getProperty(runtime, "filter")),
|
|
63
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "limit"))
|
|
83
64
|
);
|
|
84
65
|
}
|
|
85
66
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::healthkit::ECGQueryOptionsWithAnchor& arg) {
|
|
86
67
|
jsi::Object obj(runtime);
|
|
87
68
|
obj.setProperty(runtime, "includeVoltages", JSIConverter<bool>::toJSI(runtime, arg.includeVoltages));
|
|
88
69
|
obj.setProperty(runtime, "anchor", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.anchor));
|
|
89
|
-
obj.setProperty(runtime, "filter", JSIConverter<std::optional<
|
|
90
|
-
obj.setProperty(runtime, "limit", JSIConverter<
|
|
70
|
+
obj.setProperty(runtime, "filter", JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::toJSI(runtime, arg.filter));
|
|
71
|
+
obj.setProperty(runtime, "limit", JSIConverter<double>::toJSI(runtime, arg.limit));
|
|
91
72
|
return obj;
|
|
92
73
|
}
|
|
93
74
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -100,8 +81,8 @@ namespace margelo::nitro {
|
|
|
100
81
|
}
|
|
101
82
|
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, "includeVoltages"))) return false;
|
|
102
83
|
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "anchor"))) return false;
|
|
103
|
-
if (!JSIConverter<std::optional<
|
|
104
|
-
if (!JSIConverter<
|
|
84
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::canConvert(runtime, obj.getProperty(runtime, "filter"))) return false;
|
|
85
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "limit"))) return false;
|
|
105
86
|
return true;
|
|
106
87
|
}
|
|
107
88
|
};
|
|
@@ -23,30 +23,11 @@
|
|
|
23
23
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
24
|
#endif
|
|
25
25
|
|
|
26
|
-
// Forward declaration of `
|
|
27
|
-
namespace margelo::nitro::healthkit { struct
|
|
28
|
-
// Forward declaration of `PredicateWithUUIDs` to properly resolve imports.
|
|
29
|
-
namespace margelo::nitro::healthkit { struct PredicateWithUUIDs; }
|
|
30
|
-
// Forward declaration of `PredicateWithMetadataKey` to properly resolve imports.
|
|
31
|
-
namespace margelo::nitro::healthkit { struct PredicateWithMetadataKey; }
|
|
32
|
-
// Forward declaration of `PredicateWithStartAndEnd` to properly resolve imports.
|
|
33
|
-
namespace margelo::nitro::healthkit { struct PredicateWithStartAndEnd; }
|
|
34
|
-
// Forward declaration of `PredicateFromWorkout` to properly resolve imports.
|
|
35
|
-
namespace margelo::nitro::healthkit { struct PredicateFromWorkout; }
|
|
36
|
-
// Forward declaration of `FilterForSamplesAnd` to properly resolve imports.
|
|
37
|
-
namespace margelo::nitro::healthkit { struct FilterForSamplesAnd; }
|
|
38
|
-
// Forward declaration of `FilterForSamplesOr` to properly resolve imports.
|
|
39
|
-
namespace margelo::nitro::healthkit { struct FilterForSamplesOr; }
|
|
26
|
+
// Forward declaration of `FilterForSamples` to properly resolve imports.
|
|
27
|
+
namespace margelo::nitro::healthkit { struct FilterForSamples; }
|
|
40
28
|
|
|
41
29
|
#include <optional>
|
|
42
|
-
#include "
|
|
43
|
-
#include "PredicateWithUUIDs.hpp"
|
|
44
|
-
#include "PredicateWithMetadataKey.hpp"
|
|
45
|
-
#include "PredicateWithStartAndEnd.hpp"
|
|
46
|
-
#include "PredicateFromWorkout.hpp"
|
|
47
|
-
#include "FilterForSamplesAnd.hpp"
|
|
48
|
-
#include "FilterForSamplesOr.hpp"
|
|
49
|
-
#include <variant>
|
|
30
|
+
#include "FilterForSamples.hpp"
|
|
50
31
|
|
|
51
32
|
namespace margelo::nitro::healthkit {
|
|
52
33
|
|
|
@@ -57,12 +38,12 @@ namespace margelo::nitro::healthkit {
|
|
|
57
38
|
public:
|
|
58
39
|
std::optional<bool> includeVoltages SWIFT_PRIVATE;
|
|
59
40
|
std::optional<bool> ascending SWIFT_PRIVATE;
|
|
60
|
-
std::optional<
|
|
61
|
-
|
|
41
|
+
std::optional<FilterForSamples> filter SWIFT_PRIVATE;
|
|
42
|
+
double limit SWIFT_PRIVATE;
|
|
62
43
|
|
|
63
44
|
public:
|
|
64
45
|
ECGQueryOptionsWithSortOrder() = default;
|
|
65
|
-
explicit ECGQueryOptionsWithSortOrder(std::optional<bool> includeVoltages, std::optional<bool> ascending, std::optional<
|
|
46
|
+
explicit ECGQueryOptionsWithSortOrder(std::optional<bool> includeVoltages, std::optional<bool> ascending, std::optional<FilterForSamples> filter, double limit): includeVoltages(includeVoltages), ascending(ascending), filter(filter), limit(limit) {}
|
|
66
47
|
};
|
|
67
48
|
|
|
68
49
|
} // namespace margelo::nitro::healthkit
|
|
@@ -77,16 +58,16 @@ namespace margelo::nitro {
|
|
|
77
58
|
return margelo::nitro::healthkit::ECGQueryOptionsWithSortOrder(
|
|
78
59
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "includeVoltages")),
|
|
79
60
|
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "ascending")),
|
|
80
|
-
JSIConverter<std::optional<
|
|
81
|
-
JSIConverter<
|
|
61
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::fromJSI(runtime, obj.getProperty(runtime, "filter")),
|
|
62
|
+
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "limit"))
|
|
82
63
|
);
|
|
83
64
|
}
|
|
84
65
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::healthkit::ECGQueryOptionsWithSortOrder& arg) {
|
|
85
66
|
jsi::Object obj(runtime);
|
|
86
67
|
obj.setProperty(runtime, "includeVoltages", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.includeVoltages));
|
|
87
68
|
obj.setProperty(runtime, "ascending", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.ascending));
|
|
88
|
-
obj.setProperty(runtime, "filter", JSIConverter<std::optional<
|
|
89
|
-
obj.setProperty(runtime, "limit", JSIConverter<
|
|
69
|
+
obj.setProperty(runtime, "filter", JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::toJSI(runtime, arg.filter));
|
|
70
|
+
obj.setProperty(runtime, "limit", JSIConverter<double>::toJSI(runtime, arg.limit));
|
|
90
71
|
return obj;
|
|
91
72
|
}
|
|
92
73
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -99,8 +80,8 @@ namespace margelo::nitro {
|
|
|
99
80
|
}
|
|
100
81
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "includeVoltages"))) return false;
|
|
101
82
|
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "ascending"))) return false;
|
|
102
|
-
if (!JSIConverter<std::optional<
|
|
103
|
-
if (!JSIConverter<
|
|
83
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::FilterForSamples>>::canConvert(runtime, obj.getProperty(runtime, "filter"))) return false;
|
|
84
|
+
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "limit"))) return false;
|
|
104
85
|
return true;
|
|
105
86
|
}
|
|
106
87
|
};
|
|
@@ -23,27 +23,42 @@
|
|
|
23
23
|
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
24
|
#endif
|
|
25
25
|
|
|
26
|
-
// Forward declaration of `Device` to properly resolve imports.
|
|
27
|
-
namespace margelo::nitro::healthkit { struct Device; }
|
|
28
26
|
// Forward declaration of `ElectrocardiogramClassification` to properly resolve imports.
|
|
29
27
|
namespace margelo::nitro::healthkit { enum class ElectrocardiogramClassification; }
|
|
30
28
|
// Forward declaration of `ElectrocardiogramSymptomsStatus` to properly resolve imports.
|
|
31
29
|
namespace margelo::nitro::healthkit { enum class ElectrocardiogramSymptomsStatus; }
|
|
32
30
|
// Forward declaration of `ElectrocardiogramVoltage` to properly resolve imports.
|
|
33
31
|
namespace margelo::nitro::healthkit { struct ElectrocardiogramVoltage; }
|
|
32
|
+
// Forward declaration of `SampleType` to properly resolve imports.
|
|
33
|
+
namespace margelo::nitro::healthkit { struct SampleType; }
|
|
34
|
+
// Forward declaration of `WeatherCondition` to properly resolve imports.
|
|
35
|
+
namespace margelo::nitro::healthkit { enum class WeatherCondition; }
|
|
36
|
+
// Forward declaration of `Quantity` to properly resolve imports.
|
|
37
|
+
namespace margelo::nitro::healthkit { struct Quantity; }
|
|
38
|
+
// Forward declaration of `InsulinDeliveryReason` to properly resolve imports.
|
|
39
|
+
namespace margelo::nitro::healthkit { enum class InsulinDeliveryReason; }
|
|
40
|
+
// Forward declaration of `HeartRateMotionContext` to properly resolve imports.
|
|
41
|
+
namespace margelo::nitro::healthkit { enum class HeartRateMotionContext; }
|
|
34
42
|
// Forward declaration of `SourceRevision` to properly resolve imports.
|
|
35
43
|
namespace margelo::nitro::healthkit { struct SourceRevision; }
|
|
44
|
+
// Forward declaration of `Device` to properly resolve imports.
|
|
45
|
+
namespace margelo::nitro::healthkit { struct Device; }
|
|
36
46
|
|
|
37
|
-
#include <string>
|
|
38
|
-
#include "Device.hpp"
|
|
39
|
-
#include <optional>
|
|
40
|
-
#include <chrono>
|
|
41
47
|
#include "ElectrocardiogramClassification.hpp"
|
|
42
48
|
#include "ElectrocardiogramSymptomsStatus.hpp"
|
|
49
|
+
#include <optional>
|
|
43
50
|
#include "ElectrocardiogramVoltage.hpp"
|
|
44
51
|
#include <vector>
|
|
45
|
-
#include
|
|
52
|
+
#include "SampleType.hpp"
|
|
53
|
+
#include <chrono>
|
|
54
|
+
#include "WeatherCondition.hpp"
|
|
55
|
+
#include "Quantity.hpp"
|
|
56
|
+
#include "InsulinDeliveryReason.hpp"
|
|
57
|
+
#include "HeartRateMotionContext.hpp"
|
|
58
|
+
#include <string>
|
|
46
59
|
#include "SourceRevision.hpp"
|
|
60
|
+
#include "Device.hpp"
|
|
61
|
+
#include <NitroModules/AnyMap.hpp>
|
|
47
62
|
|
|
48
63
|
namespace margelo::nitro::healthkit {
|
|
49
64
|
|
|
@@ -52,23 +67,44 @@ namespace margelo::nitro::healthkit {
|
|
|
52
67
|
*/
|
|
53
68
|
struct ElectrocardiogramSample {
|
|
54
69
|
public:
|
|
55
|
-
std::string uuid SWIFT_PRIVATE;
|
|
56
|
-
std::optional<Device> device SWIFT_PRIVATE;
|
|
57
|
-
std::chrono::system_clock::time_point startDate SWIFT_PRIVATE;
|
|
58
|
-
std::chrono::system_clock::time_point endDate SWIFT_PRIVATE;
|
|
59
70
|
ElectrocardiogramClassification classification SWIFT_PRIVATE;
|
|
60
71
|
ElectrocardiogramSymptomsStatus symptomsStatus SWIFT_PRIVATE;
|
|
61
72
|
std::optional<double> averageHeartRateBpm SWIFT_PRIVATE;
|
|
62
73
|
std::optional<double> samplingFrequencyHz SWIFT_PRIVATE;
|
|
63
74
|
double numberOfVoltageMeasurements SWIFT_PRIVATE;
|
|
64
|
-
std::optional<std::string> algorithmVersion SWIFT_PRIVATE;
|
|
65
75
|
std::optional<std::vector<ElectrocardiogramVoltage>> voltages SWIFT_PRIVATE;
|
|
66
|
-
|
|
67
|
-
std::
|
|
76
|
+
SampleType sampleType SWIFT_PRIVATE;
|
|
77
|
+
std::chrono::system_clock::time_point startDate SWIFT_PRIVATE;
|
|
78
|
+
std::chrono::system_clock::time_point endDate SWIFT_PRIVATE;
|
|
79
|
+
bool hasUndeterminedDuration SWIFT_PRIVATE;
|
|
80
|
+
std::optional<WeatherCondition> metadataWeatherCondition SWIFT_PRIVATE;
|
|
81
|
+
std::optional<Quantity> metadataWeatherHumidity SWIFT_PRIVATE;
|
|
82
|
+
std::optional<Quantity> metadataWeatherTemperature SWIFT_PRIVATE;
|
|
83
|
+
std::optional<InsulinDeliveryReason> metadataInsulinDeliveryReason SWIFT_PRIVATE;
|
|
84
|
+
std::optional<HeartRateMotionContext> metadataHeartRateMotionContext SWIFT_PRIVATE;
|
|
85
|
+
std::string uuid SWIFT_PRIVATE;
|
|
86
|
+
SourceRevision sourceRevision SWIFT_PRIVATE;
|
|
87
|
+
std::optional<Device> device SWIFT_PRIVATE;
|
|
88
|
+
std::shared_ptr<AnyMap> metadata SWIFT_PRIVATE;
|
|
89
|
+
std::optional<std::string> metadataExternalUUID SWIFT_PRIVATE;
|
|
90
|
+
std::optional<std::string> metadataTimeZone SWIFT_PRIVATE;
|
|
91
|
+
std::optional<bool> metadataWasUserEntered SWIFT_PRIVATE;
|
|
92
|
+
std::optional<std::string> metadataDeviceSerialNumber SWIFT_PRIVATE;
|
|
93
|
+
std::optional<std::string> metadataUdiDeviceIdentifier SWIFT_PRIVATE;
|
|
94
|
+
std::optional<std::string> metadataUdiProductionIdentifier SWIFT_PRIVATE;
|
|
95
|
+
std::optional<std::string> metadataDigitalSignature SWIFT_PRIVATE;
|
|
96
|
+
std::optional<std::string> metadataDeviceName SWIFT_PRIVATE;
|
|
97
|
+
std::optional<std::string> metadataDeviceManufacturerName SWIFT_PRIVATE;
|
|
98
|
+
std::optional<std::string> metadataSyncIdentifier SWIFT_PRIVATE;
|
|
99
|
+
std::optional<double> metadataSyncVersion SWIFT_PRIVATE;
|
|
100
|
+
std::optional<bool> metadataWasTakenInLab SWIFT_PRIVATE;
|
|
101
|
+
std::optional<double> metadataReferenceRangeLowerLimit SWIFT_PRIVATE;
|
|
102
|
+
std::optional<double> metadataReferenceRangeUpperLimit SWIFT_PRIVATE;
|
|
103
|
+
std::optional<double> metadataAlgorithmVersion SWIFT_PRIVATE;
|
|
68
104
|
|
|
69
105
|
public:
|
|
70
106
|
ElectrocardiogramSample() = default;
|
|
71
|
-
explicit ElectrocardiogramSample(std::
|
|
107
|
+
explicit ElectrocardiogramSample(ElectrocardiogramClassification classification, ElectrocardiogramSymptomsStatus symptomsStatus, std::optional<double> averageHeartRateBpm, std::optional<double> samplingFrequencyHz, double numberOfVoltageMeasurements, std::optional<std::vector<ElectrocardiogramVoltage>> voltages, 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): classification(classification), symptomsStatus(symptomsStatus), averageHeartRateBpm(averageHeartRateBpm), samplingFrequencyHz(samplingFrequencyHz), numberOfVoltageMeasurements(numberOfVoltageMeasurements), voltages(voltages), 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) {}
|
|
72
108
|
};
|
|
73
109
|
|
|
74
110
|
} // namespace margelo::nitro::healthkit
|
|
@@ -81,36 +117,78 @@ namespace margelo::nitro {
|
|
|
81
117
|
static inline margelo::nitro::healthkit::ElectrocardiogramSample fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
82
118
|
jsi::Object obj = arg.asObject(runtime);
|
|
83
119
|
return margelo::nitro::healthkit::ElectrocardiogramSample(
|
|
84
|
-
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "uuid")),
|
|
85
|
-
JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::fromJSI(runtime, obj.getProperty(runtime, "device")),
|
|
86
|
-
JSIConverter<std::chrono::system_clock::time_point>::fromJSI(runtime, obj.getProperty(runtime, "startDate")),
|
|
87
|
-
JSIConverter<std::chrono::system_clock::time_point>::fromJSI(runtime, obj.getProperty(runtime, "endDate")),
|
|
88
120
|
JSIConverter<margelo::nitro::healthkit::ElectrocardiogramClassification>::fromJSI(runtime, obj.getProperty(runtime, "classification")),
|
|
89
121
|
JSIConverter<margelo::nitro::healthkit::ElectrocardiogramSymptomsStatus>::fromJSI(runtime, obj.getProperty(runtime, "symptomsStatus")),
|
|
90
122
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "averageHeartRateBpm")),
|
|
91
123
|
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "samplingFrequencyHz")),
|
|
92
124
|
JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "numberOfVoltageMeasurements")),
|
|
93
|
-
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "algorithmVersion")),
|
|
94
125
|
JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::ElectrocardiogramVoltage>>>::fromJSI(runtime, obj.getProperty(runtime, "voltages")),
|
|
95
|
-
JSIConverter<
|
|
96
|
-
JSIConverter<std::
|
|
126
|
+
JSIConverter<margelo::nitro::healthkit::SampleType>::fromJSI(runtime, obj.getProperty(runtime, "sampleType")),
|
|
127
|
+
JSIConverter<std::chrono::system_clock::time_point>::fromJSI(runtime, obj.getProperty(runtime, "startDate")),
|
|
128
|
+
JSIConverter<std::chrono::system_clock::time_point>::fromJSI(runtime, obj.getProperty(runtime, "endDate")),
|
|
129
|
+
JSIConverter<bool>::fromJSI(runtime, obj.getProperty(runtime, "hasUndeterminedDuration")),
|
|
130
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::WeatherCondition>>::fromJSI(runtime, obj.getProperty(runtime, "metadataWeatherCondition")),
|
|
131
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::fromJSI(runtime, obj.getProperty(runtime, "metadataWeatherHumidity")),
|
|
132
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::fromJSI(runtime, obj.getProperty(runtime, "metadataWeatherTemperature")),
|
|
133
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::InsulinDeliveryReason>>::fromJSI(runtime, obj.getProperty(runtime, "metadataInsulinDeliveryReason")),
|
|
134
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::HeartRateMotionContext>>::fromJSI(runtime, obj.getProperty(runtime, "metadataHeartRateMotionContext")),
|
|
135
|
+
JSIConverter<std::string>::fromJSI(runtime, obj.getProperty(runtime, "uuid")),
|
|
136
|
+
JSIConverter<margelo::nitro::healthkit::SourceRevision>::fromJSI(runtime, obj.getProperty(runtime, "sourceRevision")),
|
|
137
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::fromJSI(runtime, obj.getProperty(runtime, "device")),
|
|
138
|
+
JSIConverter<std::shared_ptr<AnyMap>>::fromJSI(runtime, obj.getProperty(runtime, "metadata")),
|
|
139
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataExternalUUID")),
|
|
140
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataTimeZone")),
|
|
141
|
+
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "metadataWasUserEntered")),
|
|
142
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataDeviceSerialNumber")),
|
|
143
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataUdiDeviceIdentifier")),
|
|
144
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataUdiProductionIdentifier")),
|
|
145
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataDigitalSignature")),
|
|
146
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataDeviceName")),
|
|
147
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataDeviceManufacturerName")),
|
|
148
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "metadataSyncIdentifier")),
|
|
149
|
+
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "metadataSyncVersion")),
|
|
150
|
+
JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "metadataWasTakenInLab")),
|
|
151
|
+
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "metadataReferenceRangeLowerLimit")),
|
|
152
|
+
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "metadataReferenceRangeUpperLimit")),
|
|
153
|
+
JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "metadataAlgorithmVersion"))
|
|
97
154
|
);
|
|
98
155
|
}
|
|
99
156
|
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::healthkit::ElectrocardiogramSample& arg) {
|
|
100
157
|
jsi::Object obj(runtime);
|
|
101
|
-
obj.setProperty(runtime, "uuid", JSIConverter<std::string>::toJSI(runtime, arg.uuid));
|
|
102
|
-
obj.setProperty(runtime, "device", JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::toJSI(runtime, arg.device));
|
|
103
|
-
obj.setProperty(runtime, "startDate", JSIConverter<std::chrono::system_clock::time_point>::toJSI(runtime, arg.startDate));
|
|
104
|
-
obj.setProperty(runtime, "endDate", JSIConverter<std::chrono::system_clock::time_point>::toJSI(runtime, arg.endDate));
|
|
105
158
|
obj.setProperty(runtime, "classification", JSIConverter<margelo::nitro::healthkit::ElectrocardiogramClassification>::toJSI(runtime, arg.classification));
|
|
106
159
|
obj.setProperty(runtime, "symptomsStatus", JSIConverter<margelo::nitro::healthkit::ElectrocardiogramSymptomsStatus>::toJSI(runtime, arg.symptomsStatus));
|
|
107
160
|
obj.setProperty(runtime, "averageHeartRateBpm", JSIConverter<std::optional<double>>::toJSI(runtime, arg.averageHeartRateBpm));
|
|
108
161
|
obj.setProperty(runtime, "samplingFrequencyHz", JSIConverter<std::optional<double>>::toJSI(runtime, arg.samplingFrequencyHz));
|
|
109
162
|
obj.setProperty(runtime, "numberOfVoltageMeasurements", JSIConverter<double>::toJSI(runtime, arg.numberOfVoltageMeasurements));
|
|
110
|
-
obj.setProperty(runtime, "algorithmVersion", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.algorithmVersion));
|
|
111
163
|
obj.setProperty(runtime, "voltages", JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::ElectrocardiogramVoltage>>>::toJSI(runtime, arg.voltages));
|
|
112
|
-
obj.setProperty(runtime, "
|
|
113
|
-
obj.setProperty(runtime, "
|
|
164
|
+
obj.setProperty(runtime, "sampleType", JSIConverter<margelo::nitro::healthkit::SampleType>::toJSI(runtime, arg.sampleType));
|
|
165
|
+
obj.setProperty(runtime, "startDate", JSIConverter<std::chrono::system_clock::time_point>::toJSI(runtime, arg.startDate));
|
|
166
|
+
obj.setProperty(runtime, "endDate", JSIConverter<std::chrono::system_clock::time_point>::toJSI(runtime, arg.endDate));
|
|
167
|
+
obj.setProperty(runtime, "hasUndeterminedDuration", JSIConverter<bool>::toJSI(runtime, arg.hasUndeterminedDuration));
|
|
168
|
+
obj.setProperty(runtime, "metadataWeatherCondition", JSIConverter<std::optional<margelo::nitro::healthkit::WeatherCondition>>::toJSI(runtime, arg.metadataWeatherCondition));
|
|
169
|
+
obj.setProperty(runtime, "metadataWeatherHumidity", JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::toJSI(runtime, arg.metadataWeatherHumidity));
|
|
170
|
+
obj.setProperty(runtime, "metadataWeatherTemperature", JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::toJSI(runtime, arg.metadataWeatherTemperature));
|
|
171
|
+
obj.setProperty(runtime, "metadataInsulinDeliveryReason", JSIConverter<std::optional<margelo::nitro::healthkit::InsulinDeliveryReason>>::toJSI(runtime, arg.metadataInsulinDeliveryReason));
|
|
172
|
+
obj.setProperty(runtime, "metadataHeartRateMotionContext", JSIConverter<std::optional<margelo::nitro::healthkit::HeartRateMotionContext>>::toJSI(runtime, arg.metadataHeartRateMotionContext));
|
|
173
|
+
obj.setProperty(runtime, "uuid", JSIConverter<std::string>::toJSI(runtime, arg.uuid));
|
|
174
|
+
obj.setProperty(runtime, "sourceRevision", JSIConverter<margelo::nitro::healthkit::SourceRevision>::toJSI(runtime, arg.sourceRevision));
|
|
175
|
+
obj.setProperty(runtime, "device", JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::toJSI(runtime, arg.device));
|
|
176
|
+
obj.setProperty(runtime, "metadata", JSIConverter<std::shared_ptr<AnyMap>>::toJSI(runtime, arg.metadata));
|
|
177
|
+
obj.setProperty(runtime, "metadataExternalUUID", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataExternalUUID));
|
|
178
|
+
obj.setProperty(runtime, "metadataTimeZone", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataTimeZone));
|
|
179
|
+
obj.setProperty(runtime, "metadataWasUserEntered", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.metadataWasUserEntered));
|
|
180
|
+
obj.setProperty(runtime, "metadataDeviceSerialNumber", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataDeviceSerialNumber));
|
|
181
|
+
obj.setProperty(runtime, "metadataUdiDeviceIdentifier", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataUdiDeviceIdentifier));
|
|
182
|
+
obj.setProperty(runtime, "metadataUdiProductionIdentifier", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataUdiProductionIdentifier));
|
|
183
|
+
obj.setProperty(runtime, "metadataDigitalSignature", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataDigitalSignature));
|
|
184
|
+
obj.setProperty(runtime, "metadataDeviceName", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataDeviceName));
|
|
185
|
+
obj.setProperty(runtime, "metadataDeviceManufacturerName", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataDeviceManufacturerName));
|
|
186
|
+
obj.setProperty(runtime, "metadataSyncIdentifier", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.metadataSyncIdentifier));
|
|
187
|
+
obj.setProperty(runtime, "metadataSyncVersion", JSIConverter<std::optional<double>>::toJSI(runtime, arg.metadataSyncVersion));
|
|
188
|
+
obj.setProperty(runtime, "metadataWasTakenInLab", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.metadataWasTakenInLab));
|
|
189
|
+
obj.setProperty(runtime, "metadataReferenceRangeLowerLimit", JSIConverter<std::optional<double>>::toJSI(runtime, arg.metadataReferenceRangeLowerLimit));
|
|
190
|
+
obj.setProperty(runtime, "metadataReferenceRangeUpperLimit", JSIConverter<std::optional<double>>::toJSI(runtime, arg.metadataReferenceRangeUpperLimit));
|
|
191
|
+
obj.setProperty(runtime, "metadataAlgorithmVersion", JSIConverter<std::optional<double>>::toJSI(runtime, arg.metadataAlgorithmVersion));
|
|
114
192
|
return obj;
|
|
115
193
|
}
|
|
116
194
|
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
@@ -121,19 +199,40 @@ namespace margelo::nitro {
|
|
|
121
199
|
if (!nitro::isPlainObject(runtime, obj)) {
|
|
122
200
|
return false;
|
|
123
201
|
}
|
|
124
|
-
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "uuid"))) return false;
|
|
125
|
-
if (!JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::canConvert(runtime, obj.getProperty(runtime, "device"))) return false;
|
|
126
|
-
if (!JSIConverter<std::chrono::system_clock::time_point>::canConvert(runtime, obj.getProperty(runtime, "startDate"))) return false;
|
|
127
|
-
if (!JSIConverter<std::chrono::system_clock::time_point>::canConvert(runtime, obj.getProperty(runtime, "endDate"))) return false;
|
|
128
202
|
if (!JSIConverter<margelo::nitro::healthkit::ElectrocardiogramClassification>::canConvert(runtime, obj.getProperty(runtime, "classification"))) return false;
|
|
129
203
|
if (!JSIConverter<margelo::nitro::healthkit::ElectrocardiogramSymptomsStatus>::canConvert(runtime, obj.getProperty(runtime, "symptomsStatus"))) return false;
|
|
130
204
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "averageHeartRateBpm"))) return false;
|
|
131
205
|
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "samplingFrequencyHz"))) return false;
|
|
132
206
|
if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "numberOfVoltageMeasurements"))) return false;
|
|
133
|
-
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "algorithmVersion"))) return false;
|
|
134
207
|
if (!JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::ElectrocardiogramVoltage>>>::canConvert(runtime, obj.getProperty(runtime, "voltages"))) return false;
|
|
135
|
-
if (!JSIConverter<
|
|
136
|
-
if (!JSIConverter<std::
|
|
208
|
+
if (!JSIConverter<margelo::nitro::healthkit::SampleType>::canConvert(runtime, obj.getProperty(runtime, "sampleType"))) return false;
|
|
209
|
+
if (!JSIConverter<std::chrono::system_clock::time_point>::canConvert(runtime, obj.getProperty(runtime, "startDate"))) return false;
|
|
210
|
+
if (!JSIConverter<std::chrono::system_clock::time_point>::canConvert(runtime, obj.getProperty(runtime, "endDate"))) return false;
|
|
211
|
+
if (!JSIConverter<bool>::canConvert(runtime, obj.getProperty(runtime, "hasUndeterminedDuration"))) return false;
|
|
212
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::WeatherCondition>>::canConvert(runtime, obj.getProperty(runtime, "metadataWeatherCondition"))) return false;
|
|
213
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::canConvert(runtime, obj.getProperty(runtime, "metadataWeatherHumidity"))) return false;
|
|
214
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::Quantity>>::canConvert(runtime, obj.getProperty(runtime, "metadataWeatherTemperature"))) return false;
|
|
215
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::InsulinDeliveryReason>>::canConvert(runtime, obj.getProperty(runtime, "metadataInsulinDeliveryReason"))) return false;
|
|
216
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::HeartRateMotionContext>>::canConvert(runtime, obj.getProperty(runtime, "metadataHeartRateMotionContext"))) return false;
|
|
217
|
+
if (!JSIConverter<std::string>::canConvert(runtime, obj.getProperty(runtime, "uuid"))) return false;
|
|
218
|
+
if (!JSIConverter<margelo::nitro::healthkit::SourceRevision>::canConvert(runtime, obj.getProperty(runtime, "sourceRevision"))) return false;
|
|
219
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::Device>>::canConvert(runtime, obj.getProperty(runtime, "device"))) return false;
|
|
220
|
+
if (!JSIConverter<std::shared_ptr<AnyMap>>::canConvert(runtime, obj.getProperty(runtime, "metadata"))) return false;
|
|
221
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataExternalUUID"))) return false;
|
|
222
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataTimeZone"))) return false;
|
|
223
|
+
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "metadataWasUserEntered"))) return false;
|
|
224
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataDeviceSerialNumber"))) return false;
|
|
225
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataUdiDeviceIdentifier"))) return false;
|
|
226
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataUdiProductionIdentifier"))) return false;
|
|
227
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataDigitalSignature"))) return false;
|
|
228
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataDeviceName"))) return false;
|
|
229
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataDeviceManufacturerName"))) return false;
|
|
230
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "metadataSyncIdentifier"))) return false;
|
|
231
|
+
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "metadataSyncVersion"))) return false;
|
|
232
|
+
if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "metadataWasTakenInLab"))) return false;
|
|
233
|
+
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "metadataReferenceRangeLowerLimit"))) return false;
|
|
234
|
+
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "metadataReferenceRangeUpperLimit"))) return false;
|
|
235
|
+
if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "metadataAlgorithmVersion"))) return false;
|
|
137
236
|
return true;
|
|
138
237
|
}
|
|
139
238
|
};
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
///
|
|
2
|
+
/// FilterForSamples.hpp
|
|
3
|
+
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
|
+
/// https://github.com/mrousavy/nitro
|
|
5
|
+
/// Copyright © 2025 Marc Rousavy @ Margelo
|
|
6
|
+
///
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#if __has_include(<NitroModules/JSIConverter.hpp>)
|
|
11
|
+
#include <NitroModules/JSIConverter.hpp>
|
|
12
|
+
#else
|
|
13
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
14
|
+
#endif
|
|
15
|
+
#if __has_include(<NitroModules/NitroDefines.hpp>)
|
|
16
|
+
#include <NitroModules/NitroDefines.hpp>
|
|
17
|
+
#else
|
|
18
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
19
|
+
#endif
|
|
20
|
+
#if __has_include(<NitroModules/JSIHelpers.hpp>)
|
|
21
|
+
#include <NitroModules/JSIHelpers.hpp>
|
|
22
|
+
#else
|
|
23
|
+
#error NitroModules cannot be found! Are you sure you installed NitroModules properly?
|
|
24
|
+
#endif
|
|
25
|
+
|
|
26
|
+
// Forward declaration of `FilterForSamplesBase` to properly resolve imports.
|
|
27
|
+
namespace margelo::nitro::healthkit { struct FilterForSamplesBase; }
|
|
28
|
+
// Forward declaration of `PredicateWithMetadataKey` to properly resolve imports.
|
|
29
|
+
namespace margelo::nitro::healthkit { struct PredicateWithMetadataKey; }
|
|
30
|
+
// Forward declaration of `DateFilter` to properly resolve imports.
|
|
31
|
+
namespace margelo::nitro::healthkit { struct DateFilter; }
|
|
32
|
+
// Forward declaration of `HybridWorkoutProxySpec` to properly resolve imports.
|
|
33
|
+
namespace margelo::nitro::healthkit { class HybridWorkoutProxySpec; }
|
|
34
|
+
// Forward declaration of `HybridSourceProxySpec` to properly resolve imports.
|
|
35
|
+
namespace margelo::nitro::healthkit { class HybridSourceProxySpec; }
|
|
36
|
+
|
|
37
|
+
#include "FilterForSamplesBase.hpp"
|
|
38
|
+
#include <vector>
|
|
39
|
+
#include <optional>
|
|
40
|
+
#include <string>
|
|
41
|
+
#include "PredicateWithMetadataKey.hpp"
|
|
42
|
+
#include "DateFilter.hpp"
|
|
43
|
+
#include <memory>
|
|
44
|
+
#include "HybridWorkoutProxySpec.hpp"
|
|
45
|
+
#include "HybridSourceProxySpec.hpp"
|
|
46
|
+
|
|
47
|
+
namespace margelo::nitro::healthkit {
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* A struct which can be represented as a JavaScript object (FilterForSamples).
|
|
51
|
+
*/
|
|
52
|
+
struct FilterForSamples {
|
|
53
|
+
public:
|
|
54
|
+
std::optional<std::vector<FilterForSamplesBase>> OR SWIFT_PRIVATE;
|
|
55
|
+
std::optional<std::vector<FilterForSamplesBase>> NOT SWIFT_PRIVATE;
|
|
56
|
+
std::optional<std::vector<FilterForSamplesBase>> AND SWIFT_PRIVATE;
|
|
57
|
+
std::optional<std::string> uuid SWIFT_PRIVATE;
|
|
58
|
+
std::optional<std::vector<std::string>> uuids SWIFT_PRIVATE;
|
|
59
|
+
std::optional<PredicateWithMetadataKey> metadata SWIFT_PRIVATE;
|
|
60
|
+
std::optional<DateFilter> date SWIFT_PRIVATE;
|
|
61
|
+
std::optional<std::shared_ptr<HybridWorkoutProxySpec>> workout SWIFT_PRIVATE;
|
|
62
|
+
std::optional<std::vector<std::shared_ptr<HybridSourceProxySpec>>> sources SWIFT_PRIVATE;
|
|
63
|
+
|
|
64
|
+
public:
|
|
65
|
+
FilterForSamples() = default;
|
|
66
|
+
explicit FilterForSamples(std::optional<std::vector<FilterForSamplesBase>> OR, std::optional<std::vector<FilterForSamplesBase>> NOT, std::optional<std::vector<FilterForSamplesBase>> AND, std::optional<std::string> uuid, std::optional<std::vector<std::string>> uuids, std::optional<PredicateWithMetadataKey> metadata, std::optional<DateFilter> date, std::optional<std::shared_ptr<HybridWorkoutProxySpec>> workout, std::optional<std::vector<std::shared_ptr<HybridSourceProxySpec>>> sources): OR(OR), NOT(NOT), AND(AND), uuid(uuid), uuids(uuids), metadata(metadata), date(date), workout(workout), sources(sources) {}
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
} // namespace margelo::nitro::healthkit
|
|
70
|
+
|
|
71
|
+
namespace margelo::nitro {
|
|
72
|
+
|
|
73
|
+
// C++ FilterForSamples <> JS FilterForSamples (object)
|
|
74
|
+
template <>
|
|
75
|
+
struct JSIConverter<margelo::nitro::healthkit::FilterForSamples> final {
|
|
76
|
+
static inline margelo::nitro::healthkit::FilterForSamples fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
|
|
77
|
+
jsi::Object obj = arg.asObject(runtime);
|
|
78
|
+
return margelo::nitro::healthkit::FilterForSamples(
|
|
79
|
+
JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::fromJSI(runtime, obj.getProperty(runtime, "OR")),
|
|
80
|
+
JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::fromJSI(runtime, obj.getProperty(runtime, "NOT")),
|
|
81
|
+
JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::fromJSI(runtime, obj.getProperty(runtime, "AND")),
|
|
82
|
+
JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "uuid")),
|
|
83
|
+
JSIConverter<std::optional<std::vector<std::string>>>::fromJSI(runtime, obj.getProperty(runtime, "uuids")),
|
|
84
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::PredicateWithMetadataKey>>::fromJSI(runtime, obj.getProperty(runtime, "metadata")),
|
|
85
|
+
JSIConverter<std::optional<margelo::nitro::healthkit::DateFilter>>::fromJSI(runtime, obj.getProperty(runtime, "date")),
|
|
86
|
+
JSIConverter<std::optional<std::shared_ptr<margelo::nitro::healthkit::HybridWorkoutProxySpec>>>::fromJSI(runtime, obj.getProperty(runtime, "workout")),
|
|
87
|
+
JSIConverter<std::optional<std::vector<std::shared_ptr<margelo::nitro::healthkit::HybridSourceProxySpec>>>>::fromJSI(runtime, obj.getProperty(runtime, "sources"))
|
|
88
|
+
);
|
|
89
|
+
}
|
|
90
|
+
static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::healthkit::FilterForSamples& arg) {
|
|
91
|
+
jsi::Object obj(runtime);
|
|
92
|
+
obj.setProperty(runtime, "OR", JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::toJSI(runtime, arg.OR));
|
|
93
|
+
obj.setProperty(runtime, "NOT", JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::toJSI(runtime, arg.NOT));
|
|
94
|
+
obj.setProperty(runtime, "AND", JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::toJSI(runtime, arg.AND));
|
|
95
|
+
obj.setProperty(runtime, "uuid", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.uuid));
|
|
96
|
+
obj.setProperty(runtime, "uuids", JSIConverter<std::optional<std::vector<std::string>>>::toJSI(runtime, arg.uuids));
|
|
97
|
+
obj.setProperty(runtime, "metadata", JSIConverter<std::optional<margelo::nitro::healthkit::PredicateWithMetadataKey>>::toJSI(runtime, arg.metadata));
|
|
98
|
+
obj.setProperty(runtime, "date", JSIConverter<std::optional<margelo::nitro::healthkit::DateFilter>>::toJSI(runtime, arg.date));
|
|
99
|
+
obj.setProperty(runtime, "workout", JSIConverter<std::optional<std::shared_ptr<margelo::nitro::healthkit::HybridWorkoutProxySpec>>>::toJSI(runtime, arg.workout));
|
|
100
|
+
obj.setProperty(runtime, "sources", JSIConverter<std::optional<std::vector<std::shared_ptr<margelo::nitro::healthkit::HybridSourceProxySpec>>>>::toJSI(runtime, arg.sources));
|
|
101
|
+
return obj;
|
|
102
|
+
}
|
|
103
|
+
static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
|
|
104
|
+
if (!value.isObject()) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
jsi::Object obj = value.getObject(runtime);
|
|
108
|
+
if (!nitro::isPlainObject(runtime, obj)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
if (!JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::canConvert(runtime, obj.getProperty(runtime, "OR"))) return false;
|
|
112
|
+
if (!JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::canConvert(runtime, obj.getProperty(runtime, "NOT"))) return false;
|
|
113
|
+
if (!JSIConverter<std::optional<std::vector<margelo::nitro::healthkit::FilterForSamplesBase>>>::canConvert(runtime, obj.getProperty(runtime, "AND"))) return false;
|
|
114
|
+
if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "uuid"))) return false;
|
|
115
|
+
if (!JSIConverter<std::optional<std::vector<std::string>>>::canConvert(runtime, obj.getProperty(runtime, "uuids"))) return false;
|
|
116
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::PredicateWithMetadataKey>>::canConvert(runtime, obj.getProperty(runtime, "metadata"))) return false;
|
|
117
|
+
if (!JSIConverter<std::optional<margelo::nitro::healthkit::DateFilter>>::canConvert(runtime, obj.getProperty(runtime, "date"))) return false;
|
|
118
|
+
if (!JSIConverter<std::optional<std::shared_ptr<margelo::nitro::healthkit::HybridWorkoutProxySpec>>>::canConvert(runtime, obj.getProperty(runtime, "workout"))) return false;
|
|
119
|
+
if (!JSIConverter<std::optional<std::vector<std::shared_ptr<margelo::nitro::healthkit::HybridSourceProxySpec>>>>::canConvert(runtime, obj.getProperty(runtime, "sources"))) return false;
|
|
120
|
+
return true;
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
} // namespace margelo::nitro
|