27 lines
566 B
TypeScript
27 lines
566 B
TypeScript
import { QueryClient } from '@tanstack/react-query';
|
|
|
|
import axios from 'axios';
|
|
|
|
const api = axios.create({
|
|
baseURL: import.meta.env.VITE_API_URL,
|
|
});
|
|
|
|
export function setAuthToken(newToken: string | null) {
|
|
if (newToken) {
|
|
api.defaults.headers.common['Authorization'] = `Bearer ${newToken}`;
|
|
} else {
|
|
delete api.defaults.headers.common['Authorization'];
|
|
}
|
|
}
|
|
|
|
export const queryClient = new QueryClient({
|
|
defaultOptions: {
|
|
queries: {
|
|
refetchOnWindowFocus: true,
|
|
staleTime: 1000 * 30, // 30 seconds
|
|
},
|
|
},
|
|
});
|
|
|
|
export { api };
|