settings screen ui
This commit is contained in:
19
lib/shared/components/bloc/toggle/toggle_bloc.dart
Normal file
19
lib/shared/components/bloc/toggle/toggle_bloc.dart
Normal file
@@ -0,0 +1,19 @@
|
||||
// Bloc
|
||||
import 'package:bloc/bloc.dart';
|
||||
|
||||
import 'toggle_event.dart';
|
||||
import 'toggle_state.dart';
|
||||
|
||||
class ToggleBloc extends Bloc<ToggleEvent, ToggleState> {
|
||||
ToggleBloc() : super(ToggleInitial());
|
||||
|
||||
Stream<ToggleState> mapEventToState(ToggleEvent event) async* {
|
||||
if (event is ToggleSwitch) {
|
||||
if (state is ToggleOn) {
|
||||
yield ToggleOff();
|
||||
} else {
|
||||
yield ToggleOn();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
9
lib/shared/components/bloc/toggle/toggle_event.dart
Normal file
9
lib/shared/components/bloc/toggle/toggle_event.dart
Normal file
@@ -0,0 +1,9 @@
|
||||
// Events
|
||||
import 'package:equatable/equatable.dart';
|
||||
|
||||
abstract class ToggleEvent extends Equatable {
|
||||
const ToggleEvent();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
19
lib/shared/components/bloc/toggle/toggle_state.dart
Normal file
19
lib/shared/components/bloc/toggle/toggle_state.dart
Normal file
@@ -0,0 +1,19 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
|
||||
import 'toggle_event.dart';
|
||||
|
||||
class ToggleSwitch extends ToggleEvent {}
|
||||
|
||||
// States
|
||||
abstract class ToggleState extends Equatable {
|
||||
const ToggleState();
|
||||
|
||||
@override
|
||||
List<Object> get props => [];
|
||||
}
|
||||
|
||||
class ToggleInitial extends ToggleState {}
|
||||
|
||||
class ToggleOn extends ToggleState {}
|
||||
|
||||
class ToggleOff extends ToggleState {}
|
||||
Reference in New Issue
Block a user