WT 1.1.26+3 bloc migration

This commit is contained in:
Tibor Bossanyi (Freelancer)
2022-04-15 08:47:32 +02:00
parent 60df0bcf2d
commit 225172f950
47 changed files with 1527 additions and 1620 deletions
@@ -1,14 +1,16 @@
import 'dart:async';
import 'package:aitrainer_app/bloc/development_diagram/development_diagram_bloc.dart';
import 'package:aitrainer_app/repository/exercise_repository.dart';
import 'package:aitrainer_app/repository/workout_tree_repository.dart';
import 'package:bloc/bloc.dart';
import 'package:equatable/equatable.dart';
import 'package:meta/meta.dart';
import 'package:flutter/material.dart';
part 'body_development_event.dart';
part 'body_development_state.dart';
enum DiagramDateFilterGroup { l3m, fm_lm, l3t, yearly }
class BodyDevelopmentBloc extends Bloc<BodyDevelopmentEvent, BodyDevelopmentState> {
final WorkoutTreeRepository workoutTreeRepository;
final ExerciseRepository exerciseRepository = ExerciseRepository();
@@ -16,28 +18,50 @@ class BodyDevelopmentBloc extends Bloc<BodyDevelopmentEvent, BodyDevelopmentStat
List<int> radarTicks = [];
List<String> radarFeatures = [];
List<List<int>> radarData = [];
DiagramGroup group = DiagramGroup.sumMass;
DiagramDateFilterGroup filter = DiagramDateFilterGroup.l3t;
@override
BodyDevelopmentBloc({required this.workoutTreeRepository}) : super(BodyDevelopmentInitial());
BodyDevelopmentBloc({required this.workoutTreeRepository}) : super(BodyDevelopmentInitial()) {
on<BodyDevelopmentLoad>(_onLoad);
on<BodyDevelopmentChangeDate>(_onDateFilterChange);
on<BodyDevelopmentChangeGroup>(_onGroupChange);
}
List<MaterialColor> defaultGraphColors = [
Colors.green,
Colors.blue,
Colors.red,
Colors.orange,
];
Future<void> getData() async {
radarTicks = [20, 40, 60, 80, 100];
radarFeatures = ["Mell", "Bicepsz", "Tricepsz", "Hát", "Váll"];
radarFeatures = ["Mell", "Bicepsz", "Tricepsz", "Hát", "Váll", "Core", "Comb", "Vádli"];
radarData = [
[80, 95, 45, 67, 83]
[80, 95, 45, 67, 83, 40, 56, 78],
[82, 90, 56, 77, 82, 40, 50, 87],
[86, 92, 58, 70, 80, 49, 52, 87],
];
}
@override
Stream<BodyDevelopmentState> mapEventToState(BodyDevelopmentEvent event) async* {
try {
if (event is BodyDevelopmentLoad) {
yield BodyDevelopmentLoading();
await getData();
yield BodyDevelopmentReady();
}
} on Exception catch (e) {
yield BodyDevelopmentError(message: e.toString());
}
void _onLoad(BodyDevelopmentLoad event, Emitter<BodyDevelopmentState> emit) {
emit(BodyDevelopmentLoading());
getData();
emit(BodyDevelopmentReady());
}
void _onDateFilterChange(BodyDevelopmentChangeDate event, Emitter<BodyDevelopmentState> emit) {
emit(BodyDevelopmentLoading());
this.filter = event.filter;
getData();
emit(BodyDevelopmentReady());
}
void _onGroupChange(BodyDevelopmentChangeGroup event, Emitter<BodyDevelopmentState> emit) {
emit(BodyDevelopmentLoading());
this.group = event.group;
getData();
emit(BodyDevelopmentReady());
}
}
@@ -1,7 +1,7 @@
part of 'body_development_bloc.dart';
@immutable
abstract class BodyDevelopmentEvent extends Equatable{
abstract class BodyDevelopmentEvent extends Equatable {
const BodyDevelopmentEvent();
@override
List<Object> get props => [];
@@ -10,3 +10,13 @@ abstract class BodyDevelopmentEvent extends Equatable{
class BodyDevelopmentLoad extends BodyDevelopmentEvent {
const BodyDevelopmentLoad();
}
class BodyDevelopmentChangeGroup extends BodyDevelopmentEvent {
final DiagramGroup group;
const BodyDevelopmentChangeGroup({required this.group});
}
class BodyDevelopmentChangeDate extends BodyDevelopmentEvent {
final DiagramDateFilterGroup filter;
const BodyDevelopmentChangeDate({required this.filter});
}