forked from eatvio/eatvio_app
Some further logic fixes
This commit is contained in:
@@ -2,17 +2,13 @@ import 'package:equatable/equatable.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import '/core/app_export.dart';
|
||||
import 'package:eatvio_app/presentation/language_select_screen/models/language_select_model.dart';
|
||||
import 'dart:convert';
|
||||
part 'language_select_event.dart';
|
||||
part 'language_select_state.dart';
|
||||
|
||||
/// A bloc that manages the state of a LanguageSelect according to the event that is dispatched to it.
|
||||
class LanguageSelectBloc
|
||||
extends Bloc<LanguageSelectEvent, LanguageSelectState> {
|
||||
LanguageSelectModel languageSelectModel;
|
||||
LanguageSelectBloc(LanguageSelectState initialState,
|
||||
{required this.languageSelectModel})
|
||||
: super(initialState) {
|
||||
LanguageSelectBloc(LanguageSelectState initialState) : super(initialState) {
|
||||
on<LanguageSelectInitialEvent>(_onInitialize);
|
||||
on<ChangeDropDownEvent>(_changeDropDown);
|
||||
}
|
||||
@@ -31,8 +27,9 @@ class LanguageSelectBloc
|
||||
Emitter<LanguageSelectState> emit,
|
||||
) {
|
||||
emit(state.copyWith(selectedDropDownValue: event.value));
|
||||
languageSelectModel.userRegistrationSheet.lang = event.value.title;
|
||||
print(json.encode(languageSelectModel.userRegistrationSheet.lang));
|
||||
state.languageSelectModelObj?.userRegistrationSheet.lang =
|
||||
event.value.title;
|
||||
print(state.languageSelectModelObj?.userRegistrationSheet.lang);
|
||||
}
|
||||
|
||||
List<SelectionPopupModel> fillDropdownItemList() {
|
||||
|
||||
@@ -2,7 +2,7 @@ import 'bloc/language_select_bloc.dart';
|
||||
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/widgets/next_step_button.dart';
|
||||
import 'package:eatvio_app/presentation/credentials_screen/models/credentials_model.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
@@ -11,8 +11,7 @@ class LanguageSelectScreen extends StatelessWidget {
|
||||
static Widget builder(BuildContext context) {
|
||||
return BlocProvider<LanguageSelectBloc>(
|
||||
create: (context) => LanguageSelectBloc(
|
||||
LanguageSelectState(languageSelectModelObj: LanguageSelectModel()),
|
||||
languageSelectModel: LanguageSelectModel())
|
||||
LanguageSelectState(languageSelectModelObj: LanguageSelectModel()))
|
||||
..add(LanguageSelectInitialEvent()),
|
||||
child: LanguageSelectScreen());
|
||||
}
|
||||
@@ -59,7 +58,10 @@ class LanguageSelectScreen extends StatelessWidget {
|
||||
BlocSelector<LanguageSelectBloc, LanguageSelectState,
|
||||
LanguageSelectModel?>(
|
||||
selector: (state) => state.languageSelectModelObj,
|
||||
builder: (context, languageSelectModelObj) {
|
||||
builder: (
|
||||
context,
|
||||
languageSelectModelObj,
|
||||
) {
|
||||
return CustomDropDown(
|
||||
icon: Container(
|
||||
margin:
|
||||
@@ -81,23 +83,31 @@ class LanguageSelectScreen extends StatelessWidget {
|
||||
}),
|
||||
Spacer(flex: 63)
|
||||
])),
|
||||
bottomNavigationBar: CustomOutlinedButton(
|
||||
text: "continue".tr.toUpperCase(),
|
||||
margin: EdgeInsets.only(left: 16.h, right: 16.h, bottom: 50.v),
|
||||
buttonStyle: CustomButtonStyles.outlinePrimaryTL15,
|
||||
onPressed: () {
|
||||
navigteToCredentials(context);
|
||||
})));
|
||||
bottomNavigationBar:
|
||||
BlocBuilder<LanguageSelectBloc, LanguageSelectState>(
|
||||
builder: (context, state) {
|
||||
return NextStepButton(
|
||||
text: "continue".tr.toUpperCase(),
|
||||
margin:
|
||||
EdgeInsets.only(left: 16.h, right: 16.h, bottom: 50.v),
|
||||
buttonStyle: CustomButtonStyles.outlinePrimaryTL15,
|
||||
onPressed: () {
|
||||
navigteToCredentials(context, state);
|
||||
});
|
||||
})));
|
||||
}
|
||||
|
||||
/// 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: credentialsModel,
|
||||
);
|
||||
navigteToCredentials(BuildContext context, LanguageSelectState state) {
|
||||
if (state.languageSelectModelObj != null) {
|
||||
CredentialsModel credentialsModel = CredentialsModel(
|
||||
userRegistrationSheet:
|
||||
state.languageSelectModelObj.userRegistrationSheet,
|
||||
);
|
||||
NavigatorService.pushNamed(
|
||||
AppRoutes.credentialsScreen,
|
||||
arguments: credentialsModel,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user