36 lines
837 B
JavaScript
36 lines
837 B
JavaScript
import searchHelper from './searchHelper.js';
|
|
|
|
export default () => ({
|
|
members: [],
|
|
|
|
searchHelper: searchHelper([], {}),
|
|
|
|
onSubmitFirstMemberResult() {
|
|
if (this.searchHelper.hasNoHits()) {
|
|
this.searchHelper.clear();
|
|
return;
|
|
}
|
|
|
|
this.onSubmitMemberResult(this.searchHelper.firstHit().id.toString());
|
|
},
|
|
|
|
onSubmitMemberResult(id) {
|
|
if (this.members.find((m) => m === id) !== undefined) {
|
|
this.members = this.members.filter((m) => m !== id);
|
|
} else {
|
|
this.members.push(id);
|
|
}
|
|
|
|
this.searchHelper.clear();
|
|
this.$root.querySelector('input').focus();
|
|
},
|
|
|
|
set searchString(v) {
|
|
this.searchHelper.setInput(v);
|
|
},
|
|
|
|
get searchString() {
|
|
return this.searchHelper.getInput();
|
|
},
|
|
});
|