import { AxiosError } from 'axios';

export const getAxiosError = (error: unknown): ErrorState => {
  console.error('AXIOS ERROR', error);

  if (error instanceof AxiosError) {
    if (error.response?.data?.message) {
      if (error.response.data.message === 'Internal server error') {
        return {
          code: 500,
          message:
            'Ocurrió un error inesperado, por favor intenta de nuevo más tarde',
          status: true,
        };
      }

      return {
        code: error.response.status,
        message: error.response.data.message,
        status: true,
      };
    }

    if (error.message === 'Network Error') {
      return {
        code: 0,
        message: 'Error de conexión, por favor verifica tu conexión a internet',
        status: true,
      };
    }
  }

  return {
    code: 0,
    message: 'Ocurrió un error inesperado',
    status: true,
  };
};
