fix: SW-710 Updated max allowed booking dates as today

This commit is contained in:
Hrishikesh Vaipurkar
2024-11-05 14:29:09 +01:00
parent 3a8137bd3c
commit e72d54d1a0
3 changed files with 14 additions and 10 deletions

View File

@@ -34,7 +34,7 @@ export default function DatePickerDesktop({
const currentDate = dt().toDate()
const startOfMonth = dt(currentDate).set("date", 1).toDate()
const yesterday = dt(currentDate).subtract(1, "day").toDate()
const endDate = dt().add(365, "day").toDate()
const endDate = dt().add(395, "day").toDate()
const endOfLastMonth = dt(endDate).endOf("month").toDate()
function handleMonthChange(selected: Date) {

View File

@@ -31,7 +31,7 @@ export default function DatePickerMobile({
const startOfCurrentMonth = dt(currentDate).set("date", 1).toDate()
const yesterday = dt(currentDate).subtract(1, "day").toDate()
const endDate = dt().add(365, "day").toDate()
const endDate = dt().add(395, "day").toDate()
const endOfLastMonth = dt(endDate).endOf("month").toDate()
return (
<DayPicker

View File

@@ -42,8 +42,8 @@ export default function DatePickerForm({ name = "date" }: DatePickerFormProps) {
}
function handleSelectDate(selected: Date) {
// Handle Enter key press on any other input fields trigger day click update
// Daypicker triggers onDayClick for a previous date on enter
/* check if selected date is not before todays date,
which happens when "Enter" key is pressed in any other input field of the form */
if (!dt(selected).isBefore(dt(), "day")) {
if (isSelectingFrom) {
setValue(name, {
@@ -84,24 +84,28 @@ export default function DatePickerForm({ name = "date" }: DatePickerFormProps) {
setIsOpen(false)
}
},
[setIsOpen, setValue, setIsSelectingFrom, selectedDate, name]
[setIsOpen, setValue, setIsSelectingFrom, selectedDate, name, ref]
)
function closeOnBlur(evt: FocusEvent) {
const target = evt.relatedTarget as HTMLElement
closeIfOutside(target)
if (isOpen) {
const target = evt.relatedTarget as HTMLElement
closeIfOutside(target)
}
}
useEffect(() => {
function handleClickOutside(evt: Event) {
const target = evt.target as HTMLElement
closeIfOutside(target)
if (isOpen) {
const target = evt.target as HTMLElement
closeIfOutside(target)
}
}
document.body.addEventListener("click", handleClickOutside)
return () => {
document.body.removeEventListener("click", handleClickOutside)
}
}, [closeIfOutside])
}, [closeIfOutside, isOpen])
const selectedFromDate = dt(selectedDate.fromDate)
.locale(lang)