hospital list added for to open penguin navigation.
parent
cc6a48c52b
commit
aa0447a4e4
@ -0,0 +1,16 @@
|
||||
class HospitalListItem {
|
||||
final String nameEn;
|
||||
final String nameAr;
|
||||
final String id;
|
||||
|
||||
HospitalListItem({
|
||||
required this.nameEn,
|
||||
required this.nameAr,
|
||||
required this.id,
|
||||
});
|
||||
}
|
||||
|
||||
List<HospitalListItem> hospitalList = [
|
||||
HospitalListItem(
|
||||
nameEn: "Sahafa Hospital", nameAr: "مستشفى الصحافة", id: "130")
|
||||
];
|
||||
@ -0,0 +1,35 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/widget_previews.dart';
|
||||
import 'package:hmg_patient_app_new/core/app_export.dart';
|
||||
import 'package:hmg_patient_app_new/extensions/widget_extensions.dart';
|
||||
|
||||
import '../../../theme/colors.dart';
|
||||
|
||||
class HospitalListItemWidget extends StatelessWidget{
|
||||
final String name;
|
||||
final String id;
|
||||
final Function(String , String) onTap;
|
||||
|
||||
const HospitalListItemWidget({super.key, required this.name, required this.id, required this.onTap});
|
||||
|
||||
@Preview(name: "sample Hospital List item preview")
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Container(
|
||||
decoration: RoundedRectangleBorder().toSmoothCornerDecoration(
|
||||
color: AppColors.whiteColor,
|
||||
borderRadius: 20.h,
|
||||
hasShadow: true,
|
||||
|
||||
),
|
||||
child: ListTile(
|
||||
title: Text(name),
|
||||
trailing: Icon(Icons.arrow_forward),
|
||||
onTap:(){
|
||||
onTap(name, id);
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:hmg_patient_app_new/core/app_export.dart';
|
||||
import 'package:hmg_patient_app_new/presentation/home/data/hospital_list_data.dart';
|
||||
import 'package:hmg_patient_app_new/presentation/home/widgets/hospital_list_item.dart';
|
||||
|
||||
class HospitalBottomSheet extends StatelessWidget {
|
||||
final Function(String, String) onHospitalSelected;
|
||||
final List<HospitalListItem> hospitals;
|
||||
|
||||
const HospitalBottomSheet(
|
||||
{super.key, required this.onHospitalSelected, required this.hospitals});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SizedBox(
|
||||
height: 140.h,
|
||||
child: ListView.builder(
|
||||
shrinkWrap: true,
|
||||
itemCount: hospitals.length,
|
||||
itemBuilder: (_, index) {
|
||||
return HospitalListItemWidget(
|
||||
name: hospitals[index].nameEn,
|
||||
id: hospitals[index].id,
|
||||
onTap: onHospitalSelected,
|
||||
);
|
||||
}),
|
||||
);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue