revert maxes changes

This commit is contained in:
FrankRua 2022-02-23 15:56:03 -05:00
parent 213090b863
commit 8e1c5fef34
2 changed files with 130 additions and 125 deletions

View file

@ -1,5 +1,5 @@
<template> <template>
<div :class="isOverflowScrollable ? 'button_question' : ''"> <div :class="isOverflowScrollable ? 'button_question' : ''">
<div v-if="questionText" class="d-flex"> <div v-if="questionText" class="d-flex">
<span :class="[buttonType === 'radio' ? ['mb-0', 'text-left', 'mt-2' ] : ['mb-4', 'mt-6', 'text-center'], 'fs-6 fw-bold w-100' ]">{{ questionText }}</span> <span :class="[buttonType === 'radio' ? ['mb-0', 'text-left', 'mt-2' ] : ['mb-4', 'mt-6', 'text-center'], 'fs-6 fw-bold w-100' ]">{{ questionText }}</span>
</div> </div>
@ -7,23 +7,46 @@
<fieldset class="w-100" :class="getFieldSetClasses" role="radiogroup" :aria-labelledby="groupName ? groupName + '-radio-group' : ''"> <fieldset class="w-100" :class="getFieldSetClasses" role="radiogroup" :aria-labelledby="groupName ? groupName + '-radio-group' : ''">
<legend class="sr-only">{{groupName}}</legend> <legend class="sr-only">{{groupName}}</legend>
<div :class="getComponentWrapperClasses"> <div :class="getComponentWrapperClasses">
<component :is="buttonType" v-for="answer in answers" :key="answer.Name ? answer.Name : answer" @isCheckedChanged="handleCheckedChanged" :buttonID="answer.Name ? groupName + '-' + answer.Name : groupName + '-' + answer" :value="answer.Name ? answer.Name : answer" :buttonLabel="answer.Text ? answer.Text : answer" :buttonLabelSubCopy="answer.SubText" :textPosition="textPosition" :isMultiSelect="isMultiSelect" :groupName="groupName" :selectingInitiatesLoad="selectingInitiatesLoad" :loaderColor="loaderColor" :loaderPosition="loaderPosition" :isWide=isWide :isRequired=isRequired :buttonImage="answer.AnswerImageUrl" :buttonImageId="answer.ImageId" :altText="answer.Name ? answer.Name : answer" screenReaderOnlyText="(opens new window)" :colLength="getColLength" :selectedValues="selectedValues" data-test="button" :validationRules="validationRules" /> <component
:is="buttonType"
v-for="answer in answers"
:key="answer.Name ? answer.Name : answer"
@isCheckedChanged="handleCheckedChanged"
:buttonID="answer.Name ? groupName + '-' + answer.Name : groupName + '-' + answer"
:value="answer.Name ? answer.Name : answer"
:buttonLabel="answer.Text ? answer.Text : answer"
:buttonLabelSubCopy="answer.SubText"
:textPosition="textPosition"
:isMultiSelect="isMultiSelect"
:groupName="groupName"
:selectingInitiatesLoad="selectingInitiatesLoad"
:loaderColor="loaderColor"
:loaderPosition="loaderPosition"
:isWide=isWide
:isRequired=isRequired
:buttonImage="answer.AnswerImageUrl"
:buttonImageId="answer.ImageId"
:altText="answer.Name ? answer.Name : answer"
screenReaderOnlyText="(opens new window)"
:colLength="getColLength"
:selectedValues="selectedValues"
data-test="button"
:validationRules="validationRules"
/>
</div> </div>
</fieldset> </fieldset>
</div> </div>
<div class="row mt-2 form-test-error" v-if="!suppressError"> <div class="row mt-2 form-test-error" v-if="!suppressError">
<error-message :name="groupName"></error-message> <error-message :name="groupName"></error-message>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import listButton from "@/ux-components/list-button/list-button"; import listButton from "@/ux-components/list-button/list-button";
import listButtonHorizontal from "@/ux-components/list-button-horizontal/list-button-horizontal"; import listButtonHorizontal from "@/ux-components/list-button-horizontal/list-button-horizontal";
import listCard from "@/ux-components/list-card/list-card"; import listCard from "@/ux-components/list-card/list-card";
import { import { ErrorMessage } from 'vee-validate';
ErrorMessage
} from 'vee-validate';
import radio from "@/ux-components/radio/radio"; import radio from "@/ux-components/radio/radio";
export default { export default {
@ -59,9 +82,9 @@ export default {
}, },
computed: { computed: {
getFieldSetClasses() { getFieldSetClasses() {
return this.isOverflowScrollable ? return this.isOverflowScrollable
"container-fluid overflow-scroll position-absolute px-5 pt-1 py-0" : ? "container-fluid overflow-scroll position-absolute px-5 pt-1 py-0"
""; : "";
}, },
getComponentWrapperClasses() { getComponentWrapperClasses() {
let classes; let classes;
@ -81,52 +104,34 @@ export default {
} }
return classes; return classes;
}, },
getColLength() { getColLength(){
if (this.isWide) { if(this.isWide) {
return "12" return "12"
} else { } else {
return this.answers.length < 3 ? '' : '-4'; return this.answers.length < 3 ? '' : '-4';
} }
}, },
selectedValues: { selectedValues: {
get: function () { get: function() {
return this.modelValue; return this.modelValue;
}, },
set: function (newValue) { set: function(newValue) {
this.$emit("update:modelValue", newValue); this.$emit("update:modelValue", newValue);
} }
}, },
}, },
methods: { methods: {
handleCheckedChanged(val) { handleCheckedChanged(val) {
const newSelectedValues = this.selectedValues; if(this.isMultiSelect && this.selectedValues) {
if (this.isMultiSelect && this.selectedValues) {
// Add or remove item to array of data to emit // Add or remove item to array of data to emit
if (Array.isArray(this.selectedValues)) { if(Array.isArray(this.selectedValues)) {
const newSelectedValues = this.selectedValues;
val.checkValue ? newSelectedValues.push(val.value) : newSelectedValues.splice(newSelectedValues.indexOf(val.value), 1); val.checkValue ? newSelectedValues.push(val.value) : newSelectedValues.splice(newSelectedValues.indexOf(val.value), 1);
this.selectedValues = newSelectedValues; this.selectedValues = newSelectedValues;
} }
} else { } else {
if (Array.isArray(this.selectedValues)) { this.selectedValues = [val.value];
newSelectedValues.splice(0, newSelectedValues.length);
newSelectedValues.push(val.value);
this.selectedValues = newSelectedValues;
} }
}
// handleCheckedChanged(val) {
// if(this.isMultiSelect && this.selectedValues) {
// // Add or remove item to array of data to emit
// 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];
// }
// },
}, },
}, },
components: { components: {

View file

@ -63,7 +63,7 @@ export default {
}; };
this.$emit("isCheckedChanged", emitEvent); this.$emit("isCheckedChanged", emitEvent);
//this.$emit("update:modelValue", emitEvent); this.$emit("update:modelValue", emitEvent);
} }
}, },
}, },