fix(teams): make selectSingle workflows functional

This commit is contained in:
Sabe Jones
2021-04-13 16:42:50 -05:00
committed by SabreCat
parent 7dbee4caed
commit 74345adf6b
3 changed files with 31 additions and 25 deletions

View File

@@ -301,6 +301,7 @@ export default {
taskEdited (task) {
const index = findIndex(this.tasksByType[task.type], taskItem => taskItem._id === task._id);
this.tasksByType[task.type].splice(index, 1, task);
this.loadTasks();
},
taskDestroyed (task) {
const index = findIndex(this.tasksByType[task.type], taskItem => taskItem._id === task._id);

View File

@@ -24,6 +24,11 @@
v-markdown="allItemsMap[selectedItem].name"
class="label"
></div>
<div
v-else
>
{{ emptyMessage }}
</div>
</template>
<div
v-if="addNew || availableToSelect.length > 0"
@@ -211,21 +216,19 @@ export default {
return obj;
},
selectedItemAsObject () {
return this.selected ? this.allItemsMap[this.selected] : null;
return this.selectedItem ? this.allItemsMap[this.selectedItem] : null;
},
availableToSelect () {
const availableItems = this.allItems.filter(t => t.id !== this.selected);
const searchString = this.search.toLowerCase();
const filteredItems = availableItems.filter(i => i.name.toLowerCase().includes(searchString));
const filteredItems = this.allItems.filter(i => i.name.toLowerCase().includes(searchString));
return filteredItems;
},
},
watch: {
selected () {
this.$emit('changed', this.selected);
this.$emit('changed', this.selectedItem);
},
},
created () {
@@ -253,14 +256,13 @@ export default {
$event.preventDefault();
}
},
closeIfOpen () {
this.closeSelectPopup();
},
selectItem (item) {
this.$emit('toggle', item.id);
},
removeItem () {
this.$emit('toggle', null);
if (item.id === this.selectedItem) {
this.$emit('toggle', null);
} else {
this.$emit('toggle', item.id);
}
this.closeSelectPopup();
},
hideCallback ($event) {
if (this.preventHide) {

View File

@@ -1489,20 +1489,23 @@ export default {
this.$emit('cancel');
},
async toggleAssignment (memberId) {
if (this.purpose === 'create') {
return;
}
if (this.purpose !== 'create') {
if (this.assignedMember === null) {
await this.$store.dispatch('tasks:unassignTask', {
taskId: this.task._id,
userId: memberId,
});
} else {
await this.$store.dispatch('tasks:unassignTask', {
taskId: this.task._id,
userId: this.assignedMember,
});
if (this.assignedMember === null) {
await this.$store.dispatch('tasks:unassignTask', {
taskId: this.task._id,
userId: memberId,
});
} else {
await this.$store.dispatch('tasks:assignTask', {
taskId: this.task._id,
userId: memberId,
});
await this.$store.dispatch('tasks:assignTask', {
taskId: this.task._id,
userId: memberId,
});
}
}
this.assignedMember = memberId;