fix display elements order

selectAndSuggested method in store getter, is callable in all components,
and make union of two arrays: suggested and selected

* we need to have selected in last position (required for isChecked method to work well)
* but we want to display selected in first position (for better ux)

then, we use double inversion to obtain good behaviour
This commit is contained in:
Mathieu Jaumotte 2021-05-06 19:16:07 +02:00
parent b4ad0128e4
commit f3260f57a4
2 changed files with 3 additions and 3 deletions

View File

@ -29,8 +29,8 @@ let getDataPromise = getAccompanyingCourse(id)
).values() ).values()
]; ];
let union = [...new Set([ let union = [...new Set([
...state.add_persons.selected, ...state.add_persons.suggested.slice().reverse(),
...state.add_persons.suggested, ...state.add_persons.selected.slice().reverse(),
])]; ])];
return uniqBy(union, k => k.id); return uniqBy(union, k => k.id);
} }

View File

@ -40,7 +40,7 @@
</span> </span>
</div> </div>
<person-suggestion <person-suggestion
v-for="item in this.selectedAndSuggested" v-for="item in this.selectedAndSuggested.slice().reverse()"
v-bind:item="item" v-bind:item="item"
v-bind:key="item.id"> v-bind:key="item.id">
</person-suggestion> </person-suggestion>