@ -1,17 +1,23 @@
import ' dart:async ' ;
import ' dart:async ' ;
import ' package:easy_localization/easy_localization.dart ' ;
import ' package:flutter/material.dart ' ;
import ' package:flutter/material.dart ' ;
import ' package:flutter_staggered_animations/flutter_staggered_animations.dart ' ;
import ' package:flutter_staggered_animations/flutter_staggered_animations.dart ' ;
import ' package:hmg_patient_app_new/core/app_assets.dart ' ;
import ' package:hmg_patient_app_new/core/utils/size_utils.dart ' ;
import ' package:hmg_patient_app_new/core/utils/size_utils.dart ' ;
import ' package:hmg_patient_app_new/core/utils/utils.dart ' ;
import ' package:hmg_patient_app_new/core/utils/utils.dart ' ;
import ' package:hmg_patient_app_new/extensions/string_extensions.dart ' ;
import ' package:hmg_patient_app_new/extensions/string_extensions.dart ' ;
import ' package:hmg_patient_app_new/extensions/widget_extensions.dart ' ;
import ' package:hmg_patient_app_new/extensions/widget_extensions.dart ' ;
import ' package:hmg_patient_app_new/features/my_appointments/models/resp_models/patient_appointment_history_response_model.dart ' ;
import ' package:hmg_patient_app_new/features/my_appointments/models/resp_models/patient_appointment_history_response_model.dart ' ;
import ' package:hmg_patient_app_new/features/my_appointments/my_appointments_view_model.dart ' ;
import ' package:hmg_patient_app_new/features/my_appointments/my_appointments_view_model.dart ' ;
import ' package:hmg_patient_app_new/generated/locale_keys.g.dart ' ;
import ' package:hmg_patient_app_new/presentation/appointments/widgets/appointment_card.dart ' ;
import ' package:hmg_patient_app_new/presentation/appointments/widgets/appointment_card.dart ' ;
import ' package:hmg_patient_app_new/presentation/book_appointment/book_appointment_page.dart ' ;
import ' package:hmg_patient_app_new/widgets/appbar/collapsing_list_view.dart ' ;
import ' package:hmg_patient_app_new/widgets/appbar/collapsing_list_view.dart ' ;
import ' package:hmg_patient_app_new/theme/colors.dart ' ;
import ' package:hmg_patient_app_new/theme/colors.dart ' ;
import ' package:hmg_patient_app_new/widgets/buttons/custom_button.dart ' ;
import ' package:hmg_patient_app_new/widgets/custom_tab_bar.dart ' ;
import ' package:hmg_patient_app_new/widgets/custom_tab_bar.dart ' ;
import ' package:hmg_patient_app_new/widgets/routes/custom_page_route.dart ' ;
import ' package:hmg_patient_app_new/widgets/shimmer/movies_shimmer_widget.dart ' ;
import ' package:hmg_patient_app_new/widgets/shimmer/movies_shimmer_widget.dart ' ;
import ' package:provider/provider.dart ' ;
import ' package:provider/provider.dart ' ;
@ -116,7 +122,30 @@ class _MyAppointmentsPageState extends State<MyAppointmentsPage> {
) ,
) ,
) ,
) ,
)
)
: Utils . getNoDataWidget ( context , noDataText: " You don't have any appointments yet. " . needTranslation ) ;
: Utils . getNoDataWidget (
context ,
noDataText: " You don't have any appointments yet. " . needTranslation ,
callToActionButton: CustomButton (
text: LocaleKeys . bookAppo . tr ( context: context ) ,
onPressed: ( ) {
Navigator . of ( context ) . push (
CustomPageRoute (
page: BookAppointmentPage ( ) ,
) ,
) ;
} ,
backgroundColor: Color ( 0xffFEE9EA ) ,
borderColor: Color ( 0xffFEE9EA ) ,
textColor: Color ( 0xffED1C2B ) ,
fontSize: 14 ,
fontWeight: FontWeight . w500 ,
borderRadius: 12 ,
padding: EdgeInsets . fromLTRB ( 10 , 0 , 10 , 0 ) ,
height: 40 ,
icon: AppAssets . add_icon ,
iconColor: AppColors . primaryRedColor ,
) . paddingSymmetrical ( 48. h , 0. h ) ,
) ;
} ,
} ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
) ,
) ,
@ -159,7 +188,30 @@ class _MyAppointmentsPageState extends State<MyAppointmentsPage> {
) ,
) ,
) ,
) ,
)
)
: Utils . getNoDataWidget ( context , noDataText: " You don't have any appointments yet. " . needTranslation ) ;
: Utils . getNoDataWidget (
context ,
noDataText: " You don't have any appointments yet. " . needTranslation ,
callToActionButton: CustomButton (
text: LocaleKeys . bookAppo . tr ( context: context ) ,
onPressed: ( ) {
Navigator . of ( context ) . push (
CustomPageRoute (
page: BookAppointmentPage ( ) ,
) ,
) ;
} ,
backgroundColor: Color ( 0xffFEE9EA ) ,
borderColor: Color ( 0xffFEE9EA ) ,
textColor: Color ( 0xffED1C2B ) ,
fontSize: 14 ,
fontWeight: FontWeight . w500 ,
borderRadius: 12 ,
padding: EdgeInsets . fromLTRB ( 10 , 0 , 10 , 0 ) ,
height: 40 ,
icon: AppAssets . add_icon ,
iconColor: AppColors . primaryRedColor ,
) . paddingSymmetrical ( 48. h , 0. h ) ,
) ;
} ,
} ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
) ,
) ,
@ -202,7 +254,30 @@ class _MyAppointmentsPageState extends State<MyAppointmentsPage> {
) ,
) ,
) ,
) ,
)
)
: Utils . getNoDataWidget ( context , noDataText: " You don't have any appointments yet. " . needTranslation ) ;
: Utils . getNoDataWidget (
context ,
noDataText: " You don't have any appointments yet. " . needTranslation ,
callToActionButton: CustomButton (
text: LocaleKeys . bookAppo . tr ( context: context ) ,
onPressed: ( ) {
Navigator . of ( context ) . push (
CustomPageRoute (
page: BookAppointmentPage ( ) ,
) ,
) ;
} ,
backgroundColor: Color ( 0xffFEE9EA ) ,
borderColor: Color ( 0xffFEE9EA ) ,
textColor: Color ( 0xffED1C2B ) ,
fontSize: 14 ,
fontWeight: FontWeight . w500 ,
borderRadius: 12 ,
padding: EdgeInsets . fromLTRB ( 10 , 0 , 10 , 0 ) ,
height: 40 ,
icon: AppAssets . add_icon ,
iconColor: AppColors . primaryRedColor ,
) . paddingSymmetrical ( 48. h , 0. h ) ,
) ;
} ,
} ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
separatorBuilder: ( BuildContext cxt , int index ) = > SizedBox ( height: 16. h ) ,
) ,
) ,
@ -213,3 +288,4 @@ class _MyAppointmentsPageState extends State<MyAppointmentsPage> {
}
}
}
}
}
}