unused code marked.
parent
0b0f2ba25c
commit
0dade3cedb
@ -1,93 +0,0 @@
|
|||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:test_sa/extensions/int_extensions.dart';
|
|
||||||
import 'package:test_sa/extensions/text_extensions.dart';
|
|
||||||
import 'package:test_sa/extensions/widget_extensions.dart';
|
|
||||||
import 'package:test_sa/new_views/app_style/app_color.dart';
|
|
||||||
import 'package:test_sa/new_views/common_widgets/app_filled_button.dart';
|
|
||||||
import 'package:test_sa/new_views/common_widgets/app_text_form_field.dart';
|
|
||||||
import 'package:test_sa/views/pages/user/profile_page.dart';
|
|
||||||
|
|
||||||
class UpdateProfileInfoBottmsheet extends StatelessWidget {
|
|
||||||
UpdateUserInfoModel userInfoModel;
|
|
||||||
|
|
||||||
UpdateProfileInfoBottmsheet({super.key, required this.userInfoModel});
|
|
||||||
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return Column(
|
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
||||||
children: [
|
|
||||||
SingleChildScrollView(
|
|
||||||
child: Column(
|
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
|
||||||
mainAxisSize: MainAxisSize.min,
|
|
||||||
children: [
|
|
||||||
"Email".bodyText(context).custom(color: AppColor.black20),
|
|
||||||
8.height,
|
|
||||||
AppTextFormField(
|
|
||||||
labelText: "Email",
|
|
||||||
backgroundColor: AppColor.neutral100,
|
|
||||||
initialValue: userInfoModel.email,
|
|
||||||
textAlign: TextAlign.center,
|
|
||||||
labelStyle: AppTextStyles.textFieldLabelStyle,
|
|
||||||
textInputType: TextInputType.emailAddress,
|
|
||||||
showShadow: false,
|
|
||||||
onChange: (value) {
|
|
||||||
userInfoModel.email = value;
|
|
||||||
},
|
|
||||||
style: Theme.of(context).textTheme.titleMedium,
|
|
||||||
),
|
|
||||||
8.height,
|
|
||||||
"Phone Number".bodyText(context).custom(color: AppColor.black20),
|
|
||||||
8.height,
|
|
||||||
AppTextFormField(
|
|
||||||
labelText: "Phone Number",
|
|
||||||
backgroundColor: AppColor.neutral100,
|
|
||||||
initialValue: userInfoModel.phoneNo,
|
|
||||||
textAlign: TextAlign.center,
|
|
||||||
labelStyle: AppTextStyles.textFieldLabelStyle,
|
|
||||||
textInputType: TextInputType.phone,
|
|
||||||
showShadow: false,
|
|
||||||
onChange: (value) {
|
|
||||||
userInfoModel.phoneNo = value;
|
|
||||||
},
|
|
||||||
style: Theme.of(context).textTheme.titleMedium,
|
|
||||||
),
|
|
||||||
8.height,
|
|
||||||
"Extension No".bodyText(context).custom(color: AppColor.black20),
|
|
||||||
8.height,
|
|
||||||
AppTextFormField(
|
|
||||||
labelText: "Extension No",
|
|
||||||
backgroundColor: AppColor.neutral100,
|
|
||||||
initialValue: userInfoModel.extensionNo,
|
|
||||||
textAlign: TextAlign.center,
|
|
||||||
labelStyle: AppTextStyles.textFieldLabelStyle,
|
|
||||||
textInputType: const TextInputType.numberWithOptions(decimal: true),
|
|
||||||
showShadow: false,
|
|
||||||
onChange: (value) {
|
|
||||||
userInfoModel.extensionNo = value;
|
|
||||||
},
|
|
||||||
style: Theme.of(context).textTheme.titleMedium,
|
|
||||||
),
|
|
||||||
],
|
|
||||||
).toShadowContainer(context).paddingAll(16),
|
|
||||||
),
|
|
||||||
Container(
|
|
||||||
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 16.toScreenHeight),
|
|
||||||
color: AppColor.white10,
|
|
||||||
child: AppFilledButton(
|
|
||||||
label: "Update",
|
|
||||||
buttonColor: AppColor.neutral50,
|
|
||||||
onPressed: () async {
|
|
||||||
//TODO call update api here...
|
|
||||||
// showDialog(context: context, barrierDismissible: false, builder: (context) => const AppLazyLoading());
|
|
||||||
|
|
||||||
Navigator.pop(context);
|
|
||||||
},
|
|
||||||
),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,41 +1,41 @@
|
|||||||
import 'package:flutter/material.dart';
|
// import 'package:flutter/material.dart';
|
||||||
import 'package:provider/provider.dart';
|
// import 'package:provider/provider.dart';
|
||||||
import 'package:test_sa/controllers/providers/api/status_drop_down/employee/nurse_provider.dart';
|
// import 'package:test_sa/controllers/providers/api/status_drop_down/employee/nurse_provider.dart';
|
||||||
import 'package:test_sa/models/employee.dart';
|
// import 'package:test_sa/models/employee.dart';
|
||||||
import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
|
// import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
|
||||||
import 'package:test_sa/views/widgets/status/nurse_employee_menu.dart';
|
// import 'package:test_sa/views/widgets/status/nurse_employee_menu.dart';
|
||||||
|
// TODO DELETE
|
||||||
class NurseMenu extends StatelessWidget {
|
// class NurseMenu extends StatelessWidget {
|
||||||
final Function(Employee?) onSelect; // Now accepts nullable Employee
|
// final Function(Employee?) onSelect; // Now accepts nullable Employee
|
||||||
final Employee? initialValue; // Now nullable
|
// final Employee? initialValue; // Now nullable
|
||||||
|
//
|
||||||
final String title; // Now nullable
|
// final String title; // Now nullable
|
||||||
final bool enable;
|
// final bool enable;
|
||||||
final int? siteId; // Now nullable
|
// final int? siteId; // Now nullable
|
||||||
|
//
|
||||||
const NurseMenu({Key? key, required this.onSelect, required this.title, this.initialValue, this.enable = true, this.siteId}) : super(key: key);
|
// const NurseMenu({Key? key, required this.onSelect, required this.title, this.initialValue, this.enable = true, this.siteId}) : super(key: key);
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
Widget build(BuildContext context) {
|
// Widget build(BuildContext context) {
|
||||||
final menuProvider = Provider.of<NurseProvider>(context, listen: false);
|
// final menuProvider = Provider.of<NurseProvider>(context, listen: false);
|
||||||
if (siteId != null) {
|
// if (siteId != null) {
|
||||||
menuProvider.siteId = siteId!;
|
// menuProvider.siteId = siteId!;
|
||||||
}
|
// }
|
||||||
return LoadingManager(
|
// return LoadingManager(
|
||||||
isLoading: menuProvider.isLoading,
|
// isLoading: menuProvider.isLoading,
|
||||||
isFailedLoading: menuProvider.nursesList == null,
|
// isFailedLoading: menuProvider.nursesList == null,
|
||||||
stateCode: menuProvider.stateCode,
|
// stateCode: menuProvider.stateCode,
|
||||||
onRefresh: menuProvider.getData,
|
// onRefresh: menuProvider.getData,
|
||||||
// Directly pass the getData method
|
// // Directly pass the getData method
|
||||||
child: NurseEmployeeMenu(
|
// child: NurseEmployeeMenu(
|
||||||
initialValue: initialValue,
|
// initialValue: initialValue,
|
||||||
title: title,
|
// title: title,
|
||||||
list: menuProvider.nursesList ?? [],
|
// list: menuProvider.nursesList ?? [],
|
||||||
// Provide an empty list if null
|
// // Provide an empty list if null
|
||||||
onSelect: onSelect,
|
// onSelect: onSelect,
|
||||||
// Pass the onSelect function directly
|
// // Pass the onSelect function directly
|
||||||
enable: enable,
|
// enable: enable,
|
||||||
),
|
// ),
|
||||||
);
|
// );
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|||||||
@ -1,132 +1,140 @@
|
|||||||
import 'package:flutter/material.dart';
|
// import 'package:flutter/material.dart';
|
||||||
import 'package:test_sa/extensions/context_extension.dart';
|
// import 'package:test_sa/extensions/context_extension.dart';
|
||||||
import 'package:test_sa/extensions/int_extensions.dart';
|
// import 'package:test_sa/extensions/int_extensions.dart';
|
||||||
import 'package:test_sa/extensions/text_extensions.dart';
|
// import 'package:test_sa/extensions/text_extensions.dart';
|
||||||
import 'package:test_sa/extensions/widget_extensions.dart';
|
// import 'package:test_sa/extensions/widget_extensions.dart';
|
||||||
import 'package:test_sa/models/employee.dart';
|
// import 'package:test_sa/models/employee.dart';
|
||||||
import 'package:test_sa/views/widgets/bottom_sheets/selection_bottom_sheet.dart';
|
// import 'package:test_sa/views/widgets/bottom_sheets/selection_bottom_sheet.dart';
|
||||||
|
//
|
||||||
import '../../../new_views/app_style/app_color.dart';
|
// import '../../../new_views/app_style/app_color.dart';
|
||||||
|
//// TODO DELETE
|
||||||
class NurseEmployeeMenu extends StatefulWidget {
|
// class NurseEmployeeMenu extends StatefulWidget {
|
||||||
final List<Employee>? list;
|
// final List<Employee>? list;
|
||||||
final Employee? initialValue;
|
// final Employee? initialValue;
|
||||||
final Function(Employee?) onSelect;
|
// final Function(Employee?) onSelect;
|
||||||
final String title;
|
// final String title;
|
||||||
final bool? enable;
|
// final bool? enable;
|
||||||
|
//
|
||||||
const NurseEmployeeMenu({Key? key, this.list, required this.title, required this.onSelect, this.initialValue, this.enable = true}) : super(key: key);
|
// const NurseEmployeeMenu({Key? key, this.list, required this.title, required this.onSelect, this.initialValue, this.enable = true}) : super(key: key);
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
_SingleNurseEmployeeMenuState createState() => _SingleNurseEmployeeMenuState();
|
// _SingleNurseEmployeeMenuState createState() => _SingleNurseEmployeeMenuState();
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
class _SingleNurseEmployeeMenuState extends State<NurseEmployeeMenu> {
|
// class _SingleNurseEmployeeMenuState extends State<NurseEmployeeMenu> {
|
||||||
Employee? _selectedStatus;
|
// Employee? _selectedStatus;
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
void setState(VoidCallback fn) {
|
// void setState(VoidCallback fn) {
|
||||||
if (mounted) super.setState(fn);
|
// if (mounted) super.setState(fn);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
void didUpdateWidget(covariant NurseEmployeeMenu oldWidget) {
|
// void didUpdateWidget(covariant NurseEmployeeMenu oldWidget) {
|
||||||
if (widget.initialValue != null) {
|
// if (widget.initialValue != null) {
|
||||||
final result = widget.list?.where((element) {
|
// final result = widget.list?.where((element) {
|
||||||
return element.id == widget.initialValue?.id;
|
// return element.id == widget.initialValue?.id;
|
||||||
}) ??
|
// }) ??
|
||||||
[];
|
// [];
|
||||||
if (result.isNotEmpty) {
|
// if (result.isNotEmpty) {
|
||||||
_selectedStatus = result.first;
|
// _selectedStatus = result.first;
|
||||||
} else {
|
// } else {
|
||||||
_selectedStatus = null;
|
// _selectedStatus = null;
|
||||||
}
|
// }
|
||||||
if ((widget.initialValue?.id ?? "") != (_selectedStatus?.id ?? "")) {
|
// if ((widget.initialValue?.id ?? "") != (_selectedStatus?.id ?? "")) {
|
||||||
widget.onSelect(_selectedStatus!);
|
// widget.onSelect(_selectedStatus!);
|
||||||
}
|
// }
|
||||||
} else {
|
// } else {
|
||||||
_selectedStatus = null;
|
// _selectedStatus = null;
|
||||||
}
|
// }
|
||||||
super.didUpdateWidget(oldWidget);
|
// super.didUpdateWidget(oldWidget);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
void initState() {
|
// void initState() {
|
||||||
if (widget.initialValue != null) {
|
// if (widget.initialValue != null) {
|
||||||
final result = widget.list?.where((element) {
|
// final result = widget.list?.where((element) {
|
||||||
return element.id == widget.initialValue?.id;
|
// return element.id == widget.initialValue?.id;
|
||||||
}) ??
|
// }) ??
|
||||||
[];
|
// [];
|
||||||
if (result.isNotEmpty) _selectedStatus = result.first;
|
// if (result.isNotEmpty) _selectedStatus = result.first;
|
||||||
if (widget.initialValue?.id != _selectedStatus?.id) {
|
// if (widget.initialValue?.id != _selectedStatus?.id) {
|
||||||
widget.onSelect(_selectedStatus);
|
// widget.onSelect(_selectedStatus);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
super.initState();
|
// super.initState();
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@override
|
// @override
|
||||||
Widget build(BuildContext context) {
|
// Widget build(BuildContext context) {
|
||||||
return Container(
|
// return Container(
|
||||||
height: 60.toScreenHeight,
|
// height: 60.toScreenHeight,
|
||||||
width: double.infinity,
|
// width: double.infinity,
|
||||||
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth),
|
// padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth),
|
||||||
decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
color: context.isDark && (widget.enable == false)
|
// color: context.isDark && (widget.enable == false)
|
||||||
? AppColor.neutral50
|
// ? AppColor.neutral50
|
||||||
: (widget.enable == false)
|
// : (widget.enable == false)
|
||||||
? AppColor.neutral40
|
// ? AppColor.neutral40
|
||||||
: AppColor.background(context),
|
// : AppColor.background(context),
|
||||||
borderRadius: BorderRadius.circular(10),
|
// borderRadius: BorderRadius.circular(10),
|
||||||
boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
|
// boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
|
||||||
),
|
// ),
|
||||||
child: Stack(
|
// child: Stack(
|
||||||
alignment: Alignment.centerLeft,
|
// alignment: Alignment.centerLeft,
|
||||||
children: [
|
// children: [
|
||||||
PositionedDirectional(
|
// PositionedDirectional(
|
||||||
end: 0,
|
// end: 0,
|
||||||
child: Icon(
|
// child: Icon(
|
||||||
Icons.keyboard_arrow_down_rounded,
|
// Icons.keyboard_arrow_down_rounded,
|
||||||
color: widget.enable == null ? null : Colors.grey,
|
// color: widget.enable == null ? null : Colors.grey,
|
||||||
)),
|
// )),
|
||||||
Column(
|
// Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
// crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
// mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: [
|
// children: [
|
||||||
Text(
|
// Text(
|
||||||
widget.title,
|
// widget.title,
|
||||||
style: Theme.of(context).textTheme.bodySmall?.copyWith(color: context.isDark ? null : AppColor.neutral20, fontWeight: FontWeight.w500),
|
// style: Theme.of(context).textTheme.bodySmall?.copyWith(color: context.isDark ? null : AppColor.neutral20, fontWeight: FontWeight.w500),
|
||||||
),
|
// ),
|
||||||
Text(
|
// Text(
|
||||||
_selectedStatus?.name?.cleanupWhitespace.capitalizeFirstOfEach ?? context.translation.select,
|
// _selectedStatus?.name?.cleanupWhitespace.capitalizeFirstOfEach ?? context.translation.select,
|
||||||
style: Theme.of(context).textTheme.bodyLarge,
|
// style: Theme.of(context).textTheme.bodyLarge,
|
||||||
),
|
// ),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
],
|
// ],
|
||||||
),
|
// ),
|
||||||
).onPress(((widget.enable ?? false)
|
// ).onPress(((widget.enable ?? false)
|
||||||
? () async {
|
// ? () async {
|
||||||
_selectedStatus = (await showModalBottomSheet(
|
// _selectedStatus = (await showModalBottomSheet(
|
||||||
context: context,
|
// context: context,
|
||||||
isScrollControlled: true,
|
// isScrollControlled: true,
|
||||||
shape: const RoundedRectangleBorder(
|
// shape: const RoundedRectangleBorder(
|
||||||
borderRadius: BorderRadius.vertical(
|
// borderRadius: BorderRadius.vertical(
|
||||||
top: Radius.circular(20),
|
// top: Radius.circular(20),
|
||||||
),
|
// ),
|
||||||
),
|
// ),
|
||||||
clipBehavior: Clip.antiAliasWithSaveLayer,
|
// clipBehavior: Clip.antiAliasWithSaveLayer,
|
||||||
builder: (BuildContext context) => SelectionBottomSheet(
|
// builder: (BuildContext context) => SelectionBottomSheet(
|
||||||
items: widget.list ?? [],
|
// items: widget.list ?? [],
|
||||||
selectedItem: _selectedStatus,
|
// selectedItem: _selectedStatus,
|
||||||
title: widget.title,
|
// title: widget.title,
|
||||||
builderString: (emp) => emp?.name ?? "",
|
// onSelect: (selectedT) {
|
||||||
),
|
// setState(() {
|
||||||
)) as Employee?;
|
// _selectedStatus = selectedT;
|
||||||
if (_selectedStatus != null) setState(() {});
|
// });
|
||||||
widget.onSelect(_selectedStatus!);
|
// widget.onSelect(selectedT);
|
||||||
}
|
// },
|
||||||
: null));
|
// builderString: (emp) => emp?.name ?? "",
|
||||||
}
|
// ),
|
||||||
}
|
// )) as Employee?;
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// // if (_selectedStatus != null) setState(() {});
|
||||||
|
// // widget.onSelect(_selectedStatus!);
|
||||||
|
// }
|
||||||
|
// : null));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|||||||
Loading…
Reference in New Issue