diff --git a/jest.config.js b/jest.config.js index 017648108..c5309b45d 100644 --- a/jest.config.js +++ b/jest.config.js @@ -24,7 +24,6 @@ module.exports = { "!src/layouts/address-vehicles/address-vehicles-question/address-vehicles-question.vue", "!src/ux-components/alert\alert.vue", "!src/helpers/validation-rules.js", - "!src/common-components/question-chain/question-chain", // END ], // ! means exclude from coverage. testMatch: ["**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)"], diff --git a/src/common-components/button-question/button-question.spec.js b/src/common-components/button-question/button-question.spec.js index 9cf75368e..b70304035 100644 --- a/src/common-components/button-question/button-question.spec.js +++ b/src/common-components/button-question/button-question.spec.js @@ -112,8 +112,7 @@ describe("buttonQuestion.vue", () => { const wrapper = shallowMount(buttonQuestion, setupMocks({})); await wrapper.setProps({ answers: ["2022", "2021", "2020"], - isMultiSelect: false, - modelValue: [] + isMultiSelect: false }); const val = { checkValue: true, value: "2021", } wrapper.vm.handleCheckedChanged(val); diff --git a/src/common-components/button-question/button-question.vue b/src/common-components/button-question/button-question.vue index 7bf4d56c8..07efe470e 100644 --- a/src/common-components/button-question/button-question.vue +++ b/src/common-components/button-question/button-question.vue @@ -36,7 +36,6 @@ data-test="button" :validationRules="validationRules" :class="[suppressError ? 'alertError' : '']" - :clearOnUnmount="clearOnUnmount" /> @@ -85,10 +84,6 @@ export default { validationRules: String, suppressError: Boolean, useTextForValue: Boolean, - clearOnUnmount: { - type: Boolean, - default: true - } }, computed: { getFieldSetClasses() { @@ -138,14 +133,17 @@ export default { return answer.Name ? answer.Name : answer; }, handleCheckedChanged(val) { - if(this.selectingInitiatesLoad) { - this.selectedValues = [val.value]; - } else { + + if(this.isMultiSelect && this.selectedValues) { + // Add or remove item to array of data to emit + const newSelectedValues = this.selectedValues; + if(Array.isArray(this.selectedValues)) { - const newSelectedValues = this.selectedValues; val.checkValue ? newSelectedValues.push(val.value) : newSelectedValues.splice(newSelectedValues.indexOf(val.value), 1); this.selectedValues = newSelectedValues; } + } else { + this.selectedValues = [val.value]; } }, }, diff --git a/src/common-components/question-chain/question-chain.vue b/src/common-components/question-chain/question-chain.vue deleted file mode 100644 index d605d7fde..000000000 --- a/src/common-components/question-chain/question-chain.vue +++ /dev/null @@ -1,119 +0,0 @@ - - - \ No newline at end of file diff --git a/src/ux-components/list-button-horizontal/list-button-horizontal.vue b/src/ux-components/list-button-horizontal/list-button-horizontal.vue index dfd322cb3..eef4be443 100644 --- a/src/ux-components/list-button-horizontal/list-button-horizontal.vue +++ b/src/ux-components/list-button-horizontal/list-button-horizontal.vue @@ -78,10 +78,6 @@ export default { validationRules: String, selectedValues: [Array, String], hasError: Boolean, - clearOnUnmount: { - type: Boolean, - default: true - } }, data() { return { @@ -96,11 +92,9 @@ export default { : this.selectedValues[0]; } }, - unmounted() { // needed to clear this button's selectedValues if it is removed to keep validation in sync - if (this.clearOnUnmount) { - this.checkValue = false; - this.handleCheckChange(); - } + unmounted() { // needed to clear this button's selectedValues if it is removed + this.checkValue = false; + this.handleCheckChange(); }, methods: { displayLoader() { diff --git a/src/ux-components/list-button/list-button.vue b/src/ux-components/list-button/list-button.vue index 861619093..f09384934 100644 --- a/src/ux-components/list-button/list-button.vue +++ b/src/ux-components/list-button/list-button.vue @@ -78,10 +78,6 @@ export default { validationRules: String, selectedValues: [Array, String], hasError: Boolean, - clearOnUnmount: { - type: Boolean, - default: true - } }, data() { return { @@ -96,11 +92,9 @@ export default { : this.selectedValues[0]; } }, - unmounted() { // needed to clear this button's selectedValues if it is removed to keep validation in sync - if (this.clearOnUnmount) { - this.checkValue = false; - this.handleCheckChange(); - } + unmounted() { // needed to clear this button's selectedValues if it is removed + this.checkValue = false; + this.handleCheckChange(); }, methods: { displayLoader() { diff --git a/src/ux-components/list-card/list-card.vue b/src/ux-components/list-card/list-card.vue index 88aad0b6a..264d7c299 100644 --- a/src/ux-components/list-card/list-card.vue +++ b/src/ux-components/list-card/list-card.vue @@ -86,10 +86,6 @@ export default { selectedValues: [Array, String], modelValue: Object, hasError: Boolean, - clearOnUnmount: { - type: Boolean, - default: true - } }, data() { return { @@ -103,11 +99,9 @@ export default { : this.selectedValues[0]; } }, - unmounted() { // needed to clear this button's selectedValues if it is removed to keep validation in sync - if (this.clearOnUnmount) { - this.checkValue = false; - this.handleCheckChange(); - } + unmounted() { // needed to clear this button's selectedValues if it is removed + this.checkValue = false; + this.handleCheckChange(); }, computed: { getLabelClasses() {