rxtutils 1.1.1 → 1.1.2-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +547 -0
- package/cjs/index.cjs +28 -0
- package/{dist/types → cjs}/index.d.ts +4 -1
- package/cjs/request/index.cjs +150 -0
- package/{dist/types → cjs}/request/index.d.ts +11 -8
- package/cjs/store/createGetter/index.cjs +45 -0
- package/cjs/store/createGetter/index.d.ts +30 -0
- package/cjs/validator/decorators.cjs +246 -0
- package/cjs/validator/decorators.d.ts +159 -0
- package/cjs/validator/validator.cjs +179 -0
- package/cjs/validator/validator.d.ts +89 -0
- package/es/cache/index.d.ts +135 -0
- package/es/cache/indexDB.d.ts +52 -0
- package/es/index.d.ts +7 -0
- package/es/index.mjs +6 -0
- package/es/request/error.d.ts +31 -0
- package/es/request/index.d.ts +139 -0
- package/es/request/index.mjs +148 -0
- package/es/store/createGetter/index.d.ts +30 -0
- package/es/store/createGetter/index.mjs +42 -0
- package/es/store/createStateStore/index.d.ts +42 -0
- package/es/validator/decorators.d.ts +159 -0
- package/es/validator/decorators.mjs +234 -0
- package/es/validator/validator.d.ts +89 -0
- package/es/validator/validator.mjs +177 -0
- package/package.json +11 -8
- package/dist/cjs/index.cjs +0 -11
- package/dist/cjs/request/index.cjs +0 -129
- package/dist/es/index.mjs +0 -3
- package/dist/es/request/index.mjs +0 -127
- /package/{dist/cjs → cjs}/cache/index.cjs +0 -0
- /package/{dist/types → cjs}/cache/index.d.ts +0 -0
- /package/{dist/cjs → cjs}/cache/indexDB.cjs +0 -0
- /package/{dist/types → cjs}/cache/indexDB.d.ts +0 -0
- /package/{dist/cjs → cjs}/defaultEquals.cjs +0 -0
- /package/{dist/cjs → cjs}/request/defaultHandlers.cjs +0 -0
- /package/{dist/cjs → cjs}/request/error.cjs +0 -0
- /package/{dist/types → cjs}/request/error.d.ts +0 -0
- /package/{dist/cjs → cjs/store}/createStateStore/index.cjs +0 -0
- /package/{dist/types → cjs/store}/createStateStore/index.d.ts +0 -0
- /package/{dist/es → es}/cache/index.mjs +0 -0
- /package/{dist/es → es}/cache/indexDB.mjs +0 -0
- /package/{dist/es → es}/defaultEquals.mjs +0 -0
- /package/{dist/es → es}/request/defaultHandlers.mjs +0 -0
- /package/{dist/es → es}/request/error.mjs +0 -0
- /package/{dist/es → es/store}/createStateStore/index.mjs +0 -0
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import { __assign } from 'tslib';
|
|
2
|
-
import axios from 'axios';
|
|
3
|
-
import { at } from 'lodash';
|
|
4
|
-
import { _defaultErrorCodeHandler, _defaultHttpErrorCodeHandler, _defaultOtherErrorCodeHandler } from './defaultHandlers.mjs';
|
|
5
|
-
import defaultEquals from '../defaultEquals.mjs';
|
|
6
|
-
import Cache from '../cache/index.mjs';
|
|
7
|
-
import RequestError from './error.mjs';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* 创建基础请求实例
|
|
11
|
-
* @param baseOptions 基础配置选项
|
|
12
|
-
* @returns 请求创建函数
|
|
13
|
-
*/
|
|
14
|
-
function createBaseRequest(baseOptions) {
|
|
15
|
-
var baseURL = Object(baseOptions).baseURL;
|
|
16
|
-
// 创建新的 Axios 实例并配置基础URL和跨域凭证
|
|
17
|
-
var instance = axios.create({
|
|
18
|
-
baseURL: baseURL,
|
|
19
|
-
withCredentials: true,
|
|
20
|
-
});
|
|
21
|
-
/**
|
|
22
|
-
* 创建请求函数
|
|
23
|
-
* @template Param 请求参数类型
|
|
24
|
-
* @template Data 响应数据类型,必须是对象类型
|
|
25
|
-
* @param requestOptions 请求配置
|
|
26
|
-
* @param createOptions 创建选项(覆盖基础配置)
|
|
27
|
-
* @returns 发送请求的函数
|
|
28
|
-
*/
|
|
29
|
-
return function createRequest(requestOptions, createOptions) {
|
|
30
|
-
var _a = __assign({}, requestOptions), method = _a.method, url = _a.url;
|
|
31
|
-
var _b = __assign(__assign({}, baseOptions), createOptions), baseURL = _b.baseURL, _c = _b.cacheDataKey, cacheDataKey = _c === void 0 ? "".concat(method, ":").concat(baseURL).concat(url) : _c, cacheDataInStorage = _b.cacheDataInStorage, _d = _b.cacheKeyEquals, cacheKeyEquals = _d === void 0 ? defaultEquals : _d, cacheTime = _b.cacheTime, _e = _b.indexDBName, indexDBName = _e === void 0 ? '__apiCacheDatabase__' : _e;
|
|
32
|
-
var cache = new Cache(cacheDataInStorage, cacheDataKey, cacheTime, indexDBName, cacheKeyEquals);
|
|
33
|
-
function request(requestParam, options) {
|
|
34
|
-
var _a = __assign(__assign({}, requestOptions), requestParam), method = _a.method, url = _a.url, _b = _a.data, data = _b === void 0 ? {} : _b, _c = _a.params, params = _c === void 0 ? {} : _c;
|
|
35
|
-
var requestDataOrParams = params;
|
|
36
|
-
if (method.toLowerCase() === 'post') {
|
|
37
|
-
requestDataOrParams = data;
|
|
38
|
-
}
|
|
39
|
-
var _d = __assign(__assign(__assign({}, baseOptions), createOptions), options).defaultMessageShower, defaultMessageShower = _d === void 0 ? alert : _d;
|
|
40
|
-
var _e = __assign(__assign(__assign({}, baseOptions), createOptions), options), _f = _e.enableCache, enableCache = _f === void 0 ? false : _f, _g = _e.cacheData, cacheData = _g === void 0 ? false : _g, _h = _e.defaultErrorCodeHandler, defaultErrorCodeHandler = _h === void 0 ? _defaultErrorCodeHandler.bind(null, defaultMessageShower) : _h, _j = _e.defaultHttpErrorCodeHandler, defaultHttpErrorCodeHandler = _j === void 0 ? _defaultHttpErrorCodeHandler.bind(null, defaultMessageShower) : _j, _k = _e.otherErrorHandler, otherErrorHandler = _k === void 0 ? _defaultOtherErrorCodeHandler.bind(null, defaultMessageShower) : _k, _l = _e.errorCodePath, errorCodePath = _l === void 0 ? 'code' : _l, _m = _e.cacheTime, cacheTime = _m === void 0 ? 60 : _m, _o = _e.errorCodeMap, errorCodeMap = _o === void 0 ? {} : _o, _p = _e.successCodes, successCodes = _p === void 0 ? ['0', '200'] : _p, _q = _e.httpErrorCodeMap, httpErrorCodeMap = _q === void 0 ? {} : _q, _r = _e.axiosOptions, axiosOptions = _r === void 0 ? {} : _r, _s = _e.throwError, throwError = _s === void 0 ? true : _s;
|
|
41
|
-
if (enableCache) {
|
|
42
|
-
var cacheItem = cache.getCache(requestDataOrParams);
|
|
43
|
-
if (cacheItem) {
|
|
44
|
-
return Promise.resolve(cacheItem);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return instance
|
|
48
|
-
.request(__assign({ method: method, url: url, data: data, params: params }, axiosOptions))
|
|
49
|
-
.then(function (res) {
|
|
50
|
-
var errorCode = String(at(res.data, errorCodePath));
|
|
51
|
-
if (successCodes.includes(errorCode)) {
|
|
52
|
-
if (cacheData) {
|
|
53
|
-
cache.setCache(requestDataOrParams, res.data, { cacheTime: cacheTime });
|
|
54
|
-
}
|
|
55
|
-
return res.data;
|
|
56
|
-
}
|
|
57
|
-
var _a = errorCodeMap, _b = errorCode, _c = _a[_b], customHandler = _c === void 0 ? defaultErrorCodeHandler : _c;
|
|
58
|
-
var err = new RequestError('服务端错误', 'server', res);
|
|
59
|
-
if (typeof customHandler === 'string') {
|
|
60
|
-
defaultMessageShower(customHandler);
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
var _d = (Object(customHandler(errorCode, res.data, res, __assign(__assign({}, requestOptions), requestParam)))), _e = _d.replaceResData, replaceResData = _e === void 0 ? res.data : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? 'default' : _f;
|
|
64
|
-
res.data = replaceResData;
|
|
65
|
-
switch (handlerThrowError) {
|
|
66
|
-
case true:
|
|
67
|
-
throw err;
|
|
68
|
-
case false:
|
|
69
|
-
return res.data;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
if (throwError) {
|
|
73
|
-
throw err;
|
|
74
|
-
}
|
|
75
|
-
return res.data;
|
|
76
|
-
}, function (error) {
|
|
77
|
-
if (error.response) {
|
|
78
|
-
// 请求成功发出且服务器也响应了状态码,但状态代码超出了 2xx 的范围
|
|
79
|
-
var resData = error;
|
|
80
|
-
var _a = httpErrorCodeMap, _b = error.response.status, _c = _a[_b], customHandler = _c === void 0 ? defaultHttpErrorCodeHandler : _c;
|
|
81
|
-
var err = new RequestError('服务端错误', 'http', error);
|
|
82
|
-
if (typeof customHandler === 'string') {
|
|
83
|
-
defaultMessageShower(customHandler);
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
var _d = (Object(customHandler(error.response.status, error, __assign(__assign({}, requestOptions), requestParam)))), _e = _d.replaceResData, replaceResData = _e === void 0 ? error : _e, _f = _d.throwError, handlerThrowError = _f === void 0 ? 'default' : _f;
|
|
87
|
-
resData = replaceResData;
|
|
88
|
-
switch (handlerThrowError) {
|
|
89
|
-
case true:
|
|
90
|
-
throw err;
|
|
91
|
-
case false:
|
|
92
|
-
return resData;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
if (throwError) {
|
|
96
|
-
throw err;
|
|
97
|
-
}
|
|
98
|
-
return resData;
|
|
99
|
-
}
|
|
100
|
-
else {
|
|
101
|
-
var resData = error;
|
|
102
|
-
var err = new RequestError('服务端错误', 'http', error);
|
|
103
|
-
err.type = 'http';
|
|
104
|
-
err.data = error;
|
|
105
|
-
var _g = (Object(otherErrorHandler(error))), _h = _g.replaceResData, replaceResData = _h === void 0 ? error : _h, _j = _g.throwError, handlerThrowError = _j === void 0 ? 'default' : _j;
|
|
106
|
-
resData = replaceResData;
|
|
107
|
-
switch (handlerThrowError) {
|
|
108
|
-
case true:
|
|
109
|
-
throw err;
|
|
110
|
-
case false:
|
|
111
|
-
return resData;
|
|
112
|
-
}
|
|
113
|
-
if (throwError) {
|
|
114
|
-
throw err;
|
|
115
|
-
}
|
|
116
|
-
return resData;
|
|
117
|
-
}
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
request.clearCache = function () {
|
|
121
|
-
cache.clear();
|
|
122
|
-
};
|
|
123
|
-
return request;
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
export { createBaseRequest as default };
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|