import 'package:concierge/presentation/screens/receipt/receipt_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:concierge/presentation/screens/payment/bloc/payment_cubit.dart';
import 'package:concierge/presentation/screens/payment/bloc/payment_state.dart';
import 'package:payment_plugin/presentation/screens/payment_processing_page.dart'
show PaymentProcessingPage;
import 'package:payment_plugin/presentation/app/bloc/payment_cubit.dart' as payment_plugin;
import 'package:payment_plugin/presentation/app/bloc/payment_processing_state.dart'
as payment_plugin;
class PaymentScreen extends StatelessWidget {
const PaymentScreen({super.key});
@override
Widget build(BuildContext context) {
return BlocBuilder<PaymentCubit, PaymentState>(
builder: (context, state) {
final cubit = context.read<PaymentCubit>();
return BlocBuilder<payment_plugin.PaymentCubit, payment_plugin.PaymentProcessingState>(
builder: (context, state) {
return MultiBlocListener(
listeners: [
BlocListener<PaymentCubit, PaymentState>(
listenWhen: (prev, curr) => !prev.paymentSuccess && curr.paymentSuccess,
listener: (context, state) {
ReceiptRoute(orderId: state.orderId).replace(context);
},
),
],
child: Material(
child: PaymentProcessingPage(),
),
);
},
);
},
);
}
}