import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:syncrow_app/features/app_layout/bloc/spaces_cubit.dart'; import 'package:syncrow_app/features/shared_widgets/text_widgets/title_medium.dart'; import 'package:syncrow_app/utils/context_extension.dart'; import 'package:syncrow_app/utils/resource_manager/color_manager.dart'; import 'package:syncrow_app/utils/resource_manager/strings_manager.dart'; class RoomsSlider extends StatelessWidget { const RoomsSlider({ super.key, }); @override Widget build(BuildContext context) { return BlocBuilder( builder: (context, state) { return SizedBox( height: 40, child: PageView( controller: SpacesCubit.get(context).roomsPageController, onPageChanged: (index) { SpacesCubit.get(context).roomSliderPageChanged(index); }, children: [ Padding( padding: const EdgeInsets.symmetric(horizontal: 15), child: InkWell( onTap: () { SpacesCubit.get(context).unselectRoom(); }, child: TitleMedium( text: StringsManager.wizard, style: context.titleMedium.copyWith( fontSize: 25, color: SpacesCubit.get(context).selectedRoom == null ? ColorsManager.textPrimaryColor : ColorsManager.textPrimaryColor.withOpacity(.2), ), ), ), ), if (SpacesCubit.get(context).selectedSpace != null) if (SpacesCubit.get(context).selectedSpace!.rooms != null) ...SpacesCubit.get(context).selectedSpace!.rooms!.map( (room) => Padding( padding: const EdgeInsets.symmetric(horizontal: 15), child: InkWell( onTap: () { SpacesCubit.get(context).roomSliderPageChanged( SpacesCubit.get(context) .selectedSpace! .rooms! .indexOf(room)); }, child: TitleMedium( text: room.name!, style: context.titleMedium.copyWith( fontSize: 25, color: SpacesCubit.get(context).selectedRoom == room ? ColorsManager.textPrimaryColor : ColorsManager.textPrimaryColor .withOpacity(.2), ), ), ), ), ) ], ), ); }, ); } }