forked from eatvio/eatvio_app
Passed registration sheet between language_select and credentials
This commit is contained in:
@@ -16,8 +16,8 @@ class CredentialsBloc extends Bloc<CredentialsEvent, CredentialsState> {
|
||||
Emitter<CredentialsState> emit,
|
||||
) async {
|
||||
emit(state.copyWith(
|
||||
valueController: TextEditingController(),
|
||||
valueController1: TextEditingController(),
|
||||
valueController2: TextEditingController()));
|
||||
emailController: TextEditingController(),
|
||||
passwordController: TextEditingController(),
|
||||
passwordConfirmationController: TextEditingController()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,37 +5,38 @@ part of 'credentials_bloc.dart';
|
||||
/// Represents the state of Credentials in the application.
|
||||
class CredentialsState extends Equatable {
|
||||
CredentialsState({
|
||||
this.valueController,
|
||||
this.valueController1,
|
||||
this.valueController2,
|
||||
this.emailController,
|
||||
this.passwordController,
|
||||
this.passwordConfirmationController,
|
||||
this.credentialsModelObj,
|
||||
});
|
||||
|
||||
TextEditingController? valueController;
|
||||
TextEditingController? emailController;
|
||||
|
||||
TextEditingController? valueController1;
|
||||
TextEditingController? passwordController;
|
||||
|
||||
TextEditingController? valueController2;
|
||||
TextEditingController? passwordConfirmationController;
|
||||
|
||||
CredentialsModel? credentialsModelObj;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [
|
||||
valueController,
|
||||
valueController1,
|
||||
valueController2,
|
||||
emailController,
|
||||
passwordController,
|
||||
passwordConfirmationController,
|
||||
credentialsModelObj,
|
||||
];
|
||||
CredentialsState copyWith({
|
||||
TextEditingController? valueController,
|
||||
TextEditingController? valueController1,
|
||||
TextEditingController? valueController2,
|
||||
TextEditingController? emailController,
|
||||
TextEditingController? passwordController,
|
||||
TextEditingController? passwordConfirmationController,
|
||||
CredentialsModel? credentialsModelObj,
|
||||
}) {
|
||||
return CredentialsState(
|
||||
valueController: valueController ?? this.valueController,
|
||||
valueController1: valueController1 ?? this.valueController1,
|
||||
valueController2: valueController2 ?? this.valueController2,
|
||||
emailController: emailController ?? this.emailController,
|
||||
passwordController: passwordController ?? this.passwordController,
|
||||
passwordConfirmationController:
|
||||
passwordConfirmationController ?? this.passwordConfirmationController,
|
||||
credentialsModelObj: credentialsModelObj ?? this.credentialsModelObj,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -59,10 +59,10 @@ class _CredentialsScreenState extends State<CredentialsScreen> {
|
||||
SizedBox(height: 3.v),
|
||||
BlocSelector<CredentialsBloc, CredentialsState,
|
||||
TextEditingController?>(
|
||||
selector: (state) => state.valueController1,
|
||||
builder: (context, valueController1) {
|
||||
selector: (state) => state.passwordController,
|
||||
builder: (context, passwordController) {
|
||||
return CustomTextFormField(
|
||||
controller: valueController1,
|
||||
controller: passwordController,
|
||||
textInputAction: TextInputAction.done);
|
||||
}),
|
||||
SizedBox(height: 19.v),
|
||||
@@ -70,11 +70,11 @@ class _CredentialsScreenState extends State<CredentialsScreen> {
|
||||
SizedBox(height: 5.v),
|
||||
BlocSelector<CredentialsBloc, CredentialsState,
|
||||
TextEditingController?>(
|
||||
selector: (state) => state.valueController2,
|
||||
builder: (context, valueController2) {
|
||||
selector: (state) => state.passwordConfirmationController,
|
||||
builder: (context, passwordConfirmationController) {
|
||||
return CustomTextFormField(
|
||||
obscureText: true,
|
||||
controller: valueController2,
|
||||
controller: passwordConfirmationController,
|
||||
);
|
||||
}),
|
||||
SizedBox(height: 21.v),
|
||||
@@ -83,11 +83,11 @@ class _CredentialsScreenState extends State<CredentialsScreen> {
|
||||
SizedBox(height: 3.v),
|
||||
BlocSelector<CredentialsBloc, CredentialsState,
|
||||
TextEditingController?>(
|
||||
selector: (state) => state.valueController,
|
||||
builder: (context, valueController3) {
|
||||
selector: (state) => state.emailController,
|
||||
builder: (context, emailController3) {
|
||||
return CustomTextFormField(
|
||||
obscureText: true,
|
||||
controller: valueController3,
|
||||
controller: emailController3,
|
||||
textInputAction: TextInputAction.done);
|
||||
}),
|
||||
Spacer(),
|
||||
|
||||
@@ -6,12 +6,17 @@ import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_m
|
||||
/// This class defines the variables used in the [credentials_screen],
|
||||
/// and is typically used to hold data that is passed between different parts of the application.
|
||||
class CredentialsModel extends Equatable {
|
||||
CredentialsModel() {}
|
||||
UserRegistrationSheet userRegistrationSheet;
|
||||
|
||||
CredentialsModel copyWith() {
|
||||
return CredentialsModel();
|
||||
CredentialsModel({required this.userRegistrationSheet});
|
||||
|
||||
CredentialsModel copyWith({UserRegistrationSheet? userRegistrationSheet}) {
|
||||
return CredentialsModel(
|
||||
userRegistrationSheet:
|
||||
userRegistrationSheet ?? this.userRegistrationSheet,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
List<Object?> get props => [];
|
||||
List<Object?> get props => [userRegistrationSheet];
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'models/language_select_model.dart';
|
||||
import 'package:eatvio_app/core/app_export.dart';
|
||||
import 'package:eatvio_app/widgets/custom_drop_down.dart';
|
||||
import 'package:eatvio_app/widgets/custom_outlined_button.dart';
|
||||
import 'package:eatvio_app/presentation/credentials_screen/models/credentials_model.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class LanguageSelectScreen extends StatelessWidget {
|
||||
@@ -92,9 +93,11 @@ class LanguageSelectScreen extends StatelessWidget {
|
||||
/// Navigates to the genderScreen when the action is triggered.
|
||||
navigteToCredentials(BuildContext context) {
|
||||
LanguageSelectModel languageSelectModel = LanguageSelectModel();
|
||||
CredentialsModel credentialsModel = CredentialsModel(
|
||||
userRegistrationSheet: languageSelectModel.userRegistrationSheet);
|
||||
NavigatorService.pushNamed(
|
||||
AppRoutes.credentialsScreen,
|
||||
arguments: languageSelectModel.userRegistrationSheet,
|
||||
arguments: credentialsModel,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,43 +1,15 @@
|
||||
// ignore_for_file: must_be_immutable
|
||||
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:eatvio_app/data/models/userRegistrationModel/user_registration_model.dart';
|
||||
import 'package:eatvio_app/data/models/selectionPopupModel/selection_popup_model.dart';
|
||||
import '../../userRegistrationSheet.dart';
|
||||
|
||||
/// This class defines the variables used in the [language_select_screen],
|
||||
/// and is typically used to hold data that is passed between different parts of the application.
|
||||
class LanguageSelectModel extends Equatable {
|
||||
LanguageSelectModel({this.dropdownItemList = const []}) {}
|
||||
UserRegistrationSheet userRegistrationSheet = UserRegistrationSheet(
|
||||
firstName: '',
|
||||
lastName: '',
|
||||
email: '',
|
||||
password: '',
|
||||
passwordConfirmation: '',
|
||||
termsAccepted: false,
|
||||
birthdate: DateTime.now(),
|
||||
gender: '',
|
||||
country: '',
|
||||
city: '',
|
||||
lang: '',
|
||||
weight: 0,
|
||||
height: 0,
|
||||
chestCircumference: 0,
|
||||
waistCircumference: 0,
|
||||
hipCircumference: 0,
|
||||
bloodPressureUp: 0,
|
||||
bloodPressureDown: 0,
|
||||
hasHypo: false,
|
||||
hasHyper: false,
|
||||
aboutAllergy: '',
|
||||
aboutTakingPils: '',
|
||||
aboutSportHobbies: '',
|
||||
favoriteFoods: '',
|
||||
unfavoriteFoods: '',
|
||||
additionalInfo: '',
|
||||
);
|
||||
List<SelectionPopupModel> dropdownItemList;
|
||||
|
||||
List<SelectionPopupModel> dropdownItemList;
|
||||
LanguageSelectModel copyWith({List<SelectionPopupModel>? dropdownItemList}) {
|
||||
return LanguageSelectModel(
|
||||
dropdownItemList: dropdownItemList ?? this.dropdownItemList,
|
||||
|
||||
Reference in New Issue
Block a user