This commit is contained in:
sajjadtalkhabi
2026-05-15 17:12:51 +03:30
parent b8ced45375
commit c82701888a
101 changed files with 8125 additions and 96 deletions
+56
View File
@@ -0,0 +1,56 @@
import { useQuery } from '@tanstack/vue-query'
import { cleanFilters } from '@/utils/clean-filters'
import {
apiGetMissionaryDispatches,
apiGetMissionaryNarratives,
apiGetMissionaryProfile,
apiGetMissionaryRequests,
} from '@/services/api/student-missionary'
export const missionaryKeys = {
profile: ['student', 'missionary', 'profile'],
requests: (filters, pagination) => ['student', 'missionary', 'requests', filters, pagination],
dispatches: (filters, pagination) => ['student', 'missionary', 'dispatches', filters, pagination],
narratives: (filters, pagination) => ['student', 'missionary', 'narratives', filters, pagination],
}
export const useMissionaryProfileQuery = (options = {}) =>
useQuery({
queryKey: missionaryKeys.profile,
queryFn: () => apiGetMissionaryProfile(),
select: (response) => response?.data ?? response,
...options,
})
export const useMissionaryRequestsQuery = (filtersRef, paginationRef, options = {}) =>
useQuery({
queryKey: ['student', 'missionary', 'requests', filtersRef, paginationRef],
queryFn: () =>
apiGetMissionaryRequests({
...cleanFilters(filtersRef.value),
...paginationRef.value,
}),
...options,
})
export const useMissionaryDispatchesQuery = (filtersRef, paginationRef, options = {}) =>
useQuery({
queryKey: ['student', 'missionary', 'dispatches', filtersRef, paginationRef],
queryFn: () =>
apiGetMissionaryDispatches({
...cleanFilters(filtersRef.value),
...paginationRef.value,
}),
...options,
})
export const useMissionaryNarrativesQuery = (filtersRef, paginationRef, options = {}) =>
useQuery({
queryKey: ['student', 'missionary', 'narratives', filtersRef, paginationRef],
queryFn: () =>
apiGetMissionaryNarratives({
...cleanFilters(filtersRef.value),
...paginationRef.value,
}),
...options,
})