|  |  |  | @ -6,6 +6,7 @@ import 'package:flutter/material.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:flutter_staggered_animations/flutter_staggered_animations.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:hmg_patient_app_new/core/enums.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/extensions/string_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:hmg_patient_app_new/extensions/widget_extensions.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:hmg_patient_app_new/features/lab/models/resp_models/patient_lab_orders_response_model.dart'; | 
		
	
	
		
			
				
					|  |  |  | @ -19,7 +20,7 @@ import 'package:hmg_patient_app_new/widgets/chip/custom_chip_widget.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:hmg_patient_app_new/widgets/routes/custom_page_route.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:provider/provider.dart'; | 
		
	
		
			
				|  |  |  |  | import 'package:hmg_patient_app_new/widgets/custom_tab_bar.dart'; | 
		
	
		
			
				|  |  |  |  | import 'collapsing_list_view.dart'; | 
		
	
		
			
				|  |  |  |  | import '../../widgets/appbar/collapsing_list_view.dart'; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | class LabOrdersPage extends StatefulWidget { | 
		
	
		
			
				|  |  |  |  |   const LabOrdersPage({super.key}); | 
		
	
	
		
			
				
					|  |  |  | @ -34,6 +35,7 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |   int? expandedIndex; | 
		
	
		
			
				|  |  |  |  |   String? selectedFilterText = ''; | 
		
	
		
			
				|  |  |  |  |   int activeIndex = 0; | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |   @override | 
		
	
		
			
				|  |  |  |  |   void initState() { | 
		
	
		
			
				|  |  |  |  |     scheduleMicrotask(() { | 
		
	
	
		
			
				
					|  |  |  | @ -86,9 +88,7 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                       ], | 
		
	
		
			
				|  |  |  |  |                       onTabChange: (index) { | 
		
	
		
			
				|  |  |  |  |                         activeIndex = index; | 
		
	
		
			
				|  |  |  |  |                      setState(() { | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |                      }); | 
		
	
		
			
				|  |  |  |  |                         setState(() {}); | 
		
	
		
			
				|  |  |  |  |                       }, | 
		
	
		
			
				|  |  |  |  |                     ), | 
		
	
		
			
				|  |  |  |  |                     SizedBox(height: 16.h), | 
		
	
	
		
			
				
					|  |  |  | @ -104,7 +104,11 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                             shrinkWrap: true, | 
		
	
		
			
				|  |  |  |  |                             physics: NeverScrollableScrollPhysics(), | 
		
	
		
			
				|  |  |  |  |                             padding: EdgeInsets.zero, | 
		
	
		
			
				|  |  |  |  |                             itemCount: model.isLabOrdersLoading ? 5 : model.patientLabOrders.length, | 
		
	
		
			
				|  |  |  |  |                             itemCount: model.isLabOrdersLoading | 
		
	
		
			
				|  |  |  |  |                                 ? 5 | 
		
	
		
			
				|  |  |  |  |                                 : model.patientLabOrders.isNotEmpty | 
		
	
		
			
				|  |  |  |  |                                     ? model.patientLabOrders.length | 
		
	
		
			
				|  |  |  |  |                                     : 1, | 
		
	
		
			
				|  |  |  |  |                             itemBuilder: (context, index) { | 
		
	
		
			
				|  |  |  |  |                               final isExpanded = expandedIndex == index; | 
		
	
		
			
				|  |  |  |  |                               return model.isLabOrdersLoading | 
		
	
	
		
			
				
					|  |  |  | @ -114,7 +118,8 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                                       index: index, | 
		
	
		
			
				|  |  |  |  |                                       isLoading: true, | 
		
	
		
			
				|  |  |  |  |                                     ) | 
		
	
		
			
				|  |  |  |  |                                   : AnimationConfiguration.staggeredList( | 
		
	
		
			
				|  |  |  |  |                                   : model.patientLabOrders.isNotEmpty | 
		
	
		
			
				|  |  |  |  |                                       ? AnimationConfiguration.staggeredList( | 
		
	
		
			
				|  |  |  |  |                                           position: index, | 
		
	
		
			
				|  |  |  |  |                                           duration: const Duration(milliseconds: 500), | 
		
	
		
			
				|  |  |  |  |                                           child: SlideAnimation( | 
		
	
	
		
			
				
					|  |  |  | @ -130,14 +135,15 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                                                     index: index, | 
		
	
		
			
				|  |  |  |  |                                                     isExpanded: isExpanded)), | 
		
	
		
			
				|  |  |  |  |                                           ), | 
		
	
		
			
				|  |  |  |  |                                     ); | 
		
	
		
			
				|  |  |  |  |                                         ) | 
		
	
		
			
				|  |  |  |  |                                       : Utils.getNoDataWidget(context, noDataText: "You don't have any lab results yet.".needTranslation); | 
		
	
		
			
				|  |  |  |  |                             }, | 
		
	
		
			
				|  |  |  |  |                           ) | 
		
	
		
			
				|  |  |  |  |                         : ListView.builder( | 
		
	
		
			
				|  |  |  |  |                             shrinkWrap: true, | 
		
	
		
			
				|  |  |  |  |                             physics: NeverScrollableScrollPhysics(), | 
		
	
		
			
				|  |  |  |  |                             padding: EdgeInsets.zero, | 
		
	
		
			
				|  |  |  |  |                             itemCount: model.isLabOrdersLoading ? 5 :model.uniqueTests.toList().length, | 
		
	
		
			
				|  |  |  |  |                             itemCount: model.isLabOrdersLoading ? 5 : model.uniqueTests.toList().length, | 
		
	
		
			
				|  |  |  |  |                             itemBuilder: (context, index) { | 
		
	
		
			
				|  |  |  |  |                               final isExpanded = expandedIndex == index; | 
		
	
		
			
				|  |  |  |  |                               return model.isLabOrdersLoading | 
		
	
	
		
			
				
					|  |  |  | @ -146,7 +152,8 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                                       labOrder: null, | 
		
	
		
			
				|  |  |  |  |                                       index: index, | 
		
	
		
			
				|  |  |  |  |                                       isLoading: true, | 
		
	
		
			
				|  |  |  |  |                               ) : AnimationConfiguration.staggeredList( | 
		
	
		
			
				|  |  |  |  |                                     ) | 
		
	
		
			
				|  |  |  |  |                                   : AnimationConfiguration.staggeredList( | 
		
	
		
			
				|  |  |  |  |                                       position: index, | 
		
	
		
			
				|  |  |  |  |                                       duration: const Duration(milliseconds: 500), | 
		
	
		
			
				|  |  |  |  |                                       child: SlideAnimation( | 
		
	
	
		
			
				
					|  |  |  | @ -163,7 +170,6 @@ class _LabOrdersPageState extends State<LabOrdersPage> { | 
		
	
		
			
				|  |  |  |  |                                                 isExpanded: isExpanded)), | 
		
	
		
			
				|  |  |  |  |                                       ), | 
		
	
		
			
				|  |  |  |  |                                     ); | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  |                             }, | 
		
	
		
			
				|  |  |  |  |                           ) | 
		
	
		
			
				|  |  |  |  |                   ], | 
		
	
	
		
			
				
					|  |  |  | 
 |