Merge pull request #1023 from Safelite/feature/humphries/INSR-8091
INSR-8091: Policy Holder Details changes from demo
This commit is contained in:
commit
d384b42e10
9 changed files with 46 additions and 60 deletions
|
|
@ -146,7 +146,7 @@ export default {
|
||||||
background-size: 0.625rem 1rem;
|
background-size: 0.625rem 1rem;
|
||||||
color: $gray-600;
|
color: $gray-600;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
min-height: 3rem;
|
min-height: 2.8125rem;
|
||||||
letter-spacing: inherit;
|
letter-spacing: inherit;
|
||||||
box-shadow: $box-shadow-input;
|
box-shadow: $box-shadow-input;
|
||||||
&:focus,
|
&:focus,
|
||||||
|
|
|
||||||
|
|
@ -86,7 +86,7 @@ function defineGlobalPhoneNumberRules() {
|
||||||
function defineGlobalExtensionRules() {
|
function defineGlobalExtensionRules() {
|
||||||
defineRule(
|
defineRule(
|
||||||
globalRules.EXTENSION_FORMAT,
|
globalRules.EXTENSION_FORMAT,
|
||||||
regex(/^[0-9]{5}$/, errorMessages.EXTENSION_FORMAT)
|
regex(/^[0-9]{1,5}$/, errorMessages.EXTENSION_FORMAT)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,8 +12,7 @@
|
||||||
hasIcon
|
hasIcon
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
validationRules="street-address-required"
|
validationRules="street-address-required"
|
||||||
@keydown.enter.prevent
|
@keydown.enter.prevent />
|
||||||
class="mb-4" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<transition
|
<transition
|
||||||
|
|
@ -29,24 +28,22 @@
|
||||||
v-model="addressModel.streetAddress2"
|
v-model="addressModel.streetAddress2"
|
||||||
cmsWidgetName="StreetAddress2QuestionWidget"
|
cmsWidgetName="StreetAddress2QuestionWidget"
|
||||||
aria-haspopup=""
|
aria-haspopup=""
|
||||||
inputId="streetAddress2Field"
|
inputId="streetAddress2Field" />
|
||||||
class="mb-4" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="row"
|
class="row"
|
||||||
aria-live="polite">
|
aria-live="polite">
|
||||||
<div class="col">
|
<div class="col-lg-6">
|
||||||
<textboxQuestion
|
<textboxQuestion
|
||||||
ref="city"
|
ref="city"
|
||||||
v-model="addressModel.city"
|
v-model="addressModel.city"
|
||||||
cmsWidgetName="CityQuestionWidget"
|
cmsWidgetName="CityQuestionWidget"
|
||||||
inputId="cbf28188fdf2436688fd735915f7ee56"
|
inputId="cbf28188fdf2436688fd735915f7ee56"
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
validationRules="city-required"
|
validationRules="city-required" />
|
||||||
class="mb-4" />
|
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col-lg-6">
|
||||||
<dropdownQuestion
|
<dropdownQuestion
|
||||||
ref="state"
|
ref="state"
|
||||||
v-model="addressModel.state"
|
v-model="addressModel.state"
|
||||||
|
|
@ -55,8 +52,7 @@
|
||||||
inputId="8fdf9dc2e13e430eb57529499dceb3eb"
|
inputId="8fdf9dc2e13e430eb57529499dceb3eb"
|
||||||
:options="stateOptions"
|
:options="stateOptions"
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
validationRules="state-required"
|
validationRules="state-required" />
|
||||||
class="mb-4" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
|
|
@ -70,8 +66,7 @@
|
||||||
inputId="01a9a1c2de0b4c9da8e023c9ae3be498"
|
inputId="01a9a1c2de0b4c9da8e023c9ae3be498"
|
||||||
mask="#####"
|
mask="#####"
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
validationRules="zip-code-required|zip-code-format"
|
validationRules="zip-code-required|zip-code-format" />
|
||||||
class="mb-4" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -362,3 +357,12 @@ export default {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.textbox-question {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.dropdown-question {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
id="sub-header"
|
id="sub-header"
|
||||||
cmsWidgetName="SiteSubHeaderWidget"
|
cmsWidgetName="SiteSubHeaderWidget"
|
||||||
class="mt-4" />
|
class="mt-4" />
|
||||||
<div class="row mb-4">
|
<div class="row">
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<textboxQuestion
|
<textboxQuestion
|
||||||
ref="policyHolderFirstName"
|
ref="policyHolderFirstName"
|
||||||
|
|
@ -36,8 +36,8 @@
|
||||||
:validationRules="rules.lastName" />
|
:validationRules="rules.lastName" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-4">
|
<div class="row">
|
||||||
<div class="col-md-8">
|
<div class="col-lg-8">
|
||||||
<textboxQuestion
|
<textboxQuestion
|
||||||
ref="phoneNumber"
|
ref="phoneNumber"
|
||||||
v-model="customerQuestions.phoneNumber"
|
v-model="customerQuestions.phoneNumber"
|
||||||
|
|
@ -48,13 +48,14 @@
|
||||||
:mask="phoneMask"
|
:mask="phoneMask"
|
||||||
disableAutoFill />
|
disableAutoFill />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-lg-4">
|
||||||
<textboxQuestion
|
<textboxQuestion
|
||||||
ref="extension"
|
ref="extension"
|
||||||
v-model="customerQuestions.extension"
|
v-model="customerQuestions.extension"
|
||||||
inputId="extensionField"
|
inputId="extensionField"
|
||||||
cmsWidgetName="ExtensionQuestion"
|
cmsWidgetName="ExtensionQuestion"
|
||||||
:validationRules="rules.extension"
|
:validationRules="rules.extension"
|
||||||
|
maxLength="5"
|
||||||
disableAutoFill />
|
disableAutoFill />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -65,8 +66,7 @@
|
||||||
cmsWidgetName="EmailAddressQuestion"
|
cmsWidgetName="EmailAddressQuestion"
|
||||||
:validationRules="rules.email"
|
:validationRules="rules.email"
|
||||||
isRequired
|
isRequired
|
||||||
disableAutoFill
|
disableAutoFill />
|
||||||
class="mb-4" />
|
|
||||||
<addressQuestions
|
<addressQuestions
|
||||||
id="address-questions-wrapper"
|
id="address-questions-wrapper"
|
||||||
ref="addressQuestions"
|
ref="addressQuestions"
|
||||||
|
|
@ -228,4 +228,10 @@ export default {
|
||||||
#address-questions-wrapper .form-test-error {
|
#address-questions-wrapper .form-test-error {
|
||||||
line-height: 24px;
|
line-height: 24px;
|
||||||
}
|
}
|
||||||
|
.textbox-question {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
|
.dropdown-question {
|
||||||
|
margin-bottom: 1.25rem;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@
|
||||||
inputId="extension"
|
inputId="extension"
|
||||||
:cmsWidgetName="widget.extensionQuestion"
|
:cmsWidgetName="widget.extensionQuestion"
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
|
maxLength="5"
|
||||||
:validationRules="rules.extension" />
|
:validationRules="rules.extension" />
|
||||||
</template>
|
</template>
|
||||||
</modal>
|
</modal>
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,7 @@
|
||||||
inputId="extensionField"
|
inputId="extensionField"
|
||||||
cmsWidgetName="ExtensionQuestion"
|
cmsWidgetName="ExtensionQuestion"
|
||||||
:validationRules="rules.extension"
|
:validationRules="rules.extension"
|
||||||
|
maxLength="5"
|
||||||
disableAutoFill
|
disableAutoFill
|
||||||
class="form-group" />
|
class="form-group" />
|
||||||
<textboxQuestion
|
<textboxQuestion
|
||||||
|
|
|
||||||
|
|
@ -2293,7 +2293,8 @@ export const useMainStore = defineStore({
|
||||||
this.order.serviceLocation.zipCode = welcomePageModel?.policyZipCode;
|
this.order.serviceLocation.zipCode = welcomePageModel?.policyZipCode;
|
||||||
this.updatePhoneNumbers({
|
this.updatePhoneNumbers({
|
||||||
home: welcomePageModel?.phoneNumber,
|
home: welcomePageModel?.phoneNumber,
|
||||||
service: welcomePageModel?.phoneNumber
|
service: welcomePageModel?.phoneNumber,
|
||||||
|
extension: welcomePageModel?.extension
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
updatePolicyHolderDetails(customerQuestions) {
|
updatePolicyHolderDetails(customerQuestions) {
|
||||||
|
|
@ -2305,6 +2306,11 @@ export const useMainStore = defineStore({
|
||||||
this.order.customer.firstName = customerQuestions.firstName;
|
this.order.customer.firstName = customerQuestions.firstName;
|
||||||
this.order.customer.lastName = customerQuestions.lastName;
|
this.order.customer.lastName = customerQuestions.lastName;
|
||||||
this.order.customer.emailAddress = customerQuestions.email;
|
this.order.customer.emailAddress = customerQuestions.email;
|
||||||
|
this.updatePhoneNumbers({
|
||||||
|
home: customerQuestions.phoneNumber,
|
||||||
|
service: customerQuestions.phoneNumber,
|
||||||
|
extension: customerQuestions.extension
|
||||||
|
});
|
||||||
this.order.serviceLocation.zipCode = customerQuestions.addressQuestions.zipCode;
|
this.order.serviceLocation.zipCode = customerQuestions.addressQuestions.zipCode;
|
||||||
},
|
},
|
||||||
updateIsSafeliteProvider(isSafelite) {
|
updateIsSafeliteProvider(isSafelite) {
|
||||||
|
|
|
||||||
|
|
@ -22,44 +22,6 @@ body {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
padding: 0 1.5rem;
|
padding: 0 1.5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set max-width on columns to prevent overly-wide
|
|
||||||
// components on extra wide screens.
|
|
||||||
.col-md-6 {
|
|
||||||
max-width: 472px;
|
|
||||||
|
|
||||||
@include media-breakpoint-up(xl) {
|
|
||||||
max-width: 708px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.col {
|
|
||||||
max-width: 236px;
|
|
||||||
|
|
||||||
&.one-list-card-width {
|
|
||||||
max-width: 472px;
|
|
||||||
|
|
||||||
@include media-breakpoint-up(xl) {
|
|
||||||
max-width: 66.6666666%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.shop-question {
|
|
||||||
.col {
|
|
||||||
max-width: 472px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.col-xl-4 {
|
|
||||||
max-width: 472px;
|
|
||||||
|
|
||||||
.col {
|
|
||||||
max-width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//END set max-width on columns
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.pointer {
|
.pointer {
|
||||||
|
|
@ -156,6 +118,10 @@ body {
|
||||||
width: 46.25rem; // 740px
|
width: 46.25rem; // 740px
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@include media-breakpoint-up(lg) {
|
||||||
|
width: 60rem; // 960px
|
||||||
|
}
|
||||||
|
|
||||||
@include media-breakpoint-up(xl) {
|
@include media-breakpoint-up(xl) {
|
||||||
width: 63.75rem; // 1020px
|
width: 63.75rem; // 1020px
|
||||||
}
|
}
|
||||||
|
|
@ -166,7 +132,7 @@ body {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
@include media-breakpoint-up(md) {
|
@include media-breakpoint-up(lg) {
|
||||||
width: 58.33333333%;
|
width: 58.33333333%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -194,7 +194,9 @@ $spacers: (
|
||||||
//Bootstrap Grid Breakpoints - Use these breakpoints only
|
//Bootstrap Grid Breakpoints - Use these breakpoints only
|
||||||
$grid-breakpoints: (
|
$grid-breakpoints: (
|
||||||
xs: 0,
|
xs: 0,
|
||||||
|
sm: 576px,
|
||||||
md: 768px,
|
md: 768px,
|
||||||
|
lg: 992px,
|
||||||
xl: 1200px,
|
xl: 1200px,
|
||||||
xxl: 1440px,
|
xxl: 1440px,
|
||||||
);
|
);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue