CSR-1384: update to use constant strings

This commit is contained in:
Adam Caouette 2023-10-26 10:48:16 -04:00
parent 77455fa673
commit dd0273b8f6

View file

@ -34,7 +34,6 @@
v-model="selectedFrontWipers" /> v-model="selectedFrontWipers" />
<p class="price">+${{ wipersModal.totalFrontPrice }}</p> <p class="price">+${{ wipersModal.totalFrontPrice }}</p>
</div> </div>
<div> <div>
<checkboxQuestion <checkboxQuestion
class="mb-5" class="mb-5"
@ -55,11 +54,21 @@
</template> </template>
<script> <script>
// COMPONENTS
import buttonQuestion from "@/digital-components/button-question/button-question"; import buttonQuestion from "@/digital-components/button-question/button-question";
import addVapsButton from "./add-vaps-button/add-vaps-button"; import addVapsButton from "./add-vaps-button/add-vaps-button";
import contentGroupModal from "@/fmg-components/content-group-modal/content-group-modal"; import contentGroupModal from "@/fmg-components/content-group-modal/content-group-modal";
import checkboxQuestion from "@/digital-components/checkbox-question/checkbox-question"; import checkboxQuestion from "@/digital-components/checkbox-question/checkbox-question";
// SUPPORTING
import { partTypeStrings } from "@/constants/part-type-strings";
const wipersToDisplayStrings = {
FRONT: "FRONT",
REAR: "REAR",
BOTH: "BOTH",
};
export default { export default {
name: "add-vaps-modal-buttons", name: "add-vaps-modal-buttons",
props: { props: {
@ -96,10 +105,10 @@ export default {
return item.partType === part.rearWiperLineItems[0]?.partType; return item.partType === part.rearWiperLineItems[0]?.partType;
}); });
if (this.wipersToDisplay === "front") { if (this.wipersToDisplay === wipersToDisplayStrings.FRONT) {
this.selectedFrontWipers = true; // set as true if front wipers is only option this.selectedFrontWipers = true; // set as true if front wipers is only option
} }
if (this.wipersToDisplay === "rear") { if (this.wipersToDisplay === wipersToDisplayStrings.REAR) {
this.selectedRearWipers = true; // set as true if rear wipers is only option this.selectedRearWipers = true; // set as true if rear wipers is only option
} }
if (!frontWipersAlreadyInCart && this.selectedFrontWipers) { if (!frontWipersAlreadyInCart && this.selectedFrontWipers) {
@ -119,7 +128,7 @@ export default {
} }
this.$refs[modalName].closeModal(); this.$refs[modalName].closeModal();
if (this.wipersToDisplay === "both") { if (this.wipersToDisplay === wipersToDisplayStrings.BOTH) {
this.selectedFrontWipers = false; // set as false if both options are given this.selectedFrontWipers = false; // set as false if both options are given
this.selectedRearWipers = false; // set as false if both options are given this.selectedRearWipers = false; // set as false if both options are given
} }
@ -134,7 +143,7 @@ export default {
}, },
rainDefenseModal() { rainDefenseModal() {
const lineItem = this.availableLineItems.find((item) => { const lineItem = this.availableLineItems.find((item) => {
return item.partType === "RAIN DEFENSE"; return item.partType === partTypeStrings.FRONT_WIPER;
}); });
if (lineItem) if (lineItem)
lineItem.listPrice = parseFloat( lineItem.listPrice = parseFloat(
@ -145,10 +154,10 @@ export default {
wipersModal() { wipersModal() {
// create a single wiper item for modal // create a single wiper item for modal
const frontWiperLineItems = this.availableLineItems.filter((item) => { const frontWiperLineItems = this.availableLineItems.filter((item) => {
return item.partType.includes("FRONT WIPER"); return item.partType.includes(partTypeStrings.FRONT_WIPER);
}); });
const rearWiperLineItems = this.availableLineItems.filter((item) => { const rearWiperLineItems = this.availableLineItems.filter((item) => {
return item.partType.includes("REAR WIPER"); return item.partType.includes(partTypeStrings.REAR_WIPER);
}); });
let wipersModal; let wipersModal;
let totalFrontPrice = 0; let totalFrontPrice = 0;
@ -181,13 +190,13 @@ export default {
if (!this.answersCmsData) return buttons; if (!this.answersCmsData) return buttons;
const rainDefenseInCart = this.currentCartItems.vaps?.some((vap) => { const rainDefenseInCart = this.currentCartItems.vaps?.some((vap) => {
return vap?.partType === "RAIN DEFENSE"; return vap?.partType === partTypeStrings.FRONT_WIPER;
}); });
const frontWipersInCart = this.currentCartItems.vaps?.some((vap) => { const frontWipersInCart = this.currentCartItems.vaps?.some((vap) => {
return vap?.partType?.includes("FRONT WIPER"); return vap?.partType?.includes(partTypeStrings.FRONT_WIPER);
}); });
const rearWipersInCart = this.currentCartItems.vaps?.some((vap) => { const rearWipersInCart = this.currentCartItems.vaps?.some((vap) => {
return vap?.partType?.includes("REAR WIPER"); return vap?.partType?.includes(partTypeStrings.REAR_WIPER);
}); });
const getAnswer = (name, answers) => { const getAnswer = (name, answers) => {
@ -214,18 +223,18 @@ export default {
]; ];
prices.sort((a, b) => a - b); prices.sort((a, b) => a - b);
modalData.SubText = "+$" + prices[0] + " - $" + prices[prices.length - 1]; modalData.SubText = "+$" + prices[0] + " - $" + prices[prices.length - 1];
this.updateWipersToDisplay("both"); this.updateWipersToDisplay(wipersToDisplayStrings.BOTH);
buttons.push(modalData); buttons.push(modalData);
} else { } else {
// NO FRONT WIPERS IN CART; SHOW ONLY FRONT WIPERS BUTTON // NO FRONT WIPERS IN CART; SHOW ONLY FRONT WIPERS BUTTON
modalData.SubText = "+$" + this.wipersModal.totalFrontPrice; modalData.SubText = "+$" + this.wipersModal.totalFrontPrice;
this.updateWipersToDisplay("front"); this.updateWipersToDisplay(wipersToDisplayStrings.FRONT);
buttons.push(modalData); buttons.push(modalData);
} }
} else if (!rearWipersInCart && this.wipersModal.rearWiperLineItems.length > 0) { } else if (!rearWipersInCart && this.wipersModal.rearWiperLineItems.length > 0) {
// NO REAR WIPERS IN CART; SHOW ONLY REAR WIPERS BUTTON // NO REAR WIPERS IN CART; SHOW ONLY REAR WIPERS BUTTON
modalData.SubText = "+$" + this.wipersModal.totalRearPrice; modalData.SubText = "+$" + this.wipersModal.totalRearPrice;
this.updateWipersToDisplay("rear"); this.updateWipersToDisplay(wipersToDisplayStrings.REAR);
buttons.push(modalData); buttons.push(modalData);
} }