From 6772029d71aa7ec8ec3ff273eab05d737085dbe7 Mon Sep 17 00:00:00 2001 From: Adam Caouette Date: Mon, 17 Feb 2025 15:34:01 -0500 Subject: [PATCH 1/4] CASH-153: put new datePicker behind DisplayPricingByDay experiment check --- src/constants/experiments.js | 1 + src/layouts/schedule/schedule.vue | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/constants/experiments.js b/src/constants/experiments.js index 92d27a4a1..d33d7d677 100644 --- a/src/constants/experiments.js +++ b/src/constants/experiments.js @@ -18,6 +18,7 @@ const experimentSettings = { INSURANCE_TAB_TO_DISPLAY_THRESHOLD_INTERNAL: "NextGen_InternalInsuranceTabDisplayThreshold", INSURANCE_TAB_TO_DISPLAY_THRESHOLD_EXTERNAL: "NextGen_ExternalInsuranceTabDisplayThreshold", DISPLAY_MSR: "DisplayMSR", + DISPLAY_PRICING_BY_DAY: "DisplayPricingByDay", }; const experimentTriggers = { diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index 63a2d7d64..4902a1088 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -18,7 +18,18 @@ marginTopSizeOverride="1" /> + selectableDate.date === this.selectedDate ); }, + isPricingByDayExperiment() { + return ( + experimentMixin.methods + .getSettingValue(experimentSettings.DISPLAY_PRICING_BY_DAY) + ?.toLowerCase() === "true" + ); + }, }, methods: { splitCopyOnCMSPlaceHolder, @@ -537,6 +558,7 @@ export default { funnelSubHeader, Form, loadingModal, + datePicker, datePicker2, locationAlerts, timeSlotModalQuestion, From 023ae9cd51af20f5760150fd7c5b99bd916aa33a Mon Sep 17 00:00:00 2001 From: Adam Caouette Date: Mon, 17 Feb 2025 15:34:23 -0500 Subject: [PATCH 2/4] CASH-153: update unit test --- src/layouts/schedule/schedule.spec.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/layouts/schedule/schedule.spec.js b/src/layouts/schedule/schedule.spec.js index 270da75f0..18e659ec5 100644 --- a/src/layouts/schedule/schedule.spec.js +++ b/src/layouts/schedule/schedule.spec.js @@ -7,6 +7,7 @@ import { getMountOptions } from "@/helpers/unit-test-helper.js"; import store from "@/store"; import router from "@/router"; import baseMixin from "../../mixins/base-mixin"; +import { experimentSettings } from "../../constants/experiments"; // Mock basemixin jest.mock("@/mixins/base-mixin.js", () => ({ @@ -177,6 +178,7 @@ beforeEach(() => { glassParts: [], supportingItems: [], }, + experimentSettings: {}, }; }); afterEach(() => { From 456f00653f67297400feacd2d999b6860f82fc10 Mon Sep 17 00:00:00 2001 From: Adam Caouette Date: Mon, 17 Feb 2025 15:37:34 -0500 Subject: [PATCH 3/4] CASH-153: update with new experiment name --- src/layouts/schedule/schedule.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index 4902a1088..304376377 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -318,7 +318,7 @@ export default { isPricingByDayExperiment() { return ( experimentMixin.methods - .getSettingValue(experimentSettings.DISPLAY_PRICING_BY_DAY) + .getSettingValue(experimentSettings.PRICING_BY_DAY) ?.toLowerCase() === "true" ); }, From 69c9c4576367619cb7a36cd5eed5a78058e52840 Mon Sep 17 00:00:00 2001 From: Adam Caouette Date: Mon, 17 Feb 2025 15:46:01 -0500 Subject: [PATCH 4/4] CASH-153: move experiment datePicker into new prescribed folder --- .../date-picker => experiment-components}/date-picker-2.vue | 4 ++-- src/layouts/schedule/schedule.vue | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) rename src/{digital-components/date-picker => experiment-components}/date-picker-2.vue (99%) diff --git a/src/digital-components/date-picker/date-picker-2.vue b/src/experiment-components/date-picker-2.vue similarity index 99% rename from src/digital-components/date-picker/date-picker-2.vue rename to src/experiment-components/date-picker-2.vue index 8becf6266..414f794e0 100644 --- a/src/digital-components/date-picker/date-picker-2.vue +++ b/src/experiment-components/date-picker-2.vue @@ -99,8 +99,8 @@ // Supporting files import loader from "@/ux-components/loader/loader"; import store from "@/store"; -import { TIMINGFUNC_MAP, BUFFER_OFFSET, MONTHS_OF_YEAR } from "./mixins/constants"; -import { selectableDaysOptions, requiredParameter, forceTwoDigitString } from "./mixins/helpers"; +import { TIMINGFUNC_MAP, BUFFER_OFFSET, MONTHS_OF_YEAR } from "@/digital-components/date-picker/mixins/constants"; +import { selectableDaysOptions, requiredParameter, forceTwoDigitString } from "@/digital-components/date-picker/mixins/helpers"; import { convertDateToDateString, convertDateStringToDate, diff --git a/src/layouts/schedule/schedule.vue b/src/layouts/schedule/schedule.vue index 304376377..0853664e2 100644 --- a/src/layouts/schedule/schedule.vue +++ b/src/layouts/schedule/schedule.vue @@ -81,7 +81,7 @@ import funnelSubHeader from "@/fmg-components/funnel-sub-header/funnel-sub-heade import loadingModal from "@/fmg-components/loading-modal/loading-modal.vue"; import { Form, defineRule } from "vee-validate"; import datePicker from "@/digital-components/date-picker/date-picker"; -import datePicker2 from "@/digital-components/date-picker/date-picker-2"; +import datePicker2 from "@/experiment-components/date-picker-2"; import locationAlerts from "@/layouts/schedule/location-alerts/location-alerts"; import timeSlotModalQuestion from "./time-slot-modal-question/time-slot-modal-question"; import textBlock from "@/digital-components/text-block/text-block";