import 'package:comwell_key_app/common/components/shimmer_loader/profile_shimmer_loader.dart';
import 'package:comwell_key_app/presentation/app/bloc/profile_cubit.dart';
import 'package:comwell_key_app/presentation/screens/profile/components/error_page_widget.dart';
import 'package:comwell_key_app/presentation/screens/profile/components/profile_page_widget.dart';
import 'package:concierge/presentation/theme/app_colors.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
class ProfileScreen extends StatelessWidget {
const ProfileScreen({super.key});
@override
Widget build(BuildContext context) {
return BlocBuilder<ProfileCubit, ProfileState>(
builder: (context, state) {
final cubit = context.read<ProfileCubit>();
return MultiBlocListener(
listeners: [
BlocListener<ProfileCubit, ProfileState>(
listenWhen: (prev, curr) => prev.isLoading && !curr.isLoading && curr.error.isError,
listener: (context, state) {
// context.showErrorSnackBar(state.errorMessage);
},
),
],
child: Scaffold(
backgroundColor: AppColors.sandColor[20],
body: BlocBuilder<ProfileCubit, ProfileState>(
builder: (context, state) {
if (state.isLoading) {
return const Padding(
padding: EdgeInsets.symmetric(horizontal: 16.0, vertical: 40.0),
child: ProfileShimmerLoader(),
);
} else if (state.error.isError) {
return const ErrorPageWidget();
} else {
return ProfilePageWidget(cubit: cubit);
}
},
),
),
);
},
);
}
}