diff --git a/src/layouts/service-packages/service-package-question/service-package-question.vue b/src/layouts/service-packages/service-package-question/service-package-question.vue index 0dddc248..c8dd5f66 100644 --- a/src/layouts/service-packages/service-package-question/service-package-question.vue +++ b/src/layouts/service-packages/service-package-question/service-package-question.vue @@ -22,6 +22,7 @@ import servicePackageRadio from '@/layouts/service-packages/service-package-ques import partTypeStrings from '@/constants/part-type-strings'; import { useMainStore } from '@/store'; import { getPriceOfLineItem } from '@/helpers/price-calculator'; +import { shallowRef } from 'vue'; const glassLocations = damageLocationsSelected; @@ -44,16 +45,16 @@ export default { availableLineItems: { type: Array, default: () => [] - } + }, }, setup() { const mainStore = useMainStore(); return { mainStore }; }, - emits: ['vapsItemsSelected'], + emits: ['vapsItemsSelected', 'packageSelected', 'update:modelValue'], data() { return { - servicePackageRadio, + servicePackageRadio: shallowRef(servicePackageRadio), selectedPackageName: '', questionText: 'Select an option:' }; @@ -149,7 +150,11 @@ export default { selectedPackageName(newValue) { const VapsProductsInSelectedPackage = this.getVapsLineItemsForSelectedPackage(newValue); this.$emit('vapsItemsSelected', VapsProductsInSelectedPackage); - } + this.$emit('packageSelected', newValue); + }, + availableLineItems() { + this.preselectPackage(); + }, }, methods: { processIfStatements, @@ -266,6 +271,12 @@ export default { const glassLocationMatches = this.mainStore.order.damage.glassToReplace?.filter((glassToReplace) => glassToReplace.glassLocation === glassLocation) ?? []; return !!glassLocationMatches.length; + }, + preselectPackage() { + if (this.mainStore.order.servicePackage) { + this.selectedPackageName = this.mainStore.order.servicePackage; + return; + } } } }; diff --git a/src/layouts/service-packages/service-packages.vue b/src/layouts/service-packages/service-packages.vue index cfd4fad0..55873656 100644 --- a/src/layouts/service-packages/service-packages.vue +++ b/src/layouts/service-packages/service-packages.vue @@ -27,6 +27,7 @@ :validationRules="rules.optionRequired" isRequired @vapsItemsSelected="vapsItemsSelectedAction" + @packageSelected="packageSelectedAction" @link-event="openModalAction" />