@@ -42,7 +42,7 @@
@@ -73,17 +73,33 @@ const emit = defineEmits<{
'clear': []
}>()
-const localFilters = computed({
- get: () => props.modelValue,
- set: (val) => emit('update:modelValue', val)
+// Computed individuales para cada filtro con emisión reactiva
+const searchFilter = computed({
+ get: () => props.modelValue.search,
+ set: (val) => emit('update:modelValue', { ...props.modelValue, search: val })
+})
+
+const idFilter = computed({
+ get: () => props.modelValue.id,
+ set: (val) => emit('update:modelValue', { ...props.modelValue, id: val })
+})
+
+const telefonoFilter = computed({
+ get: () => props.modelValue.telefono,
+ set: (val) => emit('update:modelValue', { ...props.modelValue, telefono: val })
+})
+
+const empleadoFilter = computed({
+ get: () => props.modelValue.empleado,
+ set: (val) => emit('update:modelValue', { ...props.modelValue, empleado: val })
})
const hasActiveFilters = computed(() => {
return (
- localFilters.value.search ||
- localFilters.value.id ||
- localFilters.value.telefono ||
- !localFilters.value.empleado
+ props.modelValue.search ||
+ props.modelValue.id ||
+ props.modelValue.telefono ||
+ !props.modelValue.empleado
)
})