mapEventToState method
Must be implemented when a class extends BidirectionalBloc.
mapEventToState
is called whenever an event is added and will convert
that event into a new BloC state. It can yield zero, one or several states
for an event.
Implementation
@override
Stream<FastAppSettingsBlocState> mapEventToState(
FastAppSettingsBlocEvent event,
) async* {
final payload = event.payload;
final type = event.type;
_logger.debug('Event received: $type');
if (type == FastAppSettingsBlocEventType.init) {
yield* handleInitEvent(payload);
} else if (type == FastAppSettingsBlocEventType.initialized) {
yield* handleInitializedEvent(payload);
} else if (isInitialized) {
switch (type) {
case FastAppSettingsBlocEventType.languageCodeChanged:
yield* handleLanguageCodeChangedEvent(payload);
case FastAppSettingsBlocEventType.themeChanged:
yield* handleThemeChangedEvent(payload);
case FastAppSettingsBlocEventType.countryCodeChanged:
yield* handleCountryCodeChangedEvent(payload);
case FastAppSettingsBlocEventType.primaryCurrencyCodeChanged:
yield* handlePrimaryCurrencyCodeChangedEvent(payload);
case FastAppSettingsBlocEventType.secondaryCurrencyCodeChanged:
yield* handleSecondaryCurrencyCodeChangedEvent(payload);
case FastAppSettingsBlocEventType.saveEntryChanged:
yield* handleSaveEntryChangedEvent(payload);
case FastAppSettingsBlocEventType.use24HourFormatChanged:
yield* handleuse24HourFormatChangedEvent(payload);
default:
break;
}
} else {
assert(false, 'FastAppSettingsBloc is not initialized yet.');
}
}