i use AirBnb’s horizon calendar and the issue is when i click on a date out of range i cant make the selectedDateRange nil. In this date picking logic what am i missing?
.days { day in
DayView(dayNumber: day.day, isSelected: isDaySelected(day))
.onTapGesture {
let dayDate = calendar.date(from: day.components)!
if let selectedDateRange = selectedDateRange {
if selectedDateRange.lowerBound == dayDate || selectedDateRange.upperBound == dayDate {
self.selectedDateRange = nil
} else {
if selectedDateRange.contains(dayDate) {
self.selectedDateRange = nil
} else {
self.selectedDateRange = min(selectedDateRange.lowerBound, dayDate)...max(selectedDateRange.upperBound, dayDate)
}
}
} else {
self.selectedDateRange = dayDate...dayDate
}
}
}
i tried all possible if conditions but couldn’t make it work.