diff --git a/src/digital-components/modal/modal.vue b/src/digital-components/modal/modal.vue
index 96263ecf2..1bf7c3fce 100644
--- a/src/digital-components/modal/modal.vue
+++ b/src/digital-components/modal/modal.vue
@@ -2,7 +2,7 @@
+ v-model="serviceZipCodeInput" />
({
serviceZipQuestion: {
- serviceState: "",
- serviceZipCode: "1234",
+ state: "",
+ zipCode: "",
isServiceable: null,
},
}),
@@ -79,11 +80,10 @@ export default {
},
computed: {
serviceZipLinkText() {
- const defaultText = this.getCmsContent(this.linkWidgetName, "BodyText");
- if (this.modelValue.serviceZipCode.length > 0) {
- return this.modelValue.serviceState + ", " + this.modelValue.serviceZipCode;
+ if (this.modelValue.zipCode.length > 0) {
+ return this.modelValue.state + ", " + this.modelValue.zipCode;
}
- return this.serviceZipLinkPromptText || defaultText;
+ return this.getCmsContent(this.linkWidgetName, "BodyText");
},
modalHeaderText() {
return this.getCmsContent(this.textboxQuestionWidgetName, "QuestionText");
@@ -127,22 +127,26 @@ export default {
},
onModalOpened() {
- this.resetsOnZipInput();
this.focusOnZipInput();
},
+ onModalClosed() {
+ this.serviceZipCodeInput = this.serviceZipModel.zipCode;
+ this.resetsOnZipInput();
+ },
+
async setZipCode() {
this.resetAlerts();
- const zipCodeData = await this.getZipCodeData(this.serviceZipModel.serviceZipCode);
+ const zipCodeData = await this.getZipCodeData(this.serviceZipCodeInput);
if (!zipCodeData.isValid) {
this.displayInvalidZipAlert = true;
this.focusOnZipInput();
} else {
this.serviceZipModel = {
- serviceState: zipCodeData.state,
- serviceZipCode: this.serviceZipModel.serviceZipCode,
+ state: zipCodeData.state,
+ zipCode: this.serviceZipCodeInput,
isServiceable: zipCodeData.isServiceable,
};
@@ -151,10 +155,8 @@ export default {
},
},
watch: {
- serviceZipModel: {
- handler() {
- this.displayInvalidZipAlert = false;
- },
+ serviceZipCodeInput() {
+ this.resetsOnZipInput();
},
},
components: {