import 'package:comwell_key_app/my_booking/cubit/my_booking_cubit.dart';
import 'package:comwell_key_app/my_booking/my_booking_page.dart';
import 'package:comwell_key_app/overview/models/booking.dart';
import 'package:comwell_key_app/routing/app_routes.dart';
import 'package:comwell_key_app/utils/locator.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:go_router/go_router.dart';
final myBookingRoute = ShellRoute(
pageBuilder: (context, state, child) {
return CustomTransitionPage(
transitionsBuilder: (context, animation, secondaryAnimation, child) {
return SlideTransition(
position:
Tween<Offset>(
begin: const Offset(1.0, 0.0),
end: Offset.zero,
).animate(
CurvedAnimation(
parent: animation,
curve: Curves.easeInOut,
),
),
child: child,
);
},
child: BlocProvider(
create: (context) => MyBookingCubit(
locator(),
context.read(),
initialBooking: state.extra as Booking,
),
child: child,
),
);
},
routes: [
GoRoute(
path: AppRoutes.myBooking,
builder: (context, state) {
return MyBookingPage(booking: state.extra as Booking);
},
),
],
);