diff --git a/package-lock.json b/package-lock.json index d9fa7874..3eaedf24 100644 --- a/package-lock.json +++ b/package-lock.json @@ -52,7 +52,6 @@ "concurrently": "^9.1.2", "dotenv-safe": "^9.1.0", "eslint": "^9.39.2", - "eslint-import-resolver-alias": "^1.1.2", "eslint-plugin-import": "^2.32.0", "eslint-plugin-jsdoc": "^61.5.0", "eslint-plugin-vue": "^10.6.2", @@ -9377,19 +9376,6 @@ "eslint": ">=7.0.0" } }, - "node_modules/eslint-import-resolver-alias": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-alias/-/eslint-import-resolver-alias-1.1.2.tgz", - "integrity": "sha512-WdviM1Eu834zsfjHtcGHtGfcu+F30Od3V7I9Fi57uhBEwPkjDcii7/yW8jAT+gOhn4P/vOxxNAXbFAKsrrc15w==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - }, - "peerDependencies": { - "eslint-plugin-import": ">=1.4.0" - } - }, "node_modules/eslint-import-resolver-node": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", diff --git a/src/helpers/text-helper.js b/src/helpers/text-helper.js index 1b54084f..379fa56e 100644 --- a/src/helpers/text-helper.js +++ b/src/helpers/text-helper.js @@ -133,3 +133,20 @@ export function formatDate(date, formatter) { } return ''; } + +/** + * @function toPossessive + * @param {string | null} input + * @returns {string} + */ +export function toPossessive(input) { + if (input == null || input.trim().length === 0) { + return input; + } + + if (input.toLowerCase().endsWith("s")) { + return `${input}'` + } + + return `${input}'s` +} \ No newline at end of file diff --git a/src/iss-components/shop-list-button/shop-list-button.vue b/src/iss-components/shop-list-button/shop-list-button.vue index 67091bde..b7ffff54 100644 --- a/src/iss-components/shop-list-button/shop-list-button.vue +++ b/src/iss-components/shop-list-button/shop-list-button.vue @@ -123,7 +123,6 @@ $heritage-checked-border-color: #0070d1; &:checked + .list-button-content { background: $background-color-selected; border-color: $heritage-checked-border-color; - box-shadow: 0 0 0 1px $blue; .button-label-copy { font-weight: 500; color: $black; diff --git a/src/layouts/entry-page/entry-page.spec.js b/src/layouts/entry-page/entry-page.spec.js index afa28c8d..ee238737 100644 --- a/src/layouts/entry-page/entry-page.spec.js +++ b/src/layouts/entry-page/entry-page.spec.js @@ -144,6 +144,7 @@ describe('entry-page.vue', () => { TPAEnabled: true, ClientFullName: 'Full Name', ClientDisplayName: 'Display Name', + ClientPossessiveName: 'Display Name\'s', ClaimRegistrationRequired: true, EnableNoCompQuote: true }) @@ -153,6 +154,7 @@ describe('entry-page.vue', () => { expect(issConfig.clientName).toBe('TestClient'); expect(issConfig.clientFullName).toBe('Full Name'); expect(issConfig.clientDisplayName).toBe('Display Name'); + expect(issConfig.clientPossessiveName).toBe('Display Name\'s'); expect(issConfig.parentAccountNumber).toBe('12345'); expect(issConfig.styleSheet).toBe('test-style'); expect(issConfig.isCoverageEnabled).toBe(true); diff --git a/src/layouts/entry-page/entry-page.vue b/src/layouts/entry-page/entry-page.vue index 3918dc33..e9880117 100644 --- a/src/layouts/entry-page/entry-page.vue +++ b/src/layouts/entry-page/entry-page.vue @@ -14,6 +14,7 @@ import { getISSCookie, updateOrCreateISSCookie } from '@/helpers/cookie-helper.j import { useMainStore } from '@/store'; import showIssLoadingModal from '@/helpers/loading-modal-helper'; import applicationConfig from '@/constants/application-config'; +import { toPossessive } from '@/helpers/text-helper'; export default { name: 'entry-page', @@ -144,6 +145,7 @@ export default { this.mainStore.issConfig.clientName = data.accountName; this.mainStore.issConfig.clientFullName = data.accountName; // Defaults to use the client name. this.mainStore.issConfig.clientDisplayName = data.accountName; // Defaults to use the client name. + this.mainStore.issConfig.clientPossessiveName = toPossessive(data.accountName); // Defaults to use the client name. this.mainStore.issConfig.parentAccountNumber = data.parentAccountNumber; this.mainStore.issConfig.styleSheet = data.styleSheet; this.mainStore.issConfig.isCoverageEnabled = data.coverageEnabled; @@ -163,6 +165,11 @@ export default { if (clientFlags.ClientDisplayName != null) { this.mainStore.issConfig.clientDisplayName = clientFlags.ClientDisplayName; + this.mainStore.issConfig.clientPossessiveName = toPossessive(clientFlags.ClientDisplayName); + } + + if (clientFlags.ClientPossessiveName != null) { + this.mainStore.issConfig.clientPossessiveName = clientFlags.ClientPossessiveName; } if (clientFlags.ClaimRegistrationRequired) { diff --git a/src/layouts/license-plate-lookup/license-plate-lookup.vue b/src/layouts/license-plate-lookup/license-plate-lookup.vue index c7eab0f8..ac6bb727 100644 --- a/src/layouts/license-plate-lookup/license-plate-lookup.vue +++ b/src/layouts/license-plate-lookup/license-plate-lookup.vue @@ -14,6 +14,24 @@ cmsWidgetName="SiteSubHeaderWidget" class="mt-4" subHeaderMarginClasses="mt-1" /> + + - - - + ({ clientName: 'Generic Insurance', // this is the default and will be overriden by the client's name clientFullName: 'Generic Insurance', // this is the default and will be overriden by the client's name or client's full name. clientDisplayName: 'Generic Insurance', // this is the default and will be overridden by the client's name or client display name. + clientPossessiveName: 'Generic Insurance\'s', // this is the default and will be overridden by the client's name or client display name converted to possessive or the clients possessive name. clientHeader: {}, styleSheet: '', // Stylesheet used by the client. parentAccountNumber: 0, // Parent account number used by the client.