Merging from develop, fixed merge conflict
This commit is contained in:
commit
7d0c925578
8 changed files with 81 additions and 44 deletions
|
|
@ -128,3 +128,44 @@ stages:
|
||||||
__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__: $(__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__)
|
__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__: $(__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__)
|
||||||
__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__: $(__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__)
|
__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__: $(__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__)
|
||||||
cfDistributionId: $(cfDistributionId)
|
cfDistributionId: $(cfDistributionId)
|
||||||
|
|
||||||
|
# Prod Build/Deploy
|
||||||
|
- stage: Prod
|
||||||
|
condition: eq(variables['Build.SourceBranch'], variables['prod-branch'] )
|
||||||
|
variables:
|
||||||
|
- group: FixMyGlassProd
|
||||||
|
jobs:
|
||||||
|
- deployment: prodBuildDeployment
|
||||||
|
displayName: Build and Deploy FMG - Prod
|
||||||
|
environment: digitalCloud-prod
|
||||||
|
container: node
|
||||||
|
workspace:
|
||||||
|
clean: all
|
||||||
|
strategy:
|
||||||
|
runOnce:
|
||||||
|
deploy:
|
||||||
|
steps:
|
||||||
|
- checkout: self
|
||||||
|
clean: true
|
||||||
|
- template: templates/digital/step-build-vue.yml@AzureDevOps
|
||||||
|
parameters:
|
||||||
|
buildOutputDir: dist
|
||||||
|
- template: templates/digital/step-deploy-vue.yml@AzureDevOps
|
||||||
|
parameters:
|
||||||
|
artifactName: vueDist
|
||||||
|
awsProfile: $(prodDeploymentProfile)
|
||||||
|
outputPath: /fmg/
|
||||||
|
deployBuckets:
|
||||||
|
safelite-prod-fmg-us-east-1:
|
||||||
|
clearFolder: true
|
||||||
|
deployFolder: ''
|
||||||
|
region: us-east-1
|
||||||
|
appDeployVariables:
|
||||||
|
__VUE_APP_CONSUMER_CF_DISTRO__: $(__VUE_APP_CONSUMER_CF_DISTRO__)
|
||||||
|
__VUE_APP_GOOGLE_PLACES_API_KEY__: $(__VUE_APP_GOOGLE_PLACES_API_KEY__)
|
||||||
|
__VUE_APP_HERITAGE_FUNNEL__: $(__VUE_APP_HERITAGE_FUNNEL__)
|
||||||
|
__VUE_APP_CURRENT_ENVIRONMENT__: $(__VUE_APP_CURRENT_ENVIRONMENT__)
|
||||||
|
indexDeployVariables:
|
||||||
|
__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__: $(__VUE_APP_GOOGLE_TAG_MANAGER_SCRIPT_BODY__)
|
||||||
|
__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__: $(__VUE_APP_GOOGLE_TAG_MANAGER_NOSCRIPT_FRAME_SRC__)
|
||||||
|
cfDistributionId: $(cfDistributionId)
|
||||||
1
src/assets/img/FMGTransitionAnimation.svg
Normal file
1
src/assets/img/FMGTransitionAnimation.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 24 KiB |
|
|
@ -41,7 +41,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</div>
|
</div>
|
||||||
<div class="row form-test-error">
|
<div class="row form-test-error">
|
||||||
<error-message class="mt-2" :name="groupName" v-if="!suppressError"></error-message>
|
<error-message :name="groupName" v-if="!suppressError"></error-message>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -3,14 +3,7 @@
|
||||||
<div class="loading-modal">
|
<div class="loading-modal">
|
||||||
<section class="loading-modal-body">
|
<section class="loading-modal-body">
|
||||||
<div class="modal-icon-container text-center">
|
<div class="modal-icon-container text-center">
|
||||||
<img class="loader-gif" alt="Loading" src="@/assets/img/loader.gif">
|
<img class="" alt="Loading" src="@/assets/img/FMGTransitionAnimation.svg">
|
||||||
<img class="modal-icon" alt="" src="@/assets/img/windshield.png">
|
|
||||||
</div>
|
|
||||||
<div class="text-center fw-bold fs-5 loading-modal-text">
|
|
||||||
Please wait...
|
|
||||||
</div>
|
|
||||||
<div class="text-center fs-5 loading-modal-text">
|
|
||||||
This process can take up to 20 seconds.
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -60,23 +53,15 @@
|
||||||
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
|
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
top: 48px;
|
top: 48px;
|
||||||
height: 246px;
|
height: 186px;
|
||||||
width: 327px;
|
width: 327px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.loading-modal-body {
|
|
||||||
position: relative;
|
|
||||||
padding: 20px 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.loading-modal-text {
|
.loading-modal-text {
|
||||||
padding: 0 24px 0 24px;
|
padding: 0 24px 0 24px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.modal-icon-container {
|
.modal-icon-container {
|
||||||
position: relative;
|
|
||||||
width: 75px;
|
|
||||||
height: 75px;
|
|
||||||
margin: 15px auto;
|
margin: 15px auto;
|
||||||
padding-bottom: 26px;
|
padding-bottom: 26px;
|
||||||
}
|
}
|
||||||
|
|
@ -85,6 +70,8 @@
|
||||||
position: absolute;
|
position: absolute;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
border: 0;
|
border: 0;
|
||||||
|
width: 327px;
|
||||||
|
height: 186px;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
transform: translate(-50%, -50%);
|
transform: translate(-50%, -50%);
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
:class="[hasIcon ? 'has-icon' : '', iconRight ? 'icon-right' : '']"
|
:class="[hasIcon ? 'has-icon' : '', iconRight ? 'icon-right' : '']"
|
||||||
:validationRules="validationRules"
|
:validationRules="validationRules"
|
||||||
/>
|
/>
|
||||||
<div v-show="errorMessage" class="row mt-2 form-test-error">
|
<div v-show="errorMessage" class="row my-2 form-test-error">
|
||||||
<span role="alert">{{ errorMessage }}</span>
|
<span role="alert">{{ errorMessage }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -299,6 +299,7 @@ export default {
|
||||||
if (matchingCars.length === 1) {
|
if (matchingCars.length === 1) {
|
||||||
// and one and only of them matches the car id entered
|
// and one and only of them matches the car id entered
|
||||||
this.$refs.loadingModal.showModal();
|
this.$refs.loadingModal.showModal();
|
||||||
|
this.updateVehicleInfo(matchingCar.vin, matchingCar.vehicle);
|
||||||
navigateAfterSaveToHeritageFunnel(this.$route);
|
navigateAfterSaveToHeritageFunnel(this.$route);
|
||||||
} else {
|
} else {
|
||||||
// if there are no matches or there are multiple matches, navigate to "address-vehicles" page
|
// if there are no matches or there are multiple matches, navigate to "address-vehicles" page
|
||||||
|
|
|
||||||
|
|
@ -58,14 +58,14 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
v-if="noMatchAlert"
|
v-if="noMatchAlert"
|
||||||
alertClass="alert-warning"
|
alertClass="alert-warning"
|
||||||
cmsWidgetName="NoMatchAlertWidget"
|
cmsWidgetName="NoMatchAlertWidget"
|
||||||
/>
|
/>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
:manualHeadline="PerfectMatchNewVinAlertReadOnlyHeader"
|
:manualHeadline="PerfectMatchNewVinAlertReadOnlyHeader"
|
||||||
:manualCopy="PerfectMatchNewVinAlertReadOnlyBody"
|
:manualCopy="PerfectMatchNewVinAlertReadOnlyBody"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
|
|
@ -73,15 +73,15 @@
|
||||||
alertClass="alert-success"
|
alertClass="alert-success"
|
||||||
/>
|
/>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
:manualHeadline="MatchedDifferentVehicleAlertHeader"
|
:manualHeadline="MatchedDifferentVehicleAlertHeader"
|
||||||
:manualCopy="MatchedDifferentVehicleAlertBody"
|
:manualCopy="MatchedDifferentVehicleAlertBody"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
v-if="isCarIdDifferent"
|
v-if="isCarIdDifferent && !vinNotFound && !perfectMatchNewVinAlert"
|
||||||
alertClass="alert-warning"
|
alertClass="alert-warning"
|
||||||
/>
|
/>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
:manualHeadline="NoServiceZipHeader"
|
:manualHeadline="NoServiceZipHeader"
|
||||||
:manualCopy="NoServiceZipBody"
|
:manualCopy="NoServiceZipBody"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
|
|
@ -89,18 +89,19 @@
|
||||||
alertClass="alert-danger"
|
alertClass="alert-danger"
|
||||||
/>
|
/>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
v-if="vinNotFound"
|
v-if="vinNotFound"
|
||||||
alertClass="alert-danger"
|
alertClass="alert-danger"
|
||||||
cmsWidgetName="VinNotFound"
|
cmsWidgetName="VinNotFound"
|
||||||
/>
|
/>
|
||||||
<alert
|
<alert
|
||||||
class="my-3"
|
class="my-4"
|
||||||
|
:manualHeadline="PerfectMatchNewVinAlertHeader"
|
||||||
|
:manualCopy="PerfectMatchNewVinAlertBody"
|
||||||
v-model="customAlertData"
|
v-model="customAlertData"
|
||||||
v-if="perfectMatchNewVinAlert"
|
v-if="perfectMatchNewVinAlert && !noServiceZip && !vinNotFound && meta.valid"
|
||||||
alertClass="alert-success"
|
alertClass="alert-success"
|
||||||
cmsWidgetName="PerfectMatchNewVinAlert"
|
|
||||||
/>
|
/>
|
||||||
<funnelFooter
|
<funnelFooter
|
||||||
cmsWidgetName="FunnelFooterWidget"
|
cmsWidgetName="FunnelFooterWidget"
|
||||||
|
|
@ -139,7 +140,10 @@ import { Form, defineRule } from "vee-validate";
|
||||||
import { navigateAfterSaveToHeritageFunnel } from "@/helpers/heritage-integration/navigation-helper";
|
import { navigateAfterSaveToHeritageFunnel } from "@/helpers/heritage-integration/navigation-helper";
|
||||||
|
|
||||||
// DEFINE VALIDATION RULES
|
// DEFINE VALIDATION RULES
|
||||||
defineRule("zip-required", required(errorMessages.SERVICE_ZIP_REQUIRED));
|
defineRule(
|
||||||
|
"zip-required",
|
||||||
|
required(errorMessages.SERVICE_ZIP_REQUIRED)
|
||||||
|
);
|
||||||
defineRule(
|
defineRule(
|
||||||
"email-address-required",
|
"email-address-required",
|
||||||
required(errorMessages.EMAIL_ADDRESS_REQUIRED)
|
required(errorMessages.EMAIL_ADDRESS_REQUIRED)
|
||||||
|
|
@ -151,7 +155,10 @@ defineRule(
|
||||||
errorMessages.EMAIL_ADDRESS_FORMAT
|
errorMessages.EMAIL_ADDRESS_FORMAT
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
defineRule("vin-required", required(errorMessages.VIN_REQUIRED));
|
defineRule(
|
||||||
|
"vin-required",
|
||||||
|
required(errorMessages.VIN_REQUIRED)
|
||||||
|
);
|
||||||
defineRule(
|
defineRule(
|
||||||
"vin-format",
|
"vin-format",
|
||||||
regex(/^[A-HJ-NPR-Z0-9]{17}$/, errorMessages.VIN_FORMAT)
|
regex(/^[A-HJ-NPR-Z0-9]{17}$/, errorMessages.VIN_FORMAT)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue