import AsyncStorage from '@react-native-async-storage/async-storage'; import axios, { AxiosError } from 'axios'; import { navigate } from 'components/NavigationRef'; const axiosInstance = axios.create({ baseURL: 'http://141.105.64.233:7723/api/v1', timeout: 10000, headers: { 'Content-Type': 'application/json', }, }); axiosInstance.interceptors.request.use(async config => { // Tokenni olish const token = await AsyncStorage.getItem('token'); if (token) { config.headers.Authorization = `Bearer ${token}`; } // Language’ni olish const language = await AsyncStorage.getItem('language'); if (language) { config.headers['Accept-Language'] = language; } return config; }); axiosInstance.interceptors.response.use( response => response, async (error: AxiosError) => { if (error.response?.status === 401) { await AsyncStorage.removeItem('token'); navigate('Login'); } return Promise.reject(error); }, ); export default axiosInstance;