From a6e187d860d4ec5e094d88fcda30f4c3f0f2fa00 Mon Sep 17 00:00:00 2001 From: Lars Refsgaard <1552887+LarsRefsgaard@users.noreply.github.com> Date: Tue, 27 Jun 2023 16:35:28 +0200 Subject: [PATCH] Update to more null-safe hr model --- lib/main.dart | 1 + .../cards/heart_rate_data_model.dart | 18 ++++++++++++------ pubspec.yaml | 2 +- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index a1e088e0..838cd47f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,6 +1,7 @@ library carp_study_app; import 'dart:async'; +import 'dart:isolate'; import 'dart:math'; import 'dart:convert'; import 'dart:ui' as ui; diff --git a/lib/view_models/cards/heart_rate_data_model.dart b/lib/view_models/cards/heart_rate_data_model.dart index e0fd3403..c480211e 100644 --- a/lib/view_models/cards/heart_rate_data_model.dart +++ b/lib/view_models/cards/heart_rate_data_model.dart @@ -105,12 +105,18 @@ class HourlyHeartRate extends DataModel { currentHeartRate = heartRate; if (hourlyHeartRate.containsKey(hour)) { - hourlyHeartRate.update( - hour, - (value) => value - ..min = value.min != null ? min(value.min!, heartRate) : heartRate - ..max = value.max != null ? max(value.max!, heartRate) : heartRate, - ); + hourlyHeartRate.update(hour, (value) { + double? minVal = value.min, maxVal = value.max; + if (minVal != null && maxVal != null) { + return value + ..min = min(minVal, heartRate) + ..max = max(maxVal, heartRate); + } else { + return value + ..min = heartRate + ..max = heartRate; + } + }); } else { hourlyHeartRate[hour] = HeartRateMinMaxPrHour(heartRate, heartRate); } diff --git a/pubspec.yaml b/pubspec.yaml index 0c1b566e..361e72a2 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -4,7 +4,7 @@ publish_to: 'none' version: 1.1.0 environment: - sdk: ">=2.17.0 <4.0.0" + sdk: ">=2.19.0 <4.0.0" flutter: ">=3.0.0" dependencies: