-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCompaniesView.vue
More file actions
45 lines (39 loc) · 1.5 KB
/
CompaniesView.vue
File metadata and controls
45 lines (39 loc) · 1.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<template>
<MembersCompanies
:companies="companiesList?.data || []"
:companies-loading="isCompaniesLoading"
:members="membersList?.data || []"
:event-id="eventStore.selectedEvent?.id || 0"
:coordination-teams="coordinationTeamsList?.data || []"
/>
</template>
<script setup lang="ts">
import { useQuery } from "@pinia/colada";
import { getAllCompanies } from "@/api/companies";
import { computed } from "vue";
import type { AllCompaniesFilter } from "@/dto/companies";
import { useEventStore } from "@/stores/event";
import { getAllMembers } from "@/api/members";
import type { AllMembersFilter } from "@/dto/members";
import MembersCompanies from "@/components/companies/MembersCompanies.vue";
import { getAllCoordinationTeams } from "@/api/coordinationTeams";
const eventStore = useEventStore();
const companiesFilters = computed<AllCompaniesFilter>(() => ({
event: eventStore.selectedEvent?.id,
}));
const { data: companiesList, isLoading: isCompaniesLoading } = useQuery({
key: () => ["companies", JSON.stringify(companiesFilters.value)],
query: () => getAllCompanies(companiesFilters.value),
});
const membersFilters = computed<AllMembersFilter>(() => ({
event: eventStore.selectedEvent?.id,
}));
const { data: membersList } = useQuery({
key: () => ["members", JSON.stringify(membersFilters.value)],
query: () => getAllMembers(membersFilters.value),
});
const { data: coordinationTeamsList } = useQuery({
key: ["coordinationTeams"],
query: () => getAllCoordinationTeams(),
});
</script>