timer improvements
parent
407c913002
commit
f3f09d1eb2
@ -1,119 +1,119 @@
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:test_sa/controllers/providers/api/service_requests_provider.dart';
|
||||
import 'package:test_sa/extensions/context_extension.dart';
|
||||
import 'package:test_sa/extensions/int_extensions.dart';
|
||||
import 'package:test_sa/models/timer_model.dart';
|
||||
import 'package:test_sa/new_views/app_style/app_color.dart';
|
||||
import 'package:test_sa/views/widgets/date_and_time/date_picker.dart';
|
||||
import 'package:test_sa/views/widgets/date_and_time/time_picker.dart';
|
||||
import 'package:test_sa/views/widgets/timer/app_timer.dart';
|
||||
|
||||
class TimeDurationView extends StatelessWidget {
|
||||
const TimeDurationView({Key ?key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
//TODO user the same form key everywhere....
|
||||
final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
|
||||
return Consumer<ServiceRequestsProvider>(
|
||||
builder: (context, serviceRequestProvider,child) {
|
||||
serviceRequestProvider.currentSelectedRequest?.visitDate = '';
|
||||
return Form(
|
||||
key: _formKey,
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
ADatePicker(
|
||||
label: context.translation.visitDate,
|
||||
hideShadow: true,
|
||||
withIcon: false,
|
||||
hint: context.translation.select,
|
||||
height: 70.toScreenHeight,
|
||||
date: DateTime.tryParse(serviceRequestProvider.currentSelectedRequest?.visitDate ?? ""),
|
||||
formatDateWithTime: true,
|
||||
onDatePicker: (selectedDate) {
|
||||
if (selectedDate != null) {
|
||||
showTimePicker(
|
||||
context: context,
|
||||
initialTime: TimeOfDay.now(),
|
||||
).then((selectedTime) {
|
||||
// Handle the selected date and time here.
|
||||
if (selectedTime != null) {
|
||||
DateTime ? selectedDateTime = DateTime(
|
||||
selectedDate.year,
|
||||
selectedDate.month,
|
||||
selectedDate.day,
|
||||
selectedTime.hour,
|
||||
selectedTime.minute,
|
||||
);
|
||||
serviceRequestProvider.currentSelectedRequest?.visitDate = selectedDateTime?.toIso8601String();
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
),
|
||||
8.height,
|
||||
ATimePicker(
|
||||
label: context.translation.startTime,
|
||||
hint: context.translation.select,
|
||||
withIcon: false,
|
||||
withBorder: false,
|
||||
height: 70.toScreenHeight,
|
||||
time: serviceRequestProvider.selectedTime,
|
||||
onTimePicker: (selectedTime) {
|
||||
if (selectedTime != null) {
|
||||
print('time selected $selectedTime');
|
||||
serviceRequestProvider.selectedTime = selectedTime;
|
||||
}
|
||||
},
|
||||
),
|
||||
8.height,
|
||||
ATimePicker(
|
||||
label: context.translation.endTime,
|
||||
hint: context.translation.select,
|
||||
withIcon: false,
|
||||
withBorder: false,
|
||||
height: 70.toScreenHeight,
|
||||
time: serviceRequestProvider.selectedTime,
|
||||
onTimePicker: (selectedTime) {
|
||||
if (selectedTime != null) {
|
||||
print('time selected $selectedTime');
|
||||
serviceRequestProvider.selectedTime = selectedTime;
|
||||
}
|
||||
},
|
||||
),
|
||||
8.height,
|
||||
SizedBox(
|
||||
width: double.infinity,
|
||||
height: 70.toScreenHeight,
|
||||
child: AppTimer(
|
||||
label: context.translation.workingHours,
|
||||
timer: TimerModel(),
|
||||
onPick: (TimerModel ?value){
|
||||
|
||||
},
|
||||
decoration: BoxDecoration(
|
||||
color: AppColor.background(context),
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
// boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
|
||||
),
|
||||
// enabled: serviceRequestProvider.currentSelectedRequest.date == null,
|
||||
enabled: true,
|
||||
onChange: (timer) async {
|
||||
print('timer i got is ${timer.toString()}');
|
||||
return true;
|
||||
},
|
||||
),
|
||||
|
||||
),
|
||||
16.height,
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
);
|
||||
}
|
||||
}
|
||||
//
|
||||
// import 'package:flutter/material.dart';
|
||||
// import 'package:provider/provider.dart';
|
||||
// import 'package:test_sa/controllers/providers/api/service_requests_provider.dart';
|
||||
// import 'package:test_sa/extensions/context_extension.dart';
|
||||
// import 'package:test_sa/extensions/int_extensions.dart';
|
||||
// import 'package:test_sa/models/timer_model.dart';
|
||||
// import 'package:test_sa/new_views/app_style/app_color.dart';
|
||||
// import 'package:test_sa/views/widgets/date_and_time/date_picker.dart';
|
||||
// import 'package:test_sa/views/widgets/date_and_time/time_picker.dart';
|
||||
// import 'package:test_sa/views/widgets/timer/app_timer.dart';
|
||||
//
|
||||
// class TimeDurationView extends StatelessWidget {
|
||||
// const TimeDurationView({Key ?key}) : super(key: key);
|
||||
//
|
||||
// @override
|
||||
// Widget build(BuildContext context) { todo @delete
|
||||
// //TODO user the same form key everywhere....
|
||||
// final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
|
||||
// return Consumer<ServiceRequestsProvider>(
|
||||
// builder: (context, serviceRequestProvider,child) {
|
||||
// serviceRequestProvider.currentSelectedRequest?.visitDate = '';
|
||||
// return Form(
|
||||
// key: _formKey,
|
||||
// child: SingleChildScrollView(
|
||||
// child: Column(
|
||||
// children: [
|
||||
// ADatePicker(
|
||||
// label: context.translation.visitDate,
|
||||
// hideShadow: true,
|
||||
// withIcon: false,
|
||||
// hint: context.translation.select,
|
||||
// height: 70.toScreenHeight,
|
||||
// date: DateTime.tryParse(serviceRequestProvider.currentSelectedRequest?.visitDate ?? ""),
|
||||
// formatDateWithTime: true,
|
||||
// onDatePicker: (selectedDate) {
|
||||
// if (selectedDate != null) {
|
||||
// showTimePicker(
|
||||
// context: context,
|
||||
// initialTime: TimeOfDay.now(),
|
||||
// ).then((selectedTime) {
|
||||
// // Handle the selected date and time here.
|
||||
// if (selectedTime != null) {
|
||||
// DateTime ? selectedDateTime = DateTime(
|
||||
// selectedDate.year,
|
||||
// selectedDate.month,
|
||||
// selectedDate.day,
|
||||
// selectedTime.hour,
|
||||
// selectedTime.minute,
|
||||
// );
|
||||
// serviceRequestProvider.currentSelectedRequest?.visitDate = selectedDateTime?.toIso8601String();
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// },
|
||||
// ),
|
||||
// 8.height,
|
||||
// ATimePicker(
|
||||
// label: context.translation.startTime,
|
||||
// hint: context.translation.select,
|
||||
// withIcon: false,
|
||||
// withBorder: false,
|
||||
// height: 70.toScreenHeight,
|
||||
// time: serviceRequestProvider.selectedTime,
|
||||
// onTimePicker: (selectedTime) {
|
||||
// if (selectedTime != null) {
|
||||
// print('time selected $selectedTime');
|
||||
// serviceRequestProvider.selectedTime = selectedTime;
|
||||
// }
|
||||
// },
|
||||
// ),
|
||||
// 8.height,
|
||||
// ATimePicker(
|
||||
// label: context.translation.endTime,
|
||||
// hint: context.translation.select,
|
||||
// withIcon: false,
|
||||
// withBorder: false,
|
||||
// height: 70.toScreenHeight,
|
||||
// time: serviceRequestProvider.selectedTime,
|
||||
// onTimePicker: (selectedTime) {
|
||||
// if (selectedTime != null) {
|
||||
// print('time selected $selectedTime');
|
||||
// serviceRequestProvider.selectedTime = selectedTime;
|
||||
// }
|
||||
// },
|
||||
// ),
|
||||
// 8.height,
|
||||
// SizedBox(
|
||||
// width: double.infinity,
|
||||
// height: 70.toScreenHeight,
|
||||
// child: AppTimer(
|
||||
// label: context.translation.workingHours,
|
||||
// timer: TimerModel(),
|
||||
// onPick: (TimerModel ?value){
|
||||
//
|
||||
// },
|
||||
// decoration: BoxDecoration(
|
||||
// color: AppColor.background(context),
|
||||
// borderRadius: BorderRadius.circular(10),
|
||||
// // boxShadow: [BoxShadow(color: Colors.black.withOpacity(0.05), blurRadius: 10)],
|
||||
// ),
|
||||
// // enabled: serviceRequestProvider.currentSelectedRequest.date == null,
|
||||
// enabled: true,
|
||||
// onChange: (timer) async {
|
||||
// print('timer i got is ${timer.toString()}');
|
||||
// return true;
|
||||
// },
|
||||
// ),
|
||||
//
|
||||
// ),
|
||||
// 16.height,
|
||||
// ],
|
||||
// ),
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
// );
|
||||
// }
|
||||
// }
|
||||
|
||||
@ -1,180 +1,180 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:test_sa/common_widgets/stapper_widget/components/base_step.dart';
|
||||
import 'package:test_sa/common_widgets/stapper_widget/components/custom_line.dart';
|
||||
import 'package:test_sa/common_widgets/stapper_widget/custom_stepper.dart';
|
||||
import 'package:test_sa/controllers/providers/api/service_requests_provider.dart';
|
||||
import 'package:test_sa/extensions/context_extension.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/default_app_bar.dart';
|
||||
|
||||
import 'components/asset_conditon_view.dart';
|
||||
import 'components/attachments_view.dart';
|
||||
import 'components/time_duration_view.dart';
|
||||
|
||||
class WorkOrderFormView extends StatefulWidget {
|
||||
const WorkOrderFormView({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
_WorkOrderFormViewState createState() => _WorkOrderFormViewState();
|
||||
}
|
||||
|
||||
class _WorkOrderFormViewState extends State<WorkOrderFormView> {
|
||||
int currentStep = 0;
|
||||
int activeStep = 0;
|
||||
int reachedStep = 0;
|
||||
int upperBound = 2;
|
||||
final formKey = GlobalKey<FormState>();
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.neutral100,
|
||||
appBar: DefaultAppBar(title: context.translation.createWorkOrder),
|
||||
body: Column(
|
||||
children: [
|
||||
16.height,
|
||||
CustomStepper(
|
||||
activeStep: activeStep,
|
||||
lineStyle: LineStyle(
|
||||
activeLineColor: AppColor.primary10,
|
||||
finishedLineColor: AppColor.primary10,
|
||||
defaultLineColor: AppColor.white40,
|
||||
lineThickness: 1,
|
||||
lineLength: 93.toScreenWidth,
|
||||
lineType: LineType.normal,
|
||||
),
|
||||
internalPadding: 2.toScreenWidth,
|
||||
steps: [
|
||||
StepModel(customStep: customStepWidget(index: 0, stepIndex: 1), customTitle: customStepLabel(index: 1, label: context.translation.timeAndDuration)),
|
||||
StepModel(customStep: customStepWidget(index: 1, stepIndex: 2), customTitle: customStepLabel(index: 1, label: context.translation.assetsCondition)),
|
||||
StepModel(customStep: customStepWidget(index: 2, stepIndex: 3), customTitle: customStepLabel(index: 1, label: context.translation.attachmentsAcknowledge)),
|
||||
],
|
||||
onStepReached: (index) => setState(() => activeStep = index),
|
||||
),
|
||||
Expanded(
|
||||
child: Padding(
|
||||
padding: EdgeInsetsDirectional.symmetric(horizontal: 16.toScreenWidth, vertical: 25.toScreenHeight),
|
||||
child: getStepWidget(),
|
||||
)),
|
||||
bottomContainerWidget(),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget bottomContainerWidget() {
|
||||
return Container(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 16.toScreenHeight),
|
||||
color: AppColor.white10,
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
AppFilledButton(
|
||||
label: context.translation.cancel,
|
||||
loading: false,
|
||||
buttonColor: AppColor.white60,
|
||||
textColor: AppColor.black10,
|
||||
onPressed: () async {
|
||||
Navigator.pop(context);
|
||||
// await snapshot.updateRequest(user: userProvider.user, request: serviceRequestProvider.serviceRequest);
|
||||
// Navigator.pop(context, true);
|
||||
},
|
||||
).expanded,
|
||||
12.width,
|
||||
AppFilledButton(
|
||||
label: context.translation.next,
|
||||
buttonColor: AppColor.primary10,
|
||||
loading: false,
|
||||
onPressed: () {
|
||||
_incrementActiveStep();
|
||||
//TODO move to next step..
|
||||
},
|
||||
).expanded,
|
||||
],
|
||||
));
|
||||
}
|
||||
|
||||
void _incrementActiveStep() {
|
||||
setState(() {
|
||||
++activeStep;
|
||||
if (reachedStep < activeStep) {
|
||||
reachedStep = activeStep;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Future<void> _navigateNext(ServiceRequestsProvider serviceRequestsProvider) async {
|
||||
if (activeStep < upperBound) {
|
||||
switch (activeStep) {
|
||||
case 0:
|
||||
// await _navigateNextStep(listingVm);
|
||||
break;
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
_incrementActiveStep();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Your onPressed code
|
||||
|
||||
Widget customStepWidget({required int index, required int stepIndex}) {
|
||||
return CircleAvatar(
|
||||
backgroundColor: activeStep >= index ? AppColor.primary10 : AppColor.background(context),
|
||||
child: activeStep > index
|
||||
? Icon(
|
||||
Icons.done,
|
||||
color: AppColor.white10,
|
||||
size: 26.toScreenHeight,
|
||||
)
|
||||
: activeStep == index
|
||||
? Text(
|
||||
'0$stepIndex',
|
||||
style: const TextStyle(fontWeight: FontWeight.w500, color: AppColor.white10),
|
||||
textAlign: TextAlign.center,
|
||||
)
|
||||
: Text(
|
||||
'0$stepIndex',
|
||||
style: const TextStyle(color: AppColor.black20),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget customStepLabel({required String label, required int index}) {
|
||||
return Column(
|
||||
children: [
|
||||
Text(
|
||||
label,
|
||||
textAlign: TextAlign.center,
|
||||
style: AppTextStyles.bodyText2.copyWith(color: AppColor.black20),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
/// Returns the previous button.
|
||||
|
||||
Widget getStepWidget() {
|
||||
switch (activeStep) {
|
||||
case 0:
|
||||
return const TimeDurationView();
|
||||
case 1:
|
||||
return AssetConditionView();
|
||||
case 2:
|
||||
return AttachmentView();
|
||||
default:
|
||||
return const SizedBox();
|
||||
}
|
||||
}
|
||||
}
|
||||
// import 'package:flutter/material.dart';
|
||||
// import 'package:test_sa/common_widgets/stapper_widget/components/base_step.dart';
|
||||
// import 'package:test_sa/common_widgets/stapper_widget/components/custom_line.dart';
|
||||
// import 'package:test_sa/common_widgets/stapper_widget/custom_stepper.dart';
|
||||
// import 'package:test_sa/controllers/providers/api/service_requests_provider.dart';
|
||||
// import 'package:test_sa/extensions/context_extension.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/default_app_bar.dart';
|
||||
//
|
||||
// import 'components/asset_conditon_view.dart';
|
||||
// import 'components/attachments_view.dart';
|
||||
// import 'components/time_duration_view.dart';
|
||||
//
|
||||
// class WorkOrderFormView extends StatefulWidget {
|
||||
// const WorkOrderFormView({Key? key}) : super(key: key);
|
||||
//
|
||||
// @override
|
||||
// _WorkOrderFormViewState createState() => _WorkOrderFormViewState();
|
||||
// }
|
||||
// todo @delete
|
||||
// class _WorkOrderFormViewState extends State<WorkOrderFormView> {
|
||||
// int currentStep = 0;
|
||||
// int activeStep = 0;
|
||||
// int reachedStep = 0;
|
||||
// int upperBound = 2;
|
||||
// final formKey = GlobalKey<FormState>();
|
||||
//
|
||||
// @override
|
||||
// void initState() {
|
||||
// super.initState();
|
||||
// }
|
||||
//
|
||||
// @override
|
||||
// Widget build(BuildContext context) {
|
||||
// return Scaffold(
|
||||
// backgroundColor: AppColor.neutral100,
|
||||
// appBar: DefaultAppBar(title: context.translation.createWorkOrder),
|
||||
// body: Column(
|
||||
// children: [
|
||||
// 16.height,
|
||||
// CustomStepper(
|
||||
// activeStep: activeStep,
|
||||
// lineStyle: LineStyle(
|
||||
// activeLineColor: AppColor.primary10,
|
||||
// finishedLineColor: AppColor.primary10,
|
||||
// defaultLineColor: AppColor.white40,
|
||||
// lineThickness: 1,
|
||||
// lineLength: 93.toScreenWidth,
|
||||
// lineType: LineType.normal,
|
||||
// ),
|
||||
// internalPadding: 2.toScreenWidth,
|
||||
// steps: [
|
||||
// StepModel(customStep: customStepWidget(index: 0, stepIndex: 1), customTitle: customStepLabel(index: 1, label: context.translation.timeAndDuration)),
|
||||
// StepModel(customStep: customStepWidget(index: 1, stepIndex: 2), customTitle: customStepLabel(index: 1, label: context.translation.assetsCondition)),
|
||||
// StepModel(customStep: customStepWidget(index: 2, stepIndex: 3), customTitle: customStepLabel(index: 1, label: context.translation.attachmentsAcknowledge)),
|
||||
// ],
|
||||
// onStepReached: (index) => setState(() => activeStep = index),
|
||||
// ),
|
||||
// Expanded(
|
||||
// child: Padding(
|
||||
// padding: EdgeInsetsDirectional.symmetric(horizontal: 16.toScreenWidth, vertical: 25.toScreenHeight),
|
||||
// child: getStepWidget(),
|
||||
// )),
|
||||
// bottomContainerWidget(),
|
||||
// ],
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
//
|
||||
// Widget bottomContainerWidget() {
|
||||
// return Container(
|
||||
// padding: EdgeInsets.symmetric(horizontal: 16.toScreenWidth, vertical: 16.toScreenHeight),
|
||||
// color: AppColor.white10,
|
||||
// child: Row(
|
||||
// mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
// children: [
|
||||
// AppFilledButton(
|
||||
// label: context.translation.cancel,
|
||||
// loading: false,
|
||||
// buttonColor: AppColor.white60,
|
||||
// textColor: AppColor.black10,
|
||||
// onPressed: () async {
|
||||
// Navigator.pop(context);
|
||||
// // await snapshot.updateRequest(user: userProvider.user, request: serviceRequestProvider.serviceRequest);
|
||||
// // Navigator.pop(context, true);
|
||||
// },
|
||||
// ).expanded,
|
||||
// 12.width,
|
||||
// AppFilledButton(
|
||||
// label: context.translation.next,
|
||||
// buttonColor: AppColor.primary10,
|
||||
// loading: false,
|
||||
// onPressed: () {
|
||||
// _incrementActiveStep();
|
||||
// //TODO move to next step..
|
||||
// },
|
||||
// ).expanded,
|
||||
// ],
|
||||
// ));
|
||||
// }
|
||||
//
|
||||
// void _incrementActiveStep() {
|
||||
// setState(() {
|
||||
// ++activeStep;
|
||||
// if (reachedStep < activeStep) {
|
||||
// reachedStep = activeStep;
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
//
|
||||
// Future<void> _navigateNext(ServiceRequestsProvider serviceRequestsProvider) async {
|
||||
// if (activeStep < upperBound) {
|
||||
// switch (activeStep) {
|
||||
// case 0:
|
||||
// // await _navigateNextStep(listingVm);
|
||||
// break;
|
||||
// case 1:
|
||||
// break;
|
||||
// case 2:
|
||||
// _incrementActiveStep();
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// // Your onPressed code
|
||||
//
|
||||
// Widget customStepWidget({required int index, required int stepIndex}) {
|
||||
// return CircleAvatar(
|
||||
// backgroundColor: activeStep >= index ? AppColor.primary10 : AppColor.background(context),
|
||||
// child: activeStep > index
|
||||
// ? Icon(
|
||||
// Icons.done,
|
||||
// color: AppColor.white10,
|
||||
// size: 26.toScreenHeight,
|
||||
// )
|
||||
// : activeStep == index
|
||||
// ? Text(
|
||||
// '0$stepIndex',
|
||||
// style: const TextStyle(fontWeight: FontWeight.w500, color: AppColor.white10),
|
||||
// textAlign: TextAlign.center,
|
||||
// )
|
||||
// : Text(
|
||||
// '0$stepIndex',
|
||||
// style: const TextStyle(color: AppColor.black20),
|
||||
// ),
|
||||
// );
|
||||
// }
|
||||
//
|
||||
// Widget customStepLabel({required String label, required int index}) {
|
||||
// return Column(
|
||||
// children: [
|
||||
// Text(
|
||||
// label,
|
||||
// textAlign: TextAlign.center,
|
||||
// style: AppTextStyles.bodyText2.copyWith(color: AppColor.black20),
|
||||
// ),
|
||||
// ],
|
||||
// );
|
||||
// }
|
||||
//
|
||||
// /// Returns the previous button.
|
||||
//
|
||||
// Widget getStepWidget() {
|
||||
// switch (activeStep) {
|
||||
// case 0:
|
||||
// return const TimeDurationView();
|
||||
// case 1:
|
||||
// return AssetConditionView();
|
||||
// case 2:
|
||||
// return AttachmentView();
|
||||
// default:
|
||||
// return const SizedBox();
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
Loading…
Reference in New Issue