diff --git a/lib/ui/views/schedule_view.dart b/lib/ui/views/schedule_view.dart index 7806129..7e0cec9 100644 --- a/lib/ui/views/schedule_view.dart +++ b/lib/ui/views/schedule_view.dart @@ -92,13 +92,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.monday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - monday: profesional.schedules.monday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(monday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -155,13 +158,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.tuesday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - tuesday: profesional.schedules.tuesday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(tuesday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -218,14 +224,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.wednesday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - wednesday: - profesional.schedules.wednesday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(wednesday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -282,13 +290,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.thursday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - thursday: profesional.schedules.thursday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(thursday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -345,13 +356,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.friday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - friday: profesional.schedules.friday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(friday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -408,13 +422,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.saturday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - saturday: profesional.schedules.saturday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(saturday: updated)); }); }, onRange1Hour1Pick: (pickedTime) { @@ -471,13 +488,16 @@ class _ScheduleViewState extends State { }, onContinuousDayChanged: (value) { setState(() { + final cur = profesional.schedules.sunday; + final updated = !value + ? cur.copyWith( + continuousDay: false, + range1Hour2: cur.range1Hour2 ?? const TimeOfDay(hour: 12, minute: 0), + range2Hour1: cur.range2Hour1 ?? const TimeOfDay(hour: 14, minute: 0), + ) + : cur.copyWith(continuousDay: true); professionalFormProvider.copyProfesionalWith( - schedules: profesional.schedules.copyWith( - sunday: profesional.schedules.sunday.copyWith( - continuousDay: value, - ), - ), - ); + schedules: profesional.schedules.copyWith(sunday: updated)); }); }, onRange1Hour1Pick: (pickedTime) {