Skip to content

Commit

Permalink
Cached user in repository
Browse files Browse the repository at this point in the history
  • Loading branch information
tomasatisocco committed Jul 22, 2023
1 parent 40a4b60 commit 9d36731
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 16 deletions.
6 changes: 1 addition & 5 deletions lib/app/view/app.dart
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import 'package:coaching/remote_configs.dart';
import 'package:coaching/start_page.dart';
import 'package:coaching/test_results/view/coaching_test_results_page.dart';
import 'package:coaching/test_results/view/congratulations_page.dart';
import 'package:coaching/welcome/models/user_date_model.dart';
import 'package:coaching/welcome/view/welcome_page.dart';
import 'package:data_persistence_repository/data_persistence_repository.dart';
import 'package:firestore_repository/firestore_repository.dart';
Expand Down Expand Up @@ -128,10 +127,7 @@ class _AppViewState extends State<AppView> {
path: '/welcome',
name: WelcomePage.name,
builder: (_, state) {
final userModel = state.extra as UserDataModel?;
return WelcomePage(
userDataModel: userModel!,
);
return const WelcomePage();
},
),
GoRoute(
Expand Down
6 changes: 2 additions & 4 deletions lib/welcome/cubit/welcome_cubit.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,12 @@ class WelcomeCubit extends Cubit<WelcomeState> {
WelcomeCubit({
required FirestoreRepository firestoreRepository,
required DataPersistenceRepository dataPersistenceRepository,
required UserDataModel userDataModel,
}) : _firestoreRepository = firestoreRepository,
_dataPersistenceRepository = dataPersistenceRepository,
_userDataModel = userDataModel,
super(WelcomeInitial());

final FirestoreRepository _firestoreRepository;
final DataPersistenceRepository _dataPersistenceRepository;
final UserDataModel _userDataModel;

Future<void> submitUser({
required String name,
Expand All @@ -28,7 +25,8 @@ class WelcomeCubit extends Cubit<WelcomeState> {
}) async {
emit(WelcomeLoading());
try {
final completedUser = _userDataModel.completeUser(
final user = UserDataModel.fromMap(_firestoreRepository.user!);
final completedUser = user.completeUser(
name: name,
nationality: nationality,
residence: residence,
Expand Down
8 changes: 1 addition & 7 deletions lib/welcome/view/welcome_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import 'package:coaching/app/widgets/coaching_app_bar.dart';
import 'package:coaching/app/widgets/coaching_drawer.dart';
import 'package:coaching/l10n/l10n.dart';
import 'package:coaching/welcome/cubit/welcome_cubit.dart';
import 'package:coaching/welcome/models/user_date_model.dart';
import 'package:coaching/welcome/widgets/welcome_form_widget.dart';
import 'package:data_persistence_repository/data_persistence_repository.dart';
import 'package:firestore_repository/firestore_repository.dart';
Expand All @@ -11,21 +10,16 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:responsive_builder/responsive_builder.dart';

class WelcomePage extends StatelessWidget {
const WelcomePage({
super.key,
required this.userDataModel,
});
const WelcomePage({super.key});

static const name = 'Welcome Page';
final UserDataModel userDataModel;

@override
Widget build(BuildContext context) {
return BlocProvider(
create: (context) => WelcomeCubit(
firestoreRepository: context.read<FirestoreRepository>(),
dataPersistenceRepository: context.read<DataPersistenceRepository>(),
userDataModel: userDataModel,
),
child: ResponsiveBuilder(
builder: (context, sizingInformation) {
Expand Down

0 comments on commit 9d36731

Please sign in to comment.