UNPKG

@aliretail/react-materials-components

Version:
113 lines (85 loc) 2.74 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports["default"] = void 0; exports.getCookie = getCookie; exports.getFileTypeFromExt = getFileTypeFromExt; exports.getFileTypeFromUploadType = getFileTypeFromUploadType; exports.request = request; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _axios = _interopRequireDefault(require("axios")); var _excluded = ["method", "data"]; var AxiosInstance = _axios["default"].create(); delete AxiosInstance.defaults.xsrfCookieName; delete AxiosInstance.defaults.xsrfHeaderName; AxiosInstance.defaults.withCredentials = true; var _default = AxiosInstance; exports["default"] = _default; function request(options) { var method = options.method, data = options.data, config = (0, _objectWithoutPropertiesLoose2["default"])(options, _excluded); var dataOrParams = {}; if (['PUT', 'POST'].includes(method.toUpperCase())) { dataOrParams.data = data; } else { dataOrParams.params = data; } return AxiosInstance.request((0, _extends2["default"])({ method: method }, config, dataOrParams)); } function getCookie(name) { if (!document.cookie) { return null; } var xsrfCookies = document.cookie.split(';').map(function (c) { return c.trim(); }).filter(function (c) { return c.startsWith(name + "="); }); if (xsrfCookies.length === 0) { return null; } return decodeURIComponent(xsrfCookies[0].split('=')[1]); } var TYPE_LIST_VIDEO = ['.mp4', '.mov', '.avi', '.flv', '.rmvb', '.mpeg', '.m3u8']; var TYPE_LIST_IMG = ['.png', '.jpg', '.jpeg', '.svg', '.gif', '.bmp']; var TYPE_LIST_FILE = ['.doc', '.docx', '.pdf', '.xls', '.xlsx']; function getFileTypeFromUploadType(type) { var fileType = ''; switch (type) { case 'image': fileType = TYPE_LIST_IMG.join(','); break; case 'video': fileType = TYPE_LIST_VIDEO.join(','); break; case 'xls': fileType = TYPE_LIST_FILE.join(','); break; case 'all': fileType = '*/*'; break; default: fileType = '*/*'; break; } return fileType; } function getFileTypeFromExt(url) { var imgReg = new RegExp("(" + TYPE_LIST_IMG.join('|') + ")$"); var videoReg = new RegExp("(" + TYPE_LIST_VIDEO.join('|') + ")$"); var fileReg = new RegExp("(" + TYPE_LIST_FILE.join('|') + ")$"); if (imgReg.test(url)) { return 'image'; } if (videoReg.test(url)) { return 'video'; } if (fileReg.test(url)) { return 'file'; } return null; }