Merge branch 'release/2026.01.08' into feature/CASH-2036

This commit is contained in:
Chris 2025-12-16 15:17:18 -05:00 committed by GitHub
commit bf0fd2f5c1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -24,6 +24,7 @@
<appointmentTypeQuestion <appointmentTypeQuestion
v-model="appointmentTypeFromAppointmentTypeQuestion" v-model="appointmentTypeFromAppointmentTypeQuestion"
v-show="isAppointmentTypeDisplayed" v-show="isAppointmentTypeDisplayed"
@handle-appointment-type-change="handleAppointmentTypeChange"
:isServiceableMobile="isServiceableMobile" :isServiceableMobile="isServiceableMobile"
:isServiceableInshop="isServiceableInshop" :isServiceableInshop="isServiceableInshop"
:isDisplayed="isAppointmentTypeDisplayed" :isDisplayed="isAppointmentTypeDisplayed"
@ -438,8 +439,8 @@ export default {
pricingByDayBasePrice: null, pricingByDayBasePrice: null,
pricingByDayUpcharge: null, pricingByDayUpcharge: null,
showPricingByDay: null, showPricingByDay: null,
selectableDatesInshop: [], selectableDatesInshop: null,
selectableDatesMobile: [], selectableDatesMobile: null,
preSelectedDate: null, preSelectedDate: null,
streetAddress: this.getServiceAddressFromStore(), streetAddress: this.getServiceAddressFromStore(),
apartmentNumberOrBusinessName: this.getServiceAddress2FromStore(), apartmentNumberOrBusinessName: this.getServiceAddress2FromStore(),
@ -602,6 +603,7 @@ export default {
); );
vm.initializeDatePicker().then(() => { vm.initializeDatePicker().then(() => {
vm.showMobileFirstModal(); vm.showMobileFirstModal();
vm.setSelectedDateToFirstAvailable();
}); });
}); });
}, },
@ -827,13 +829,13 @@ export default {
}, },
estimatedServiceMinutesMinimum() { estimatedServiceMinutesMinimum() {
return this.isMobileSelected return this.isMobileSelected
? this.selectableDatesMobile.estimatedServiceMinutesMinimum ? this.selectableDatesMobile?.estimatedServiceMinutesMinimum
: this.selectableDatesInshop.estimatedServiceMinutesMinimum; : this.selectableDatesInshop?.estimatedServiceMinutesMinimum;
}, },
estimatedServiceMinutesMaximum() { estimatedServiceMinutesMaximum() {
return this.isMobileSelected return this.isMobileSelected
? this.selectableDatesMobile.estimatedServiceMinutesMaximum ? this.selectableDatesMobile?.estimatedServiceMinutesMaximum
: this.selectableDatesInshop.estimatedServiceMinutesMaximum; : this.selectableDatesInshop?.estimatedServiceMinutesMaximum;
}, },
timeSlotsForSelectedDate() { timeSlotsForSelectedDate() {
if (!this.selectedDate) return null; if (!this.selectedDate) return null;
@ -841,11 +843,11 @@ export default {
if (this.isMobileSelected) { if (this.isMobileSelected) {
const selectedDateString = selectedDate.replace("-mobile", ""); const selectedDateString = selectedDate.replace("-mobile", "");
return this.selectableDatesMobile.days?.find( return this.selectableDatesMobile?.days?.find(
(selectableDate) => selectableDate.date === selectedDateString (selectableDate) => selectableDate.date === selectedDateString
); );
} else { } else {
return this.selectableDatesInshop.days?.find( return this.selectableDatesInshop?.days?.find(
(selectableDate) => selectableDate.date === this.selectedDate (selectableDate) => selectableDate.date === this.selectedDate
); );
} }
@ -863,7 +865,7 @@ export default {
); );
}, },
isMobileFirstModalOpen() { isMobileFirstModalOpen() {
return this.selectableDatesMobile.days return this.selectableDatesMobile?.days
? this.$refs.mobileFirstModal?.getIsModalOpen() ? this.$refs.mobileFirstModal?.getIsModalOpen()
: false; : false;
}, },
@ -1015,7 +1017,9 @@ export default {
return store.getters.order.serviceLocation.isVehicleProtected; return store.getters.order.serviceLocation.isVehicleProtected;
}, },
getAppointmentTypeFromStore() { getAppointmentTypeFromStore() {
return store.getters.order.serviceLocation.appointmentType; const appointmentTypeFromStore = store.getters.order.serviceLocation.appointmentType;
this.handleAppointmentTypeChange(appointmentTypeFromStore);
return appointmentTypeFromStore;
}, },
getSelectedProviderFromStore() { getSelectedProviderFromStore() {
return store.getters.order.serviceLocation.provider; return store.getters.order.serviceLocation.provider;
@ -1036,6 +1040,7 @@ export default {
this.appointmentType = null; this.appointmentType = null;
this.selectedProvider = null; this.selectedProvider = null;
this.appointmentTypeFromAppointmentTypeQuestion = null; this.appointmentTypeFromAppointmentTypeQuestion = null;
this.handleAppointmentTypeChange();
this.preSelectedDate = null; this.preSelectedDate = null;
}, },
setServiceabilityDetails(serviceabilityDetails) { setServiceabilityDetails(serviceabilityDetails) {
@ -1288,7 +1293,7 @@ export default {
} }
} }
*/ */
this.$refs.navbar.updateButtonText(navbarButtonText); this.$refs.navbar?.updateButtonText(navbarButtonText);
}, },
convertSelectedDateToShortMonthAndDay(selectedDate) { convertSelectedDateToShortMonthAndDay(selectedDate) {
// This conversion ensures we don't get get GMT induced date changes // This conversion ensures we don't get get GMT induced date changes
@ -1463,9 +1468,12 @@ export default {
this.showLoadingModal(); this.showLoadingModal();
}, },
setDisplayWaitList() { setDisplayWaitList() {
const dateString = this.isMobileSelected let dateString;
? this.selectableDatesMobile?.days[0]?.date if (this.isMobileSelected && this.selectableDatesMobile?.days?.length) {
: this.selectableDatesInshop?.days[0]?.date; dateString = this.selectableDatesMobile.days[0].date;
} else if (this.selectableDatesInshop?.days?.length) {
dateString = this.selectableDatesInshop.days[0].date;
}
if ( if (
experimentMixin.methods.hasSettingEqualTo( experimentMixin.methods.hasSettingEqualTo(
experimentSettings.DISPLAY_WAITLIST, experimentSettings.DISPLAY_WAITLIST,
@ -1634,9 +1642,9 @@ export default {
}, },
getFirstAvailableDate() { getFirstAvailableDate() {
let dateToSelect; let dateToSelect;
if (this.isMobileSelected) { if (this.isMobileSelected && this.selectableDatesMobile?.days?.length) {
dateToSelect = returnFirstDate(this.selectableDatesMobile); dateToSelect = returnFirstDate(this.selectableDatesMobile);
} else { } else if (this.selectableDatesInshop?.days?.length) {
dateToSelect = returnFirstDate(this.selectableDatesInshop); dateToSelect = returnFirstDate(this.selectableDatesInshop);
} }
if (!dateToSelect) return null; if (!dateToSelect) return null;
@ -1857,13 +1865,6 @@ export default {
this.forwardButtonAction(); this.forwardButtonAction();
}, },
}, },
watch: {
appointmentTypeFromAppointmentTypeQuestion: {
handler(newValue, oldValue) {
this.handleAppointmentTypeChange(newValue);
},
},
},
components: { components: {
funnelHeader, funnelHeader,
navbar, navbar,