From 79e56c643a68b197f19c9f9064817ffa45ea2c8a Mon Sep 17 00:00:00 2001 From: Adam Caouette Date: Mon, 3 Feb 2025 13:47:03 -0500 Subject: [PATCH 1/3] CASH-177: CSS fix for button/link outline --- .../save-progress-modal-question.vue | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/fmg-components/save-progress-modal-question/save-progress-modal-question.vue b/src/fmg-components/save-progress-modal-question/save-progress-modal-question.vue index 5b885f27f..27ca1f479 100644 --- a/src/fmg-components/save-progress-modal-question/save-progress-modal-question.vue +++ b/src/fmg-components/save-progress-modal-question/save-progress-modal-question.vue @@ -123,6 +123,7 @@ export default { flex-direction: row; justify-content: center; align-items: center; + height: 3rem; border-radius: 0.5rem; &.progress-saved { @@ -156,6 +157,10 @@ export default { background: none; box-shadow: none; } + &:focus-visible span { + outline: 2px solid #005FCC; + border-radius: .25rem; + } &.delay { // fixes flicker while transitioning between states transition: background 0s 0s ease-in-out; @@ -205,7 +210,7 @@ export default { } } } - + .alert { border-radius: $border-radius-lg; border: 1px solid $green; From f716c1fc883b9afae2baec0b9bcba9afaa4094b0 Mon Sep 17 00:00:00 2001 From: Chloe Herd Date: Tue, 4 Feb 2025 12:52:37 -0500 Subject: [PATCH 2/3] Don't refresh dxdev cookie with other cookies. --- src/helpers/heritage-integration/cookie-helper.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/helpers/heritage-integration/cookie-helper.js b/src/helpers/heritage-integration/cookie-helper.js index 4ff5c0c8e..6e78d1304 100644 --- a/src/helpers/heritage-integration/cookie-helper.js +++ b/src/helpers/heritage-integration/cookie-helper.js @@ -201,7 +201,8 @@ export function areAllSessionCookiesSet() { export function refreshSessionExpiration() { refreshCookieExpiration(cookieNames.SESSION_ID, cookieExpirations.SESSION_ID); - refreshCookieExpiration(cookieNames.DXDEV, cookieExpirations.DXDEV); + // Change 2/4/25: Don't update DXDEV to avoid Safari constraints on client-set cookies. + // refreshCookieExpiration(cookieNames.DXDEV, cookieExpirations.DXDEV); refreshCookieExpiration(cookieNames.FUNNEL_USER_ID, cookieExpirations.FUNNEL_USER_ID); refreshCookieExpiration(cookieNames.FUNNEL_SESSION_KEY, cookieExpirations.FUNNEL_SESSION_KEY); } From 31719e5ef6b678d9a0482a13fac7db94be47f745 Mon Sep 17 00:00:00 2001 From: Scott Kiener Date: Wed, 5 Feb 2025 09:59:22 -0500 Subject: [PATCH 3/3] CASH-183 | Update the store when exposure is logged This prevents erroneous logs being created in EXPERIMENT_LOG by log-custom-event If the store still showed not exposed after logExposure was called, following log-custom-events still sent the experiment as not exposed --- src/constants/store-actions.js | 2 +- src/layouts/vehicle/vehicle.vue | 2 +- src/store/index.js | 15 ++++++++++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/constants/store-actions.js b/src/constants/store-actions.js index ec6b0db0c..8c9a28910 100644 --- a/src/constants/store-actions.js +++ b/src/constants/store-actions.js @@ -54,7 +54,7 @@ const storeActions = { GET_RECAL_PARTS_AND_SAVE_TO_LINE_ITEMS: "getRecalPartsAndSaveToLineItems", // Analytics - LOG_EXPERIMENT_EXPOSURE: "logExperimentExposure", + LOG_EXPERIMENT_EXPOSURE_AND_UPDATE_STORE: "logExperimentExposureAndUpdateStore", LOG_PAGE_VIEW: "logPageView", LOG_CUSTOM_EVENT: "logCustomEvent", INITIALIZE_SESSION: "initializeSession", diff --git a/src/layouts/vehicle/vehicle.vue b/src/layouts/vehicle/vehicle.vue index fa7f5c036..d5dc768ce 100644 --- a/src/layouts/vehicle/vehicle.vue +++ b/src/layouts/vehicle/vehicle.vue @@ -187,7 +187,7 @@ export default { if (experimentForLogging !== undefined) { // Log experiment exposure baseMixin.methods.dispatchStoreActionWithLogging( - storeActions.LOG_EXPERIMENT_EXPOSURE, + storeActions.LOG_EXPERIMENT_EXPOSURE_AND_UPDATE_STORE, { userId: getUserIdValue(), deviceId: getDeviceIdValue(), diff --git a/src/store/index.js b/src/store/index.js index c591d493d..dcd631941 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -1262,10 +1262,23 @@ export const actions = { }, // Analytics Actions - logExperimentExposure( + logExperimentExposureAndUpdateStore( context, { payload: { userId, deviceId, sessionKey, pageName, experiment }, pageNameToLog } ) { + const experiments = deepClone(context.getters.applicationUser.experiments); + const experimentToMarkAsExposed = experiments.find(ex => { + ex.universeId == experiment.universeId && + ex.testId == experiment.testIde && + ex.variationId == experiment.variationId && + ex.assignmentId == experiment.assignmentId + }); + if (experimentToMarkAsExposed) { + experimentToMarkAsExposed.isExposed = true; + } + + context.commit(storeMutations.UPDATE_EXPERIMENTS, experiments); + return globalMethods.callHttpClient({ method: endpoints.LogExperimentExposureIfAssigned.method, endpoint: endpoints.LogExperimentExposureIfAssigned.url,