Merge branch 'develop' into feature/CASH-613
This commit is contained in:
commit
4e3aef4cf7
5 changed files with 82 additions and 5 deletions
|
|
@ -79,6 +79,9 @@ export function coverageTypeEnum(strCoverageType) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const parentAccountNumbers = {
|
||||||
|
CONNECT: "560636",
|
||||||
|
};
|
||||||
export const NON_MANAGED_SHOW_CLAIM_NUMBER_PARENTS = [
|
export const NON_MANAGED_SHOW_CLAIM_NUMBER_PARENTS = [
|
||||||
{ name: "KentuckyFarmBureau", value: "223499" },
|
{ name: "KentuckyFarmBureau", value: "223499" },
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -50,11 +50,18 @@ function setupMocks() {
|
||||||
FunnelHeaderWidget: { Text: "Header" },
|
FunnelHeaderWidget: { Text: "Header" },
|
||||||
FunnelSubHeaderWidget: { Text: "Subheader" },
|
FunnelSubHeaderWidget: { Text: "Subheader" },
|
||||||
FunnelFooterWidget: { Text: "Footer" },
|
FunnelFooterWidget: { Text: "Footer" },
|
||||||
|
VehicleNotListedWidget: { Text: "Vehicle Not Listed" },
|
||||||
|
CancelVerificationWidget: { Text: "Cancel Verification" },
|
||||||
|
AmFamDisclaimerWidget: { Text: "Disclaimer" },
|
||||||
};
|
};
|
||||||
|
|
||||||
fetchCmsContentForPage.mockResolvedValue(mockCmsContent);
|
fetchCmsContentForPage.mockResolvedValue(mockCmsContent);
|
||||||
settleAllPromises.mockResolvedValue({ cmsContent: mockCmsContent });
|
settleAllPromises.mockResolvedValue({ cmsContent: mockCmsContent });
|
||||||
|
|
||||||
|
const getCmsContentMock = jest.fn().mockImplementation((widgetName, cmsFieldName) => {
|
||||||
|
return mockCmsContent[widgetName][cmsFieldName];
|
||||||
|
});
|
||||||
|
|
||||||
const mountOptions = getMountOptions({
|
const mountOptions = getMountOptions({
|
||||||
route: { name: "policy-vehicle", query: {}, params: {} },
|
route: { name: "policy-vehicle", query: {}, params: {} },
|
||||||
router: {
|
router: {
|
||||||
|
|
@ -64,7 +71,13 @@ function setupMocks() {
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
mountOptions.global = mountOptions.global || {};
|
||||||
|
mountOptions.global.mocks = {
|
||||||
|
...(mountOptions.global.mocks || {}),
|
||||||
|
getCmsContent: getCmsContentMock,
|
||||||
|
};
|
||||||
|
|
||||||
const wrapper = shallowMount(policyVehicle, mountOptions);
|
const wrapper = shallowMount(policyVehicle, mountOptions);
|
||||||
|
|
||||||
return { wrapper };
|
return { wrapper, getCmsContentMock };
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,16 +4,31 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12 col-md-10 col-lg-8 col-xl-7">
|
<div class="col-12 col-md-10 col-lg-8 col-xl-7">
|
||||||
<funnelSubHeader class="pb-4" cmsWidgetName="FunnelSubHeaderWidget" />
|
<funnelSubHeader class="pb-4" cmsWidgetName="FunnelSubHeaderWidget" alignLeft />
|
||||||
<!--
|
|
||||||
... Page code goes here.
|
<buttonMain
|
||||||
-->
|
id="btn-vehicle-not-listed"
|
||||||
|
:buttonText="vehicleNotListedQuestionText"
|
||||||
|
:suppressLoader="true"
|
||||||
|
class="mb-3"
|
||||||
|
@click-event="forwardButtonAction" />
|
||||||
|
|
||||||
|
<textLink
|
||||||
|
class="pt-3"
|
||||||
|
useLoadingModal
|
||||||
|
linkType="text"
|
||||||
|
href="javascript:void(0)"
|
||||||
|
:text="cancelVerificationCopy"
|
||||||
|
@click-event="cancelVerificationAction" />
|
||||||
|
|
||||||
<navbar
|
<navbar
|
||||||
cmsWidgetName="FunnelFooterWidget"
|
cmsWidgetName="FunnelFooterWidget"
|
||||||
ref="navbar"
|
ref="navbar"
|
||||||
:isForwardActionDisabled="!meta.valid"
|
:isForwardActionDisabled="!meta.valid"
|
||||||
@back-clicked="backButtonAction"
|
@back-clicked="backButtonAction"
|
||||||
@ForwardClicked="forwardButtonAction" />
|
@ForwardClicked="forwardButtonAction" />
|
||||||
|
|
||||||
|
<div v-if="showAmFamDisclaimer" v-html="amFamDisclaimerWidget"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -24,6 +39,11 @@
|
||||||
import funnelHeader from "@/fmg-components/funnel-header/funnel-header";
|
import funnelHeader from "@/fmg-components/funnel-header/funnel-header";
|
||||||
import navbar from "@/fmg-components/nav-bar/nav-bar";
|
import navbar from "@/fmg-components/nav-bar/nav-bar";
|
||||||
import funnelSubHeader from "@/fmg-components/funnel-sub-header/funnel-sub-header";
|
import funnelSubHeader from "@/fmg-components/funnel-sub-header/funnel-sub-header";
|
||||||
|
import store from "@/store";
|
||||||
|
import buttonMain from "@/ux-components/button-main/button-main";
|
||||||
|
import textLink from "@/ux-components/text-link/text-link.vue";
|
||||||
|
import { parentAccountNumbers } from "@/constants/insurance";
|
||||||
|
|
||||||
import { Form } from "vee-validate";
|
import { Form } from "vee-validate";
|
||||||
|
|
||||||
import { fetchCmsContentForPage } from "@/helpers/cms-content-helper";
|
import { fetchCmsContentForPage } from "@/helpers/cms-content-helper";
|
||||||
|
|
@ -40,6 +60,8 @@ export default {
|
||||||
funnelHeader,
|
funnelHeader,
|
||||||
navbar,
|
navbar,
|
||||||
funnelSubHeader,
|
funnelSubHeader,
|
||||||
|
textLink,
|
||||||
|
buttonMain,
|
||||||
},
|
},
|
||||||
// Ensure CMS content is fetched during route navigation without depending on `to`/`from`
|
// Ensure CMS content is fetched during route navigation without depending on `to`/`from`
|
||||||
async beforeRouteEnter(to, from, next) {
|
async beforeRouteEnter(to, from, next) {
|
||||||
|
|
@ -57,7 +79,34 @@ export default {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
computed: {
|
||||||
|
vehicleNotListedQuestionText() {
|
||||||
|
return this.getCmsContent("VehicleNotListedWidget", "Text");
|
||||||
|
},
|
||||||
|
cancelVerificationCopy() {
|
||||||
|
return this.getCmsContent("CancelVerificationWidget", "Text");
|
||||||
|
},
|
||||||
|
amFamDisclaimerWidget() {
|
||||||
|
return this.getCmsContent("AmFamDisclaimerWidget", "Text");
|
||||||
|
},
|
||||||
|
showAmFamDisclaimer() {
|
||||||
|
return this.parentAccountNumberFromStore() === this.parentAccountNumbers.CONNECT;
|
||||||
|
},
|
||||||
|
parentAccountNumbers() {
|
||||||
|
return parentAccountNumbers;
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
|
parentAccountNumberFromStore() {
|
||||||
|
return store.getters.order?.payment?.parentAccountNumber;
|
||||||
|
},
|
||||||
|
cancelVerificationAction() {
|
||||||
|
this.$router.navigateWithoutSaving(
|
||||||
|
this.navigationScenarios.CLICKED_CANCEL_VERIFICATION,
|
||||||
|
this.pageName
|
||||||
|
);
|
||||||
|
},
|
||||||
backButtonAction() {
|
backButtonAction() {
|
||||||
this.$router.navigateWithoutSaving(
|
this.$router.navigateWithoutSaving(
|
||||||
this.navigationScenarios.CLICKED_BACK,
|
this.navigationScenarios.CLICKED_BACK,
|
||||||
|
|
@ -76,3 +125,10 @@ export default {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
#btn-vehicle-not-listed {
|
||||||
|
background-color: $blue;
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@ const navigationScenarios = {
|
||||||
CLICKED_FORWARD: "CLICKED_FORWARD",
|
CLICKED_FORWARD: "CLICKED_FORWARD",
|
||||||
CLICKED_FORWARD_WITH_CASH: "CLICKED_FORWARD_WITH_CASH",
|
CLICKED_FORWARD_WITH_CASH: "CLICKED_FORWARD_WITH_CASH",
|
||||||
CLICKED_FORWARD_WITH_INSURANCE: "CLICKED_FORWARD_WITH_INSURANCE",
|
CLICKED_FORWARD_WITH_INSURANCE: "CLICKED_FORWARD_WITH_INSURANCE",
|
||||||
|
CLICKED_CANCEL_VERIFICATION: "CLICKED_CANCEL_VERIFICATION",
|
||||||
|
|
||||||
// Bailout
|
// Bailout
|
||||||
BAILOUT: "BAILOUT",
|
BAILOUT: "BAILOUT",
|
||||||
|
|
|
||||||
|
|
@ -483,6 +483,10 @@ const routingTable = function () {
|
||||||
scenario: navigationScenarios.CLICKED_FORWARD,
|
scenario: navigationScenarios.CLICKED_FORWARD,
|
||||||
destinationPageData: routeData.POLICY_DRIVER,
|
destinationPageData: routeData.POLICY_DRIVER,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
scenario: navigationScenarios.CLICKED_CANCEL_VERIFICATION,
|
||||||
|
destinationPageData: routeData.INSURANCE_COMPANY,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue