diff --git a/src/layouts/vehicle-damage/windshield-options/windshield-options.vue b/src/layouts/vehicle-damage/windshield-options/windshield-options.vue index edfe09dd3..ce940e5a1 100644 --- a/src/layouts/vehicle-damage/windshield-options/windshield-options.vue +++ b/src/layouts/vehicle-damage/windshield-options/windshield-options.vue @@ -26,7 +26,7 @@ isMultiSelect groupName="WindshieldReplaceOptions" v-model="selectedWindshieldReplaceOptionsValues" - validationRules="windshield-replace-options-required|preventSplitAndSingleTogether" + validationRules="windshield-replace-options-required|prevent-split-and-single-together" :suppressError="hasSplitSingleConflict" /> { +defineRule("check-for-repair-and-replace", (value, [otherFieldValue]) => { if (value.toString().toUpperCase().includes(damageLocationsSelected.REPAIR.toUpperCase()) && otherFieldValue.toString().toUpperCase().includes(damageLocationsSelected.WINDSHIELD.toUpperCase()) && Array.isArray(otherFieldValue) && @@ -66,13 +66,13 @@ defineRule("checkForRepairAndReplace", (value, [otherFieldValue]) => { } return true; }); -defineRule("repairOnly", (value) => { +defineRule("repair-only", (value) => { if (value.toString().toUpperCase() === damageLocationsSelected.REPAIR.toUpperCase()) { return true; } return false; }); -defineRule("preventSplitAndSingleTogether", (value) => { +defineRule("prevent-split-and-single-together", (value) => { if (value.toString().toUpperCase().includes(damageLocationsSelected.SINGLE.toUpperCase()) && (value.toString().toUpperCase().includes(damageLocationsSelected.DRIVER.toUpperCase()) || value.toString().toUpperCase().includes(damageLocationsSelected.PASSENGER.toUpperCase()))) @@ -184,10 +184,10 @@ export default ({ }, windshieldDamageTypeQuestionValidationRules() { // Note: the validation rules string is not dynamic (it cannot be changed once component has been created) - let validationRules = "windshield-damage-type-required|checkForRepairAndReplace:@DamageLocationQuestion"; + let validationRules = "windshield-damage-type-required|check-for-repair-and-replace:@DamageLocationQuestion"; // if vehicle has no windshield replacement option if (!this.isWindshieldReplaceAvailable) { - validationRules = validationRules.concat('|repairOnly'); + validationRules = validationRules.concat('|repair-only'); } return validationRules; } diff --git a/src/styles/common-error-styles.scss b/src/styles/common-error-styles.scss index 42c8e499c..d4dc8244a 100644 --- a/src/styles/common-error-styles.scss +++ b/src/styles/common-error-styles.scss @@ -1,15 +1,18 @@ .has-error { &.list-button, &.list-card { - border: 1px solid $gray-500; + border: 1px solid $red; color: $red; label { box-shadow: 0 0 1px $red; border-radius: .5rem; } + input[type=checkbox]:focus + label, + input[type=radio]:focus + label { + box-shadow: 0 0 0 2.5px $red; + } } - input[type=checkbox]:focus + label, - input[type=radio]:focus + label, + input[type=checkbox]:checked + label, input[type=radio]:checked + label { box-shadow: 0 0 0 2.5px transparent !important; @@ -19,6 +22,10 @@ label { border: 1px solid $red; } + input[type=checkbox]:focus + label, + input[type=radio]:focus + label { + box-shadow: 0 0 0 2.5px $red; + } } &.ui-radio, &.ui-checkbox { diff --git a/src/ux-components/list-card/list-card.vue b/src/ux-components/list-card/list-card.vue index d3a1fc712..a9755904e 100644 --- a/src/ux-components/list-card/list-card.vue +++ b/src/ux-components/list-card/list-card.vue @@ -209,17 +209,23 @@ export default { } } - &:focus + label { - box-shadow: 0 0 0 2.5px $blue; - border-radius: 0.5rem; - } - &:checked + label { background: $blue-100; box-shadow: 0 0 0 1px $blue; border-radius: 0.5rem; } + &:focus + label { + box-shadow: 0 0 0 2.5px $blue; + border-radius: 0.5rem; + } + + &:checked { + &:focus + label { + box-shadow: 0 0 0 2.5px $blue; + } + } + &:checked + label { p { color: $black;