diff --git a/src/i18n/locales/en.json b/src/i18n/locales/en.json index 2488e62..26eec86 100644 --- a/src/i18n/locales/en.json +++ b/src/i18n/locales/en.json @@ -142,7 +142,8 @@ "manageTeam": "Manage team", "selectTeamMembers": "Select team members for this project", "noTeamMembers": "No team assigned", - "moreMembers": "+{count} more" + "moreMembers": "+{count} more", + "selectedCount": "selected" }, "users": { "teamTitle": "Team", diff --git a/src/i18n/locales/es.json b/src/i18n/locales/es.json index 6181d0a..2cfd630 100644 --- a/src/i18n/locales/es.json +++ b/src/i18n/locales/es.json @@ -142,7 +142,8 @@ "manageTeam": "Gestionar equipo", "selectTeamMembers": "Seleccioná los miembros del equipo para este proyecto", "noTeamMembers": "Sin equipo asignado", - "moreMembers": "+{count} más" + "moreMembers": "+{count} más", + "selectedCount": "seleccionados" }, "users": { "teamTitle": "Equipo", diff --git a/src/views/ProjectListView.vue b/src/views/ProjectListView.vue index b3265b4..fc513ca 100644 --- a/src/views/ProjectListView.vue +++ b/src/views/ProjectListView.vue @@ -4,7 +4,7 @@ import { useI18n } from "vue-i18n" import { useProjectsStore } from "@/stores/projects" import { useUsersStore, type AlphaUser } from "@/stores/users" import { storage } from "@/services/storage" -import { IconFolder, IconExclamationCircle, IconUsers, IconUserPlus, IconX } from "@tabler/icons-vue" +import { IconFolder, IconExclamationCircle, IconUsers, IconUserPlus, IconX, IconSearch } from "@tabler/icons-vue" import { Card, CardHeader, @@ -57,6 +57,18 @@ const teamByProject = ref>(new Map()) const teamDialogProjectId = ref(null) const teamDialogOpen = ref(false) const pendingTeam = ref>(new Set()) +const teamSearch = ref('') + +const filteredUsers = computed(() => { + const q = teamSearch.value.toLowerCase().trim() + if (!q) return usersStore.activeUsers + return usersStore.activeUsers.filter(u => + (u.full_name || '').toLowerCase().includes(q) || + (u.email || '').toLowerCase().includes(q) || + (u.role || '').toLowerCase().includes(q) || + (u.cell || '').toLowerCase().includes(q) + ) +}) const storageKey = (projectId: number) => `project_team_${projectId}` @@ -238,10 +250,24 @@ onMounted(async () => { -
- -
-