"use strict";

var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _message = _interopRequireDefault(require("@alifd/next/lib/message"));
var _axios = _interopRequireDefault(require("axios"));
var _utils = require("../utils/utils");
_axios["default"].defaults.baseURL = '/api';
// 跨域请求，允许保存cookie
_axios["default"].defaults.withCredentials = true;
_axios["default"].interceptors.request.use(function (config) {
  var _config$data, _config$headers;
  if (config !== null && config !== void 0 && (_config$data = config.data) !== null && _config$data !== void 0 && _config$data.ContentType) {
    var _config$data2;
    config.headers['Content-Type'] = config === null || config === void 0 ? void 0 : (_config$data2 = config.data) === null || _config$data2 === void 0 ? void 0 : _config$data2.ContentType;
    delete config.data.ContentType;
  } else {
    config.headers['Content-Type'] = 'multipart/form-data';
  }
  config.headers['Access-Control-Allow-Origin'] = '*';
  config.headers.Authorization = (config === null || config === void 0 ? void 0 : (_config$headers = config.headers) === null || _config$headers === void 0 ? void 0 : _config$headers.Authorization) || (_utils.$_GET === null || _utils.$_GET === void 0 ? void 0 : _utils.$_GET.token) || (0, _utils.getCookieData)().token || '';
  return config;
});
// 响应拦截器
_axios["default"].interceptors.response.use(function (res) {
  var status = res.status,
    data = res.data,
    baseURL = res.config.baseURL;
  var header = res.headers.header;
  if (status !== 200) {
    _message["default"].error('服务错误，请联系管理员');
    return;
  }
  // if (data.code && data.code === 401) {
  //     Message.notice('登录失效,请重新登录');
  // } else if (data.code && data.code === 200) {
  //     return res.data;
  // } else if (data.code && data.code === 10200) {
  //     // baseURL === "/comp-api"
  //     return {
  //         a: res.data,
  //         b: header
  //     }
  // } else {
  //     const message = data.msg || '';
  //     Message.warning(message);
  // }

  switch (data.code) {
    case 401:
      _message["default"].notice('登录失效,请重新登录');
      break;
    case 200:
      return res.data;
    case 10200:
      switch (baseURL) {
        case '/comp-api':
          return res.data;
        default:
          return {
            a: res.data,
            b: header
          };
      }
      break;
    default:
      return _message["default"].warning(data.msg || '');
  }
},
// 拦截到响应对象，将响应对象的 data 属性返回给调用的地方
function (error) {
  Promise.reject(error);
});
var _default = _axios["default"];
exports["default"] = _default;