diff --git a/.eslintrc.js b/.eslintrc.js
index 7187e7e5..3ced6a6d 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -23,7 +23,7 @@ module.exports = {
'implicit-arrow-linebreak': ['off'],
'comma-dangle': ['error', 'never'],
indent: ['error', 4, { SwitchCase: 1 }],
- 'max-len': ['error', { code: 140 }],
+ 'max-len': ['error', { code: 160 }],
'no-plusplus': ['error', { allowForLoopAfterthoughts: true }],
'vue/html-indent': 'off',
'vue/html-closing-bracket-newline': ['error', {
diff --git a/package-lock.json b/package-lock.json
index 07bc00f7..7d879e6c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -67,7 +67,7 @@
"typescript-eslint": "^8.11.0",
"vite": "^6.4.1",
"vitest": "^3.2.4",
- "volar-service-vetur": "*",
+ "volar-service-vetur": "latest",
"wait-on": "^8.0.2"
}
},
diff --git a/src/App.vue b/src/App.vue
index 3f54962a..81e59a4e 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -7,6 +7,7 @@
+
import loadingModal from '@/iss-components/loading-modal/loading-modal.vue';
import showIssLoadingModal from '@/helpers/loading-modal-helper.js';
+import footerMenu from '@/iss-components/footer-menu/footer-menu.vue';
export default {
name: 'app',
components: {
+ footerMenu,
loadingModal
},
setup() {
@@ -45,15 +48,15 @@ window.onerror = (msg, url, line, col, error) => {
// Note that col & error are new to the HTML 5 spec and may not be
// supported in every browser. It worked for me in Chrome.
global.$logger.logError(msg, {
- url: url,
- line: line,
- column: col ?? "",
- error: error ?? "",
+ url,
+ line,
+ column: col ?? '',
+ error: error ?? ''
});
// If you return true, then error alerts (like in older versions of
// Internet Explorer) will be suppressed.
- var suppressErrorAlert = true;
+ const suppressErrorAlert = true;
return suppressErrorAlert;
};
diff --git a/src/assets/img/powered-by-safelite-solutions.svg b/src/assets/img/powered-by-safelite-solutions.svg
new file mode 100644
index 00000000..ec8d5554
--- /dev/null
+++ b/src/assets/img/powered-by-safelite-solutions.svg
@@ -0,0 +1,26 @@
+
diff --git a/src/iss-components/footer-menu/footer-menu.vue b/src/iss-components/footer-menu/footer-menu.vue
new file mode 100644
index 00000000..738c0507
--- /dev/null
+++ b/src/iss-components/footer-menu/footer-menu.vue
@@ -0,0 +1,143 @@
+
+
+
+
+
+
diff --git a/src/iss-components/questions-page-layout/questions-page-layout.spec.js b/src/iss-components/questions-page-layout/questions-page-layout.spec.js
index ebfb53ac..855ae439 100644
--- a/src/iss-components/questions-page-layout/questions-page-layout.spec.js
+++ b/src/iss-components/questions-page-layout/questions-page-layout.spec.js
@@ -19,60 +19,6 @@ jest.mock('@/helpers/cms-content-helper', () => ({
}));
function setupMocks() {
- // TODO: Use or delete these
- const unused1 = () => ({
- partsOrQuestions: [
- {
- parts: null,
- partQuestions: [
- {
- questionSequence: 1,
- questionText:
- 'Is your vehicle equipped with the Panoramic Sunroof which can be identified by having a glass panel over the rear seats?',
- answers: [
- {
- answerResult: '',
- answerText: 'Yes',
- nextQuestionSequence: 2
- },
- {
- answerResult: '',
- answerText: 'No',
- nextQuestionSequence: 3
- }
- ]
- }
- ],
- glassLocation: 'Windshield',
- glassName: 'Single',
- answerKey: 'Windshield-Single',
- answerData: null
- }
- ]
- });
- const unused2 = () => ({
- partsQuestionAnswers: [
- {
- glassLocation: 'Windshield',
- glassName: 'Single',
- result: 'FW04848',
- answeredQuestions: [
- {
- questionText:
- 'Is your vehicle equipped with the Panoramic Sunroof which can be identified by having a glass panel over the rear seats?',
- selectedAnswerText: 'Yes',
- questionNum: 1
- },
- {
- questionText:
- 'Is your vehicle equipped with a heated windshield that melts snow and ice from underneath the windshield wiper blades?',
- selectedAnswerText: 'Yes',
- questionNum: 2
- }
- ]
- }
- ]
- });
const mountOptions = getMountOptions({
mixins: [baseMixin, vehicleQuestionsMixin]
});
diff --git a/src/iss-components/questions-page-layout/questions-page-layout.vue b/src/iss-components/questions-page-layout/questions-page-layout.vue
index 999c3385..6be20312 100644
--- a/src/iss-components/questions-page-layout/questions-page-layout.vue
+++ b/src/iss-components/questions-page-layout/questions-page-layout.vue
@@ -1,18 +1,13 @@
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
+
// Components
import siteHeader from '@/iss-components/site-header/site-header.vue';
-import vehicleBanner from '@/iss-components/vehicle-banner/vehicle-banner.vue';
import alert from '@/ux-components/alert/alert.vue';
import questionChain from '@/digital-components/question-chain/question-chain.vue';
import siteSubHeader from '@/iss-components/site-sub-header/site-sub-header.vue';
import siteFooter from '@/iss-components/site-footer/site-footer.vue';
-import loadingModal from '@/iss-components/loading-modal/loading-modal.vue';
export default {
name: 'questions-page',
components: {
siteHeader,
- vehicleBanner,
alert,
questionChain,
siteSubHeader,
- siteFooter,
- loadingModal,
+ siteFooter
},
props: {
isMetaValid: Boolean,
@@ -74,7 +65,7 @@ export default {
validationRules: String,
modelValue: Object,
loadingText: Array,
- index: Number,
+ index: Number
},
emits: ['update:modelValue', 'forwardButtonAction', 'back-click'],
computed: {
@@ -84,16 +75,16 @@ export default {
},
set(newValue) {
this.$emit('update:modelValue', newValue);
- },
- },
+ }
+ }
},
methods: {
showThisQuestionChain(glass, i) {
// return false if no questions or if suppressed
if (
- !glass.questions ||
- glass.questions?.length < 1 ||
- glass.isSuppressedPart
+ !glass.questions
+ || glass.questions?.length < 1
+ || glass.isSuppressedPart
) {
return false;
}
@@ -106,15 +97,21 @@ export default {
},
handleBackButtonAction() {
this.$emit('back-click');
- },
- showLoadingModal() {
- this.$refs.loadingModal.showModal();
- },
- },
+ }
+ }
};
diff --git a/src/iss-components/site-footer/site-footer.vue b/src/iss-components/site-footer/site-footer.vue
index fd41ea76..1cf0f21e 100644
--- a/src/iss-components/site-footer/site-footer.vue
+++ b/src/iss-components/site-footer/site-footer.vue
@@ -49,7 +49,6 @@
diff --git a/src/iss-components/site-sub-header/site-sub-header.vue b/src/iss-components/site-sub-header/site-sub-header.vue
index 34b4bbd8..b58be168 100644
--- a/src/iss-components/site-sub-header/site-sub-header.vue
+++ b/src/iss-components/site-sub-header/site-sub-header.vue
@@ -1,10 +1,10 @@