From 5962f2477f16028b7ab973bcd2a15162a158947e Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Fri, 2 May 2025 06:51:52 +0530 Subject: [PATCH] fix: added change emit in Table bulti select (cherry picked from commit 5f567cf13898b355bcd445749f86c316a53a3a28) --- .../src/components/Controls/TableMultiselectInput.vue | 9 ++++++--- frontend/src/components/FieldLayout/Field.vue | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/frontend/src/components/Controls/TableMultiselectInput.vue b/frontend/src/components/Controls/TableMultiselectInput.vue index 683a2cd0..a498812b 100644 --- a/frontend/src/components/Controls/TableMultiselectInput.vue +++ b/frontend/src/components/Controls/TableMultiselectInput.vue @@ -60,6 +60,8 @@ const props = defineProps({ }, }) +const emit = defineEmits(['change']) + const { getFields } = getMeta(props.doctype) const values = defineModel() @@ -109,14 +111,16 @@ const addValue = (value) => { if (value) { values.value.push({ [linkField.value.fieldname]: value }) + emit('change', values.value) !error.value && (query.value = '') } } const removeValue = (value) => { - values.value = values.value.filter( + let _value = values.value.filter( (row) => row[linkField.value.fieldname] !== value, ) + emit('change', _value) } const removeLastValue = () => { @@ -125,12 +129,11 @@ const removeLastValue = () => { let valueRef = valuesRef.value[valuesRef.value.length - 1]?.$el if (document.activeElement === valueRef) { values.value.pop() + emit('change', values.value) nextTick(() => { if (values.value.length) { valueRef = valuesRef.value[valuesRef.value.length - 1].$el valueRef?.focus() - } else { - setFocus() } }) } else { diff --git a/frontend/src/components/FieldLayout/Field.vue b/frontend/src/components/FieldLayout/Field.vue index eecfeaaa..3eae759c 100644 --- a/frontend/src/components/FieldLayout/Field.vue +++ b/frontend/src/components/FieldLayout/Field.vue @@ -91,6 +91,7 @@ v-else-if="field.fieldtype === 'Table MultiSelect'" v-model="data[field.fieldname]" :doctype="field.options" + @change="(v) => fieldChange(v, field)" />