wip: null safety

upgrade-2021-project
Stefan Haslinger 2022-02-28 18:52:06 +01:00
parent 54c6bd9817
commit d53ffb4547
5 changed files with 28 additions and 25 deletions

View File

@ -23,7 +23,7 @@ Future<void> load({required encrateia.Athlete athlete}) async {
await prefs.setString('strava_token_type', athlete.stravaTokenType!);
await prefs.setString('strava_refreshToken', athlete.stravaRefreshToken!);
//FIXME: We don't use the Response yet!
// FIXME: We don't use the Response yet!
TokenResponse(
tokenType: athlete.stravaTokenType!,
expiresAt: athlete.stravaExpiresAt!,

View File

@ -84,24 +84,24 @@ class MyLineChart extends LineChart {
if (powerZones != null) {
return NumericExtents(
powerZones
.map((PowerZone powerZone) => powerZone.lowerLimit)
.reduce(min)! *
.map((PowerZone powerZone) => powerZone.lowerLimit ?? 0)
.reduce(min) *
0.9,
powerZones
.map((PowerZone powerZone) => powerZone.upperLimit)
.reduce(max)! *
.map((PowerZone powerZone) => powerZone.upperLimit ?? 0)
.reduce(max) *
1.1);
} else if (heartRateZones != null) {
return NumericExtents(
heartRateZones
.map(
(HeartRateZone heartRateZone) => heartRateZone.lowerLimit)
.reduce(min)! *
.map((HeartRateZone heartRateZone) =>
heartRateZone.lowerLimit ?? 0)
.reduce(min) *
0.9,
heartRateZones
.map(
(HeartRateZone heartRateZone) => heartRateZone.upperLimit)
.reduce(max)! *
.map((HeartRateZone heartRateZone) =>
heartRateZone.upperLimit ?? 0)
.reduce(max) *
1.1);
} else if (minimum != null) {
return NumericExtents(minimum, maximum!);

View File

@ -10,12 +10,13 @@ import '/models/heart_rate_zone_schema.dart';
import '/models/lap.dart';
import '/models/power_zone.dart';
import '/models/power_zone_schema.dart';
import '/utils/pg_text.dart';
import '/utils/enums.dart';
import '/utils/my_bar_chart.dart';
import '/utils/pg_text.dart';
class ActivityBarGraphWidget extends StatefulWidget {
const ActivityBarGraphWidget({Key? key,
const ActivityBarGraphWidget({
Key? key,
required this.activity,
required this.athlete,
}) : super(key: key);
@ -156,7 +157,8 @@ class _ActivityBarGraphWidgetState extends State<ActivityBarGraphWidget> {
MyBarChart(
height: 20,
value: widget.activity!.avgSpeed!,
maximum: _laps.map((Lap lap) => lap.avgSpeed).reduce(max),
maximum:
_laps.map((Lap lap) => lap.avgSpeed ?? 0).reduce(max),
),
PQText(value: widget.activity!.avgSpeed, pq: PQ.paceFromSpeed),
]),
@ -166,7 +168,8 @@ class _ActivityBarGraphWidgetState extends State<ActivityBarGraphWidget> {
MyBarChart(
height: 20,
value: lap.avgSpeed!,
maximum: _laps.map((Lap lap) => lap.avgSpeed).reduce(max),
maximum:
_laps.map((Lap lap) => lap.avgSpeed ?? 0).reduce(max),
),
PQText(value: lap.avgSpeed, pq: PQ.paceFromSpeed),
]),

View File

@ -5,11 +5,11 @@ import 'package:flutter/material.dart';
import '/models/event.dart';
import '/models/interval.dart' as encrateia;
import '/models/record_list.dart';
import '/utils/pg_text.dart';
import '/utils/enums.dart';
import '/utils/icon_utils.dart';
import '/utils/image_utils.dart' as image_utils;
import '/utils/my_button.dart';
import '/utils/pg_text.dart';
import '/widgets/charts/lap_charts/lap_altitude_chart.dart';
class IntervalAltitudeWidget extends StatefulWidget {
@ -56,12 +56,12 @@ class _IntervalAltitudeWidgetState extends State<IntervalAltitudeWidget> {
child: LapAltitudeChart(
records: RecordList<Event>(altitudeRecords),
minimum: altitudeRecords
.map((Event record) => record.altitude)
.reduce(min)!
.map((Event record) => record.altitude ?? 0)
.reduce(min)
.toDouble(),
maximum: altitudeRecords
.map((Event record) => record.altitude)
.reduce(max)!
.map((Event record) => record.altitude ?? 0)
.reduce(max)
.toDouble(),
),
),

View File

@ -5,11 +5,11 @@ import 'package:flutter/material.dart';
import '/models/event.dart';
import '/models/lap.dart';
import '/models/record_list.dart';
import '/utils/pg_text.dart';
import '/utils/enums.dart';
import '/utils/icon_utils.dart';
import '/utils/image_utils.dart' as image_utils;
import '/utils/my_button.dart';
import '/utils/pg_text.dart';
import '/widgets/charts/lap_charts/lap_altitude_chart.dart';
class LapAltitudeWidget extends StatefulWidget {
@ -56,12 +56,12 @@ class _LapAltitudeWidgetState extends State<LapAltitudeWidget> {
child: LapAltitudeChart(
records: RecordList<Event>(altitudeRecords),
minimum: altitudeRecords
.map((Event record) => record.altitude)
.reduce(min)!
.map((Event record) => record.altitude ?? 0)
.reduce(min)
.toDouble(),
maximum: altitudeRecords
.map((Event record) => record.altitude)
.reduce(max)!
.map((Event record) => record.altitude ?? 0)
.reduce(max)
.toDouble(),
),
),