diff --git a/lib/pages/access_management/manage_bookable_spaces/presentation/blocs/non_bookable_spaces_bloc/non_bookaable_spaces_bloc.dart b/lib/pages/access_management/manage_bookable_spaces/presentation/blocs/non_bookable_spaces_bloc/non_bookaable_spaces_bloc.dart index 9d8437fe..432b0317 100644 --- a/lib/pages/access_management/manage_bookable_spaces/presentation/blocs/non_bookable_spaces_bloc/non_bookaable_spaces_bloc.dart +++ b/lib/pages/access_management/manage_bookable_spaces/presentation/blocs/non_bookable_spaces_bloc/non_bookaable_spaces_bloc.dart @@ -42,7 +42,9 @@ class NonBookableSpacesBloc nonBookableSpacesList.data.addAll(currState.nonBookableSpaces.data); emit( - NonBookableSpacesLoaded(nonBookableSpaces: nonBookableSpacesList), + NonBookableSpacesLoaded( + nonBookableSpaces: nonBookableSpacesList, + ), ); } catch (e) { emit( diff --git a/lib/pages/access_management/manage_bookable_spaces/presentation/widgets/check_box_space_widget.dart b/lib/pages/access_management/manage_bookable_spaces/presentation/widgets/check_box_space_widget.dart index 937ee35e..b5610166 100644 --- a/lib/pages/access_management/manage_bookable_spaces/presentation/widgets/check_box_space_widget.dart +++ b/lib/pages/access_management/manage_bookable_spaces/presentation/widgets/check_box_space_widget.dart @@ -3,56 +3,45 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/models/bookable_space_model.dart'; import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/presentation/blocs/non_bookable_spaces_bloc/non_bookaable_spaces_bloc.dart'; -class CheckBoxSpaceWidget extends StatefulWidget { +class CheckBoxSpaceWidget extends StatelessWidget { final BookableSpacemodel nonBookableSpace; final List selectedSpaces; + const CheckBoxSpaceWidget({ super.key, required this.nonBookableSpace, required this.selectedSpaces, }); - @override - State createState() => _CheckBoxSpaceWidgetState(); -} - -class _CheckBoxSpaceWidgetState extends State { - bool isChecked = false; - @override - void initState() { - isChecked = widget.selectedSpaces.any( - (element) => element.spaceUuid == widget.nonBookableSpace.spaceUuid, - ); - super.initState(); - } - @override Widget build(BuildContext context) { + final isChecked = selectedSpaces.any( + (element) => element.spaceUuid == nonBookableSpace.spaceUuid, + ); + return Row( children: [ Checkbox( value: isChecked, - onChanged: (value) => setState(() { - isChecked = value ?? false; - if (isChecked) { - context.read().add( - AddToBookableSpaceEvent( - nonBookableSpace: widget.nonBookableSpace, - ), - ); + onChanged: (value) { + final bloc = context.read(); + if (value ?? false) { + bloc.add( + AddToBookableSpaceEvent( + nonBookableSpace: nonBookableSpace, + ), + ); } else { - context.read().add( - RemoveFromBookableSpaceEvent( - bookableSpace: widget.nonBookableSpace, - ), - ); + bloc.add( + RemoveFromBookableSpaceEvent( + bookableSpace: nonBookableSpace, + ), + ); } - }), + }, ), - const SizedBox( - width: 5, - ), - Expanded(child: Text(widget.nonBookableSpace.spaceName)), + const SizedBox(width: 5), + Expanded(child: Text(nonBookableSpace.spaceName)), ], ); }