Problemas corregidos:
1. Error "Cannot read properties of undefined (reading 'toLowerCase')":
- Agregar validación para filtrar items undefined/null
- Verificar que cada item tenga label y value antes de usar toLowerCase
- Prevenir errores cuando el array de ubicaciones tiene items inválidos
2. Selección múltiple no funcionaba:
- Mejorar onSelectionChange para manejar diferentes tipos de valores
- Agregar validación de array antes de procesar
- Filtrar items null/undefined antes de extraer valores
- Manejar tanto objetos como strings en el array de valores
3. Tags no aparecían en el input:
- El problema estaba en el procesamiento de valores seleccionados
- Ahora maneja correctamente item.value y strings directos
El componente ahora funciona igual que ClienteMultiSelector:
- Sin errores en consola
- Tags visuales aparecen correctamente
- Selección múltiple funciona perfectamente
Nuevo componente creado:
- UbicacionMultiSelector.vue: InputMenu con tema personalizado
- Mismo estilo y funcionalidad que ClienteMultiSelector
- Búsqueda en tiempo real de ubicaciones
- Tags visuales para selección múltiple
- Contador y botón "Limpiar todo"
Cambios en informe-ingresos.vue:
- Reemplazar UCheckboxGroup de ubicaciones por UbicacionMultiSelector
- Mover selector de ubicaciones a su propia sección (fuera del grid)
- Grid ahora tiene 2 columnas (Tipos y Estados) en lugar de 3
- Mantener layout consistente con selector de clientes
Estilos aplicados (igual que ClienteMultiSelector):
- Fondo: --brand-surface
- Bordes: --brand-border con focus dorado
- Item highlighted: tono dorado suave
- Tags: color --brand-primary
Ahora ubicaciones tiene la misma UX moderna que clientes.