@aliretail/react-materials-components
Version:
92 lines (76 loc) • 2.27 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
var _excluded = ["method", "data"];
import Axios from 'axios';
var AxiosInstance = Axios.create();
delete AxiosInstance.defaults.xsrfCookieName;
delete AxiosInstance.defaults.xsrfHeaderName;
AxiosInstance.defaults.withCredentials = true;
export default AxiosInstance;
export function request(options) {
var method = options.method,
data = options.data,
config = _objectWithoutPropertiesLoose(options, _excluded);
var dataOrParams = {};
if (['PUT', 'POST'].includes(method.toUpperCase())) {
dataOrParams.data = data;
} else {
dataOrParams.params = data;
}
return AxiosInstance.request(_extends({
method: method
}, config, dataOrParams));
}
export 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'];
export 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;
}
export 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;
}