58 lines
1.5 KiB
TypeScript
58 lines
1.5 KiB
TypeScript
import { getSession } from '@/lib/auth/session';
|
|
import { queryOptions } from '@tanstack/react-query';
|
|
import { getAllAudit } from './audit.api';
|
|
import {
|
|
getAdminSettings,
|
|
getCurrentUserLanguage,
|
|
getUserSettings,
|
|
} from './setting.api';
|
|
import { getAllUser } from './user.api';
|
|
|
|
export const sessionQueries = {
|
|
all: ['auth'],
|
|
user: () =>
|
|
queryOptions({
|
|
queryKey: [...sessionQueries.all, 'session'],
|
|
queryFn: () => getSession(),
|
|
staleTime: 1000 * 60 * 20,
|
|
retry: false,
|
|
}),
|
|
};
|
|
|
|
export const settingQueries = {
|
|
all: ['setting'],
|
|
listAdmin: () =>
|
|
queryOptions({
|
|
queryKey: [...settingQueries.all, 'list'],
|
|
queryFn: () => getAdminSettings(),
|
|
}),
|
|
listUser: () =>
|
|
queryOptions({
|
|
queryKey: [...settingQueries.all, 'listUser'],
|
|
queryFn: () => getUserSettings(),
|
|
}),
|
|
getCurrentUserLanguageSetting: () =>
|
|
queryOptions({
|
|
queryKey: [...settingQueries.all, 'language'],
|
|
queryFn: () => getCurrentUserLanguage(),
|
|
}),
|
|
};
|
|
|
|
export const auditQueries = {
|
|
all: ['audit'],
|
|
list: (params: { page: number; limit: number; keyword?: string }) =>
|
|
queryOptions({
|
|
queryKey: [...auditQueries.all, 'list', params],
|
|
queryFn: () => getAllAudit({ data: params }),
|
|
}),
|
|
};
|
|
|
|
export const usersQueries = {
|
|
all: ['users'],
|
|
list: (params: { page: number; limit: number; keyword?: string }) =>
|
|
queryOptions({
|
|
queryKey: [...usersQueries.all, 'list', params],
|
|
queryFn: () => getAllUser({ data: params }),
|
|
}),
|
|
};
|