diff --git a/src/fmg-components/cart/cart.vue b/src/fmg-components/cart/cart.vue index 76847f3e9..8a7714410 100644 --- a/src/fmg-components/cart/cart.vue +++ b/src/fmg-components/cart/cart.vue @@ -103,7 +103,7 @@ ref="promoModalQuestion" class="small mt-4" v-model="lineItems" - @addedPromo="handleAddedPromo" + emitToGrandparent="true" :availableVaps="availableVaps" modalWidgetName="PromoModalWidget" /> @@ -245,10 +245,6 @@ export default { } return []; }, - handleAddedPromo(lineItems) { - // NOTE: these lineItems are passed from promo-modal-question - this.$emit("update:modelValue", lineItems); - }, }, computed: { screenReaderTotalAmountDueText() { diff --git a/src/fmg-components/promo-modal-question/promo-modal-question.vue b/src/fmg-components/promo-modal-question/promo-modal-question.vue index 59c1523b2..56d235afc 100644 --- a/src/fmg-components/promo-modal-question/promo-modal-question.vue +++ b/src/fmg-components/promo-modal-question/promo-modal-question.vue @@ -106,6 +106,11 @@ export default { required: false, default: true, }, + emitToGrandparent: { + type: Boolean, + required: false, + default: false, + }, }, computed: { promoLinkText() { @@ -175,6 +180,7 @@ export default { }, onModalClosed() { this.resetAlerts(); + if (this.emitToGrandparent) this.$parent.$emit("update:modelValue", this.lineItems); this.$emit("update:modelValue", this.lineItems); this.promoCode = ""; this.modal.resetForm(); @@ -304,7 +310,6 @@ export default { this.lineItems.vaps?.push(...getVaps); } this.lineItems?.promos.push(...promoCodeData.promoCode); - this.$emit("added-promo", this.lineItems); this.closeModal(); } else { this.getErrorMessage(promoCodeData.errorCode, promoCodeData.additionalInfo);