@@ -1,10 +1,31 @@
|
||||
import { cleanFilters } from '@/utils/clean-filters'
|
||||
import { useMutation, useQuery } from '@tanstack/vue-query'
|
||||
import { apiShowStudentExam, apiSubmitStudentExamAttempt } from '@/services/api/student-exams'
|
||||
import {
|
||||
apiGetStudentExams,
|
||||
apiShowStudentExam,
|
||||
apiSubmitStudentExamAttempt,
|
||||
} from '@/services/api/student-exams'
|
||||
|
||||
export const studentExamsKeys = {
|
||||
list: (filters, pagination) => ['student', 'exams', 'list', filters, pagination],
|
||||
detail: (id) => ['student', 'exams', 'detail', id],
|
||||
}
|
||||
|
||||
export const useStudentExamsListQuery = (filtersRef, paginationRef, options = {}) =>
|
||||
useQuery({
|
||||
queryKey: ['student', 'exams', 'list', filtersRef, paginationRef],
|
||||
queryFn: () =>
|
||||
apiGetStudentExams({
|
||||
...cleanFilters(filtersRef.value),
|
||||
...paginationRef.value,
|
||||
}),
|
||||
select: (response) => ({
|
||||
data: response?.data?.items ?? response?.data ?? [],
|
||||
meta: response?.data?.meta ?? response?.meta,
|
||||
}),
|
||||
...options,
|
||||
})
|
||||
|
||||
export const useStudentExamQuery = (idRef, options = {}) =>
|
||||
useQuery({
|
||||
queryKey: ['student', 'exams', 'detail', idRef],
|
||||
|
||||
Reference in New Issue
Block a user