import useSWR from "swr"; import RoleService from "../services/RoleService"; import UserService from "../services/UserService"; import { fetcher } from "../http/axiosInstance"; export function useRoles() { const { data, error, isLoading } = useSWR(`/auth/roles`, RoleService.getRoles) return { roles: data?.data, isLoading, isError: error } } export function useUsers() { const { data, error, isLoading } = useSWR(`/auth/user`, UserService.getUsers) return { users: data?.data, isLoading, isError: error } } export function useCompanies(limit?: number, offset?: number) { const { data, error, isLoading } = useSWR(`/info/companies?limit=${limit || 10}&offset=${offset || 0}`, fetcher) return { companies: data, isLoading, isError: error } } export function useFolders(limit?: number, offset?: number) { const { data, error, isLoading } = useSWR( `/info/document_folder?limit=${limit || 10}&offset=${offset || 0}`, fetcher, { revalidateOnFocus: false } ) return { folders: data, isLoading, isError: error } } export function useDocuments(folder_id?: number) { const { data, error, isLoading } = useSWR( folder_id ? `/info/documents/${folder_id}` : null, fetcher, { revalidateOnFocus: false } ) return { documents: data, isLoading, isError: error } }