49 lines
1.3 KiB
TypeScript
49 lines
1.3 KiB
TypeScript
import { getSession } from '@/lib/auth/session';
|
|
import { queryOptions } from '@tanstack/react-query';
|
|
import { getAllAudit } from './audit.api';
|
|
import { getAdminSettings, 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(),
|
|
}),
|
|
};
|
|
|
|
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 }),
|
|
}),
|
|
};
|