diff --git a/src/common-components/funnel-header/menu-modal/menu-modal.vue b/src/common-components/funnel-header/menu-modal/menu-modal.vue
index b0ac81691..30e7fa6b3 100644
--- a/src/common-components/funnel-header/menu-modal/menu-modal.vue
+++ b/src/common-components/funnel-header/menu-modal/menu-modal.vue
@@ -36,14 +36,33 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/src/constants/store-actions.js b/src/constants/store-actions.js
index 34c5aa3c0..de01a34bd 100644
--- a/src/constants/store-actions.js
+++ b/src/constants/store-actions.js
@@ -4,15 +4,15 @@ const storeActions = {
GET_HOMEPAGE_NAME: "getHomepageName",
GET_PAGE_DATA: "getPageData",
- // Vehicle Actions
- GET_VEHICLE_YEARS: "getVehicleYears",
- GET_VEHICLE_MAKES: "getVehicleMakes",
- GET_VEHICLE_MODELS: "getVehicleModels",
- GET_VEHICLE_STYLES: "getVehicleStyles",
- SET_VEHICLE: "setVehicle",
- GET_DAMAGE_OPTIONS: "getDamageOptions",
- GET_EVOX_IMAGE: "getEvoxImage",
- IS_VIN_OPTIONAL_VEHICLE: "isVinOptionalVehicle",
+ // Vehicle Actions
+ GET_VEHICLE_YEARS: "getVehicleYears",
+ GET_VEHICLE_MAKES: "getVehicleMakes",
+ GET_VEHICLE_MODELS: "getVehicleModels",
+ GET_VEHICLE_STYLES: "getVehicleStyles",
+ SET_VEHICLE: "setVehicle",
+ GET_DAMAGE_OPTIONS: "getDamageOptions",
+ GET_EVOX_IMAGE: "getEvoxImage",
+ IS_VIN_OPTIONAL_VEHICLE: "isVinOptionalVehicle",
// Lookup Actions
LOOKUP_VEHICLE_BY_YMMS: "lookupVehicleByYmms",
diff --git a/src/helpers/heritage-integration/navigation-helper.js b/src/helpers/heritage-integration/navigation-helper.js
index 01d5328f5..5d02f5dc6 100644
--- a/src/helpers/heritage-integration/navigation-helper.js
+++ b/src/helpers/heritage-integration/navigation-helper.js
@@ -76,10 +76,10 @@ async function getLatestPageForRedirection() {
const vinOptionalVehiclePromise = store.dispatch(storeActions.IS_VIN_OPTIONAL_VEHICLE);
const promiseResultMap = [
- {
- resultKey: "vinOptionalOptions",
- promise: vinOptionalVehiclePromise,
- },
+ {
+ resultKey: "vinOptionalOptions",
+ promise: vinOptionalVehiclePromise,
+ },
];
const resultMap = await settleAllPromises(promiseResultMap);
@@ -104,8 +104,11 @@ async function getLatestPageForRedirection() {
return fmgPageValues.VEHICLE_PARTS;
} else if (partQuestionsComponent.methods.arePagePrerequisitesValid()) {
return fmgPageValues.PART_QUESTIONS;
- }
- else if (vinLookupComponent.methods.arePagePrerequisitesValid() && !store.getters.damage.isRepair && !isVinOptionalVehicle) {
+ } else if (
+ vinLookupComponent.methods.arePagePrerequisitesValid() &&
+ !store.getters.damage.isRepair &&
+ !isVinOptionalVehicle
+ ) {
return fmgPageValues.VIN_LOOKUP;
} else {
return fmgPageValues.ESTIMATE;
diff --git a/src/helpers/heritage-integration/navigation-helper.spec.js b/src/helpers/heritage-integration/navigation-helper.spec.js
index 9f9d00516..263fd054f 100644
--- a/src/helpers/heritage-integration/navigation-helper.spec.js
+++ b/src/helpers/heritage-integration/navigation-helper.spec.js
@@ -26,8 +26,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -47,8 +47,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -69,8 +69,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -92,8 +92,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -116,8 +116,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -141,8 +141,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -171,8 +171,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -201,8 +201,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -231,8 +231,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -261,8 +261,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -291,8 +291,8 @@ describe("getPageToRouteExistingOrderTo", () => {
query: {},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Mock out the lazy load calls for all components.
mockLazyLoadComponentReturnValues({
@@ -323,8 +323,8 @@ describe("getPageToRouteExistingOrderTo", () => {
},
};
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
// Act
const result = await getPageToRouteExistingOrderTo(toRoute, true);
diff --git a/src/layouts/estimate/estimate.spec.js b/src/layouts/estimate/estimate.spec.js
index 21c0a1cec..4e533bb70 100644
--- a/src/layouts/estimate/estimate.spec.js
+++ b/src/layouts/estimate/estimate.spec.js
@@ -61,8 +61,8 @@ describe("estimate.vue", () => {
selectedVinLookupMethod: vinLookupMethodSelections.MANUALVIN,
});
- store.commit( storeMutations.UPDATE_IS_REPAIR, false );
- store.commit( storeMutations.UPDATE_MAKE, "acura" );
+ store.commit(storeMutations.UPDATE_IS_REPAIR, false);
+ store.commit(storeMutations.UPDATE_MAKE, "acura");
//Act
await wrapper.vm.forwardButtonAction();
@@ -220,16 +220,21 @@ describe("estimate.vue", () => {
});
describe("skipVinLookup", () => {
- const skipOptions = [[true, true, true],
- [true, false, true],
- [false, true, true],
- [false, false, false]];
- test.each(skipOptions)("isRepair %s and isVinOptional %s should return %s", async (isRepair, isVinOptionalVehicle, expectedVinSkip) => {
- const { wrapper } = setupMocks({ isVinOptionalVehicle: isVinOptionalVehicle});
- store.commit( storeMutations.UPDATE_IS_REPAIR, isRepair);
+ const skipOptions = [
+ [true, true, true],
+ [true, false, true],
+ [false, true, true],
+ [false, false, false],
+ ];
+ test.each(skipOptions)(
+ "isRepair %s and isVinOptional %s should return %s",
+ async (isRepair, isVinOptionalVehicle, expectedVinSkip) => {
+ const { wrapper } = setupMocks({ isVinOptionalVehicle: isVinOptionalVehicle });
+ store.commit(storeMutations.UPDATE_IS_REPAIR, isRepair);
- expect(wrapper.vm.skipVinLookup).toEqual(expectedVinSkip);
- });
+ expect(wrapper.vm.skipVinLookup).toEqual(expectedVinSkip);
+ }
+ );
});
function setupMocks({
diff --git a/src/layouts/estimate/estimate.vue b/src/layouts/estimate/estimate.vue
index ece6f72a5..058077d39 100644
--- a/src/layouts/estimate/estimate.vue
+++ b/src/layouts/estimate/estimate.vue
@@ -171,7 +171,7 @@ export default {
this.$router.navigateWithoutSaving(this.navigationScenarios.CLICKED_BACK, this.$route);
},
async forwardButtonAction() {
- if (this.skipVinLookup){
+ if (this.skipVinLookup) {
const zipCodeData = await this.getZipCodeData(this.serviceZipCode);
//todo: validation
await this.dispatchStoreAction(storeActions.SAVE_EMAIL, this.emailAddress, false);
diff --git a/src/store/index.js b/src/store/index.js
index 91b7aac1e..88dfd023c 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1316,26 +1316,6 @@ export const actions = {
!sortedPreviousResultsArray?.every(
(x, i) => x.partNum === sortedMoldingQuestionAnswersArray[i].partNum
);
-
- isVinOptionalVehicle(context){
- switch((context.state.order.vehicle.make).toLowerCase()) {
- case "mercedes benz":
- case "volkswagen":
- case "audi":
- case "porsche":
- return true;
- default:
- }
-
- if ((context.state.order.vehicle.make).toLowerCase() === "ford" && context.state.order.vehicle.year >= 2018)
- return true;
-
- if ((context.state.order.vehicle.make).toLowerCase() === "bmw" && context.state.order.vehicle.year <= 2017)
- return true;
-
- return false;
- }
-}
if (haveMoldingQuestionAnswersChanged) {
context.commit(storeMutations.UPDATE_GLASS_PARTS, null);
@@ -1407,6 +1387,31 @@ export const actions = {
clearVin(context) {
context.commit(storeMutations.UPDATE_VEHICLE_VIN, null);
},
+
+ isVinOptionalVehicle(context) {
+ switch (context.state.order.vehicle.make.toLowerCase()) {
+ case "mercedes benz":
+ case "volkswagen":
+ case "audi":
+ case "porsche":
+ return true;
+ default:
+ }
+
+ if (
+ context.state.order.vehicle.make.toLowerCase() === "ford" &&
+ context.state.order.vehicle.year >= 2018
+ )
+ return true;
+
+ if (
+ context.state.order.vehicle.make.toLowerCase() === "bmw" &&
+ context.state.order.vehicle.year <= 2017
+ )
+ return true;
+
+ return false;
+ },
};
export default createStore({
diff --git a/src/store/store.spec.js b/src/store/store.spec.js
index 600a45030..7ca65cc74 100644
--- a/src/store/store.spec.js
+++ b/src/store/store.spec.js
@@ -2713,26 +2713,31 @@ describe("Getters", () => {
});
describe("isVinOptionalVehicle", () => {
- const testVehicles = [["2017", "acura", false],
- ["2017", "ford", false],
- ["2018", "ford", true],
- ["2018", "bmw", false],
- ["2017", "bmw", true],
- ["2016", "bmw", true],
- ["2016", "mercedes benz", true],
- ["2016", "volkswagen", true],
- ["2016", "audi", true],
- ["2016", "porsche", true]];
- test.each(testVehicles)("%s %s should skip vin lookup is %s", async (year, make, expectedVinSkip) => {
- const context = state;
+ const testVehicles = [
+ ["2017", "acura", false],
+ ["2017", "ford", false],
+ ["2018", "ford", true],
+ ["2018", "bmw", false],
+ ["2017", "bmw", true],
+ ["2016", "bmw", true],
+ ["2016", "mercedes benz", true],
+ ["2016", "volkswagen", true],
+ ["2016", "audi", true],
+ ["2016", "porsche", true],
+ ];
+ test.each(testVehicles)(
+ "%s %s should skip vin lookup is %s",
+ async (year, make, expectedVinSkip) => {
+ const context = state;
- context.state = {
- order: {
- vehicle: { year: year, make: make}
- }
- };
+ context.state = {
+ order: {
+ vehicle: { year: year, make: make },
+ },
+ };
- var vinOptionalResult = actions.isVinOptionalVehicle(context);
- expect(vinOptionalResult).toEqual(expectedVinSkip);
- });
-});
\ No newline at end of file
+ var vinOptionalResult = actions.isVinOptionalVehicle(context);
+ expect(vinOptionalResult).toEqual(expectedVinSkip);
+ }
+ );
+});
diff --git a/src/ux-components/text-link/text-link.vue b/src/ux-components/text-link/text-link.vue
index e6cd2aece..6d6c7a0e3 100644
--- a/src/ux-components/text-link/text-link.vue
+++ b/src/ux-components/text-link/text-link.vue
@@ -1,8 +1,21 @@
- {{text}}
-
- {{text}}
- {{text}}
+ {{ text }}
+
+ {{ text }}
+ {{ text }}