@jnrs/shared 1.1.6 → 1.1.8
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 +9 -2
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/locales/en.d.ts +24 -0
- package/dist/locales/en.d.ts.map +1 -1
- package/dist/locales/en.js +24 -0
- package/dist/locales/en.js.map +1 -1
- package/dist/locales/i18next.d.ts +1 -0
- package/dist/locales/i18next.d.ts.map +1 -1
- package/dist/locales/i18next.js +2 -1
- package/dist/locales/i18next.js.map +1 -1
- package/dist/locales/index.d.ts.map +1 -1
- package/dist/locales/zhCn.d.ts +24 -0
- package/dist/locales/zhCn.d.ts.map +1 -1
- package/dist/locales/zhCn.js +24 -0
- package/dist/locales/zhCn.js.map +1 -1
- package/dist/lodash.d.ts +2 -2
- package/dist/lodash.d.ts.map +1 -1
- package/dist/lodash.js +1 -1
- package/dist/request/axios.d.ts +21 -0
- package/dist/request/axios.d.ts.map +1 -0
- package/dist/request/axios.js +165 -0
- package/dist/request/axios.js.map +1 -0
- package/dist/request/defaults.d.ts +8 -0
- package/dist/request/defaults.d.ts.map +1 -0
- package/dist/request/defaults.js +35 -0
- package/dist/request/defaults.js.map +1 -0
- package/dist/request/index.d.ts +3 -0
- package/dist/request/index.d.ts.map +1 -0
- package/dist/request/index.js +4 -0
- package/dist/request/index.js.map +1 -0
- package/dist/request/types.d.ts +76 -0
- package/dist/request/types.d.ts.map +1 -0
- package/dist/styles/theme.scss +1 -6
- package/dist/types/base.d.ts +13 -0
- package/dist/types/base.d.ts.map +1 -1
- package/dist/utils/date.d.ts.map +1 -1
- package/dist/utils/date.js +2 -2
- package/dist/utils/date.js.map +1 -1
- package/dist/utils/dict.d.ts +1 -1
- package/dist/utils/dict.d.ts.map +1 -1
- package/dist/utils/dict.js +2 -2
- package/dist/utils/dict.js.map +1 -1
- package/dist/utils/file.d.ts +19 -3
- package/dist/utils/file.d.ts.map +1 -1
- package/dist/utils/file.js +29 -7
- package/dist/utils/file.js.map +1 -1
- package/dist/utils/fullscreen.js +3 -3
- package/dist/utils/fullscreen.js.map +1 -1
- package/dist/utils/index.d.ts +1 -11
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/object.d.ts +42 -0
- package/dist/utils/object.d.ts.map +1 -0
- package/dist/utils/object.js +123 -0
- package/dist/utils/object.js.map +1 -0
- package/dist/utils/validator.d.ts.map +1 -1
- package/dist/utils/validator.js +4 -4
- package/dist/utils/validator.js.map +1 -1
- package/package.json +7 -1
- package/dist/utils/index.js +0 -17
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/objectToFormData.d.ts +0 -18
- package/dist/utils/objectToFormData.d.ts.map +0 -1
- package/dist/utils/objectToFormData.js +0 -46
- package/dist/utils/objectToFormData.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
# @jnrs/shared
|
|
2
2
|
|
|
3
3
|
## ✨ 介绍
|
|
4
|
-
|
|
4
|
+
巨能前端工程化开发通用工具库,包含纯逻辑、类型、常量、工具函数等,不依赖任何 UI 框架。
|
|
5
|
+
- 网络请求及相关类型和接口
|
|
6
|
+
- 错误处理机制
|
|
7
|
+
- 业务逻辑服务
|
|
8
|
+
- 缓存策略
|
|
5
9
|
- 通用类型、接口、枚举、常量
|
|
6
10
|
- 纯函数工具库
|
|
7
11
|
- 通用算法
|
|
@@ -20,9 +24,12 @@ pnpm add @jnrs/shared
|
|
|
20
24
|
```typescript
|
|
21
25
|
import '@jnrs/shared/styles/theme.scss'
|
|
22
26
|
import type { User, Locale } from '@jnrs/shared'
|
|
27
|
+
import type { BusinessRequest, BusinessResponse } from '@jnrs/shared/request'
|
|
28
|
+
import { createAxiosInstance } from '@jnrs/shared/request'
|
|
23
29
|
import { Fullscreen } from '@jnrs/shared'
|
|
24
30
|
import { debounce } from '@jnrs/shared/lodash'
|
|
25
31
|
import { uuidv4 } from '@jnrs/shared/uuid'
|
|
32
|
+
import { uuidv4 } from '@jnrs/shared/uuid'
|
|
26
33
|
...
|
|
27
34
|
```
|
|
28
35
|
|
|
@@ -33,10 +40,10 @@ import { uuidv4 } from '@jnrs/shared/uuid'
|
|
|
33
40
|
- User
|
|
34
41
|
- DictItem
|
|
35
42
|
- Dict
|
|
43
|
+
- FileItem
|
|
36
44
|
- Locale
|
|
37
45
|
- ThemeMode
|
|
38
46
|
|
|
39
|
-
|
|
40
47
|
类
|
|
41
48
|
- Fullscreen
|
|
42
49
|
|
package/dist/index.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { getDictColor, getDictLabel, getDictValue, getOneDictList } from './utils/dict.js';
|
|
1
|
+
export { getDictColor, getDictLabel, getDictList, getDictValue } from './utils/dict.js';
|
|
3
2
|
export { formatDateTime, formatWeekday, setDefaultLocale } from './utils/date.js';
|
|
4
3
|
export { Fullscreen } from './utils/fullscreen.js';
|
|
5
4
|
export { hasPermissionWithSuffix } from './utils/permissions.js';
|
|
6
|
-
export { objectToFormData } from './utils/
|
|
7
|
-
export {
|
|
5
|
+
export { dateFormatsToObject, objectMatchAssign, objectToFormData, objectToQueryString } from './utils/object.js';
|
|
6
|
+
export { blobToUrl, downloadByBlob, downloadByUrl } from './utils/file.js';
|
|
8
7
|
|
|
9
8
|
console.log('%c✨ 欢迎使用 @jnrs/shared', 'background: #8061BF; color: #f2f2f2; font-weight: bold; padding: 4px 8px; border-radius: 4px; font-family: "Helvetica Neue", sans-serif;');
|
|
10
9
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAGA,OAAO,CAAC,GAAG,CACT,uBAAuB,EACvB,0IAA0I,CAC3I"}
|
package/dist/locales/en.d.ts
CHANGED
|
@@ -52,6 +52,30 @@ declare const _default: {
|
|
|
52
52
|
isPlateNo: string;
|
|
53
53
|
};
|
|
54
54
|
};
|
|
55
|
+
axios: {
|
|
56
|
+
create: {
|
|
57
|
+
errorMsg: string;
|
|
58
|
+
errorRsp: string;
|
|
59
|
+
noToken: string;
|
|
60
|
+
timeout: string;
|
|
61
|
+
invalidUrl: string;
|
|
62
|
+
unknown: string;
|
|
63
|
+
};
|
|
64
|
+
defaults: {
|
|
65
|
+
'400': string;
|
|
66
|
+
'401': string;
|
|
67
|
+
'403': string;
|
|
68
|
+
'404': string;
|
|
69
|
+
'500': string;
|
|
70
|
+
'501': string;
|
|
71
|
+
'502': string;
|
|
72
|
+
'503': string;
|
|
73
|
+
'504': string;
|
|
74
|
+
'505': string;
|
|
75
|
+
'506': string;
|
|
76
|
+
'507': string;
|
|
77
|
+
};
|
|
78
|
+
};
|
|
55
79
|
};
|
|
56
80
|
export default _default;
|
|
57
81
|
//# sourceMappingURL=en.d.ts.map
|
package/dist/locales/en.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/locales/en.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA+EC"}
|
package/dist/locales/en.js
CHANGED
|
@@ -51,6 +51,30 @@ var en = {
|
|
|
51
51
|
isRightfulString: 'Valid characters: a–z, A–Z, 0–9, hyphen (-), underscore (_), and space',
|
|
52
52
|
isPlateNo: 'Please enter a valid license plate number'
|
|
53
53
|
}
|
|
54
|
+
},
|
|
55
|
+
axios: {
|
|
56
|
+
create: {
|
|
57
|
+
errorMsg: 'Service error. Please try again later.',
|
|
58
|
+
errorRsp: 'Request failed',
|
|
59
|
+
noToken: 'No valid token available. Please log in again.',
|
|
60
|
+
timeout: 'Request timeout. Please try again.',
|
|
61
|
+
invalidUrl: 'Invalid request URL. Please check and try again.',
|
|
62
|
+
unknown: 'Unknown error'
|
|
63
|
+
},
|
|
64
|
+
defaults: {
|
|
65
|
+
'400': 'Bad request. Please check the request format, parameters, URL, etc.',
|
|
66
|
+
'401': 'Login session expired. Please log in again.',
|
|
67
|
+
'403': "Access denied. You don't have permission to access this resource.",
|
|
68
|
+
'404': 'The requested resource was not found on the server.',
|
|
69
|
+
'500': 'Internal server error. Please contact the administrator.',
|
|
70
|
+
'501': 'The server does not support the requested functionality.',
|
|
71
|
+
'502': 'Bad gateway. Please check your proxy or upstream server.',
|
|
72
|
+
'503': 'The server is temporarily unavailable due to overload or maintenance. Please try again later.',
|
|
73
|
+
'504': 'Gateway timeout. Please try again later.',
|
|
74
|
+
'505': 'The server does not support the HTTP protocol version used in the request.',
|
|
75
|
+
'506': 'The server does not support the requested HTTP upgrade version.',
|
|
76
|
+
'507': 'The server cannot process the request. Please try again later.'
|
|
77
|
+
}
|
|
54
78
|
}
|
|
55
79
|
};
|
|
56
80
|
|
package/dist/locales/en.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.js","sources":["../../src/locales/en.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,SAAe;AACb,IAAA,KAAK,EAAE,SAAS;AAChB,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE;AACJ,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,QAAQ,EAAE,6BAA6B;AACvC,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,KAAK,EAAE,wBAAwB;AAC/B,YAAA,cAAc,EAAE,mCAAmC;AACnD,YAAA,QAAQ,EAAE,oCAAoC;AAC9C,YAAA,OAAO,EAAE,oCAAoC;AAC7C,YAAA,OAAO,EAAE,qCAAqC;AAC9C,YAAA,KAAK,EAAE,2BAA2B;AAClC,YAAA,WAAW,EAAE,sCAAsC;AACnD,YAAA,WAAW,EAAE,sCAAsC;AACnD,YAAA,WAAW,EAAE,uCAAuC;AACpD,YAAA,MAAM,EAAE,4BAA4B;AACpC,YAAA,OAAO,EAAE,uCAAuC;AAChD,YAAA,MAAM,EAAE,gBAAgB;AACxB,YAAA,QAAQ,EAAE,sCAAsC;AAChD,YAAA,WAAW,EAAE,kBAAkB;AAC/B,YAAA,WAAW,EAAE,iCAAiC;AAC9C,YAAA,YAAY,EAAE,6CAA6C;AAC3D,YAAA,YAAY,EAAE,iCAAiC;AAC/C,YAAA,WAAW,EAAE,8BAA8B;AAC3C,YAAA,YAAY,EAAE,0CAA0C;AACxD,YAAA,aAAa,EAAE,kCAAkC;AACjD,YAAA,aAAa,EAAE,+CAA+C;AAC9D,YAAA,cAAc,EAAE,2DAA2D;AAC3E,YAAA,cAAc,EAAE,+CAA+C;AAC/D,YAAA,aAAa,EAAE,4CAA4C;AAC3D,YAAA,cAAc,EAAE,wDAAwD;AACxE,YAAA,SAAS,EAAE,qBAAqB;AAChC,YAAA,QAAQ,EAAE,wBAAwB;AAClC,YAAA,QAAQ,EAAE,gCAAgC;AAC1C,YAAA,SAAS,EAAE,sCAAsC;AACjD,YAAA,KAAK,EAAE,iDAAiD;AACxD,YAAA,IAAI,EAAE,gCAAgC;AACtC,YAAA,SAAS,EAAE,kCAAkC;AAC7C,YAAA,KAAK,
|
|
1
|
+
{"version":3,"file":"en.js","sources":["../../src/locales/en.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,SAAe;AACb,IAAA,KAAK,EAAE,SAAS;AAChB,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE;AACJ,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,QAAQ,EAAE,6BAA6B;AACvC,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,KAAK,EAAE,wBAAwB;AAC/B,YAAA,cAAc,EAAE,mCAAmC;AACnD,YAAA,QAAQ,EAAE,oCAAoC;AAC9C,YAAA,OAAO,EAAE,oCAAoC;AAC7C,YAAA,OAAO,EAAE,qCAAqC;AAC9C,YAAA,KAAK,EAAE,2BAA2B;AAClC,YAAA,WAAW,EAAE,sCAAsC;AACnD,YAAA,WAAW,EAAE,sCAAsC;AACnD,YAAA,WAAW,EAAE,uCAAuC;AACpD,YAAA,MAAM,EAAE,4BAA4B;AACpC,YAAA,OAAO,EAAE,uCAAuC;AAChD,YAAA,MAAM,EAAE,gBAAgB;AACxB,YAAA,QAAQ,EAAE,sCAAsC;AAChD,YAAA,WAAW,EAAE,kBAAkB;AAC/B,YAAA,WAAW,EAAE,iCAAiC;AAC9C,YAAA,YAAY,EAAE,6CAA6C;AAC3D,YAAA,YAAY,EAAE,iCAAiC;AAC/C,YAAA,WAAW,EAAE,8BAA8B;AAC3C,YAAA,YAAY,EAAE,0CAA0C;AACxD,YAAA,aAAa,EAAE,kCAAkC;AACjD,YAAA,aAAa,EAAE,+CAA+C;AAC9D,YAAA,cAAc,EAAE,2DAA2D;AAC3E,YAAA,cAAc,EAAE,+CAA+C;AAC/D,YAAA,aAAa,EAAE,4CAA4C;AAC3D,YAAA,cAAc,EAAE,wDAAwD;AACxE,YAAA,SAAS,EAAE,qBAAqB;AAChC,YAAA,QAAQ,EAAE,wBAAwB;AAClC,YAAA,QAAQ,EAAE,gCAAgC;AAC1C,YAAA,SAAS,EAAE,sCAAsC;AACjD,YAAA,KAAK,EAAE,iDAAiD;AACxD,YAAA,IAAI,EAAE,gCAAgC;AACtC,YAAA,SAAS,EAAE,kCAAkC;AAC7C,YAAA,KAAK,EAAE,sGAAsG;AAC7G,YAAA,SAAS,EAAE,gFAAgF;AAC3F,YAAA,WAAW,EACT,0GAA0G;AAC5G,YAAA,EAAE,EAAE,kCAAkC;AACtC,YAAA,WAAW,EAAE,gFAAgF;AAC7F,YAAA,SAAS,EAAE,4BAA4B;AACvC,YAAA,aAAa,EAAE,oDAAoD;AACnE,YAAA,gBAAgB,EAAE,wEAAwE;AAC1F,YAAA,SAAS,EAAE;AACZ;AACF,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,MAAM,EAAE;AACN,YAAA,QAAQ,EAAE,wCAAwC;AAClD,YAAA,QAAQ,EAAE,gBAAgB;AAC1B,YAAA,OAAO,EAAE,gDAAgD;AACzD,YAAA,OAAO,EAAE,oCAAoC;AAC7C,YAAA,UAAU,EAAE,kDAAkD;AAC9D,YAAA,OAAO,EAAE;AACV,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,KAAK,EAAE,qEAAqE;AAC5E,YAAA,KAAK,EAAE,6CAA6C;AACpD,YAAA,KAAK,EAAE,mEAAmE;AAC1E,YAAA,KAAK,EAAE,qDAAqD;AAC5D,YAAA,KAAK,EAAE,0DAA0D;AACjE,YAAA,KAAK,EAAE,0DAA0D;AACjE,YAAA,KAAK,EAAE,0DAA0D;AACjE,YAAA,KAAK,EAAE,+FAA+F;AACtG,YAAA,KAAK,EAAE,0CAA0C;AACjD,YAAA,KAAK,EAAE,4EAA4E;AACnF,YAAA,KAAK,EAAE,iEAAiE;AACxE,YAAA,KAAK,EAAE;AACR;AACF;CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18next.d.ts","sourceRoot":"","sources":["../../src/locales/i18next.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"i18next.d.ts","sourceRoot":"","sources":["../../src/locales/i18next.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAKnC,QAAA,MAAM,WAAW,EAAE,IAA+B,CAAA;AAWlD,eAAe,WAAW,CAAA;AAC1B,eAAO,MAAM,EAAE,sEAAgB,CAAA"}
|
package/dist/locales/i18next.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18next.js","sources":["../../src/locales/i18next.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAKA,MAAM,WAAW,GAAS,OAAO,CAAC,cAAc;AAEhD,WAAW,CAAC,IAAI,CAAC;AACf,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,WAAW,EAAE,IAAI;AACjB,IAAA,SAAS,EAAE;AACT,QAAA,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE;AACtB;AACF,CAAA,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"i18next.js","sources":["../../src/locales/i18next.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAKA,MAAM,WAAW,GAAS,OAAO,CAAC,cAAc;AAEhD,WAAW,CAAC,IAAI,CAAC;AACf,IAAA,GAAG,EAAE,MAAM;AACX,IAAA,WAAW,EAAE,IAAI;AACjB,IAAA,SAAS,EAAE;AACT,QAAA,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE;AACtB;AACF,CAAA,CAAC;AAGK,MAAM,EAAE,GAAG,WAAW,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/locales/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/locales/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAI3C,eAAO,MAAM,aAAa,GAAI,UAAU,MAAM,SAG7C,CAAA"}
|
package/dist/locales/zhCn.d.ts
CHANGED
|
@@ -52,6 +52,30 @@ declare const _default: {
|
|
|
52
52
|
isPlateNo: string;
|
|
53
53
|
};
|
|
54
54
|
};
|
|
55
|
+
axios: {
|
|
56
|
+
create: {
|
|
57
|
+
errorMsg: string;
|
|
58
|
+
errorRsp: string;
|
|
59
|
+
noToken: string;
|
|
60
|
+
timeout: string;
|
|
61
|
+
invalidUrl: string;
|
|
62
|
+
unknown: string;
|
|
63
|
+
};
|
|
64
|
+
defaults: {
|
|
65
|
+
'400': string;
|
|
66
|
+
'401': string;
|
|
67
|
+
'403': string;
|
|
68
|
+
'404': string;
|
|
69
|
+
'500': string;
|
|
70
|
+
'501': string;
|
|
71
|
+
'502': string;
|
|
72
|
+
'503': string;
|
|
73
|
+
'504': string;
|
|
74
|
+
'505': string;
|
|
75
|
+
'506': string;
|
|
76
|
+
'507': string;
|
|
77
|
+
};
|
|
78
|
+
};
|
|
55
79
|
};
|
|
56
80
|
export default _default;
|
|
57
81
|
//# sourceMappingURL=zhCn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zhCn.d.ts","sourceRoot":"","sources":["../../src/locales/zhCn.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"zhCn.d.ts","sourceRoot":"","sources":["../../src/locales/zhCn.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA8EC"}
|
package/dist/locales/zhCn.js
CHANGED
|
@@ -51,6 +51,30 @@ var zhCn = {
|
|
|
51
51
|
isRightfulString: '判断是否为合法字符(a-zA-Z0-9-_ )',
|
|
52
52
|
isPlateNo: '请输入合法车牌号'
|
|
53
53
|
}
|
|
54
|
+
},
|
|
55
|
+
axios: {
|
|
56
|
+
create: {
|
|
57
|
+
errorMsg: '业务异常,请稍后重试',
|
|
58
|
+
errorRsp: '请求错误',
|
|
59
|
+
noToken: 'Token 失效,请重新登录',
|
|
60
|
+
timeout: '请求超时,请重试',
|
|
61
|
+
invalidUrl: '请求地址错误,请检查后重试',
|
|
62
|
+
unknown: '未知错误'
|
|
63
|
+
},
|
|
64
|
+
defaults: {
|
|
65
|
+
'400': '客户端请求有误,请检查请求格式、参数、路径等配置',
|
|
66
|
+
'401': '登录状态失效,请重新登录',
|
|
67
|
+
'403': '无权限访问该资源,请检查权限配置',
|
|
68
|
+
'404': '请求的资源在服务器上不存在',
|
|
69
|
+
'500': '服务器内部错误,请联系管理员',
|
|
70
|
+
'501': '服务器不支持请求的功能',
|
|
71
|
+
'502': '网关错误,请检查代理服务器',
|
|
72
|
+
'503': '服务器暂时过载或维护,请稍后重试',
|
|
73
|
+
'504': '网关超时,请稍后重试',
|
|
74
|
+
'505': '服务器不支持请求的 HTTP 版本',
|
|
75
|
+
'506': '服务器不支持请求的 HTTP 升级版本',
|
|
76
|
+
'507': '服务器无法处理请求,请稍后重试'
|
|
77
|
+
}
|
|
54
78
|
}
|
|
55
79
|
};
|
|
56
80
|
|
package/dist/locales/zhCn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zhCn.js","sources":["../../src/locales/zhCn.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,WAAe;AACb,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE;AACJ,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,OAAO,EAAE,WAAW;AACpB,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,WAAW,EAAE,WAAW;AACxB,YAAA,MAAM,EAAE,WAAW;AACnB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE,aAAa;AACvB,YAAA,WAAW,EAAE,OAAO;AACpB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,YAAY,EAAE,aAAa;AAC3B,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,YAAY,EAAE,aAAa;AAC3B,YAAA,aAAa,EAAE,UAAU;AACzB,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,cAAc;AAC9B,YAAA,cAAc,EAAE,YAAY;AAC5B,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,cAAc;AAC9B,YAAA,SAAS,EAAE,QAAQ;AACnB,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,QAAQ,EAAE,cAAc;AACxB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,KAAK,EAAE,aAAa;AACpB,YAAA,IAAI,EAAE,YAAY;AAClB,YAAA,SAAS,EAAE,aAAa;AACxB,YAAA,KAAK,EAAE,+BAA+B;AACtC,YAAA,SAAS,EAAE,qBAAqB;AAChC,YAAA,WAAW,EAAE,8BAA8B;AAC3C,YAAA,EAAE,EAAE,aAAa;AACjB,YAAA,WAAW,EAAE,qBAAqB;AAClC,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,aAAa,EAAE,eAAe;AAC9B,YAAA,gBAAgB,EAAE,yBAAyB;AAC3C,YAAA,SAAS,EAAE;AACZ;AACF;CACF;;;;"}
|
|
1
|
+
{"version":3,"file":"zhCn.js","sources":["../../src/locales/zhCn.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA,WAAe;AACb,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,KAAK,EAAE;AACL,QAAA,IAAI,EAAE;AACJ,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,QAAQ,EAAE,SAAS;AACnB,YAAA,SAAS,EAAE;AACZ,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,cAAc,EAAE,SAAS;AACzB,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,OAAO,EAAE,aAAa;AACtB,YAAA,OAAO,EAAE,WAAW;AACpB,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,WAAW,EAAE,WAAW;AACxB,YAAA,MAAM,EAAE,WAAW;AACnB,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,MAAM,EAAE,OAAO;AACf,YAAA,QAAQ,EAAE,aAAa;AACvB,YAAA,WAAW,EAAE,OAAO;AACpB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,YAAY,EAAE,aAAa;AAC3B,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,WAAW,EAAE,UAAU;AACvB,YAAA,YAAY,EAAE,aAAa;AAC3B,YAAA,aAAa,EAAE,UAAU;AACzB,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,cAAc;AAC9B,YAAA,cAAc,EAAE,YAAY;AAC5B,YAAA,aAAa,EAAE,WAAW;AAC1B,YAAA,cAAc,EAAE,cAAc;AAC9B,YAAA,SAAS,EAAE,QAAQ;AACnB,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,QAAQ,EAAE,cAAc;AACxB,YAAA,SAAS,EAAE,WAAW;AACtB,YAAA,KAAK,EAAE,aAAa;AACpB,YAAA,IAAI,EAAE,YAAY;AAClB,YAAA,SAAS,EAAE,aAAa;AACxB,YAAA,KAAK,EAAE,+BAA+B;AACtC,YAAA,SAAS,EAAE,qBAAqB;AAChC,YAAA,WAAW,EAAE,8BAA8B;AAC3C,YAAA,EAAE,EAAE,aAAa;AACjB,YAAA,WAAW,EAAE,qBAAqB;AAClC,YAAA,SAAS,EAAE,MAAM;AACjB,YAAA,aAAa,EAAE,eAAe;AAC9B,YAAA,gBAAgB,EAAE,yBAAyB;AAC3C,YAAA,SAAS,EAAE;AACZ;AACF,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,MAAM,EAAE;AACN,YAAA,QAAQ,EAAE,YAAY;AACtB,YAAA,QAAQ,EAAE,MAAM;AAChB,YAAA,OAAO,EAAE,gBAAgB;AACzB,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,UAAU,EAAE,eAAe;AAC3B,YAAA,OAAO,EAAE;AACV,SAAA;AACD,QAAA,QAAQ,EAAE;AACR,YAAA,KAAK,EAAE,0BAA0B;AACjC,YAAA,KAAK,EAAE,cAAc;AACrB,YAAA,KAAK,EAAE,kBAAkB;AACzB,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,KAAK,EAAE,gBAAgB;AACvB,YAAA,KAAK,EAAE,aAAa;AACpB,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,KAAK,EAAE,kBAAkB;AACzB,YAAA,KAAK,EAAE,YAAY;AACnB,YAAA,KAAK,EAAE,mBAAmB;AAC1B,YAAA,KAAK,EAAE,qBAAqB;AAC5B,YAAA,KAAK,EAAE;AACR;AACF;CACF;;;;"}
|
package/dist/lodash.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { debounce, throttle, once } from 'lodash-es';
|
|
2
2
|
export { get, set, has } from 'lodash-es';
|
|
3
|
-
export { omit, pick, isEmpty } from 'lodash-es';
|
|
4
|
-
export { isNil, noop } from 'lodash-es';
|
|
3
|
+
export { omit, pick, isEmpty, cloneDeep } from 'lodash-es';
|
|
4
|
+
export { isEqual, isNil, noop } from 'lodash-es';
|
|
5
5
|
//# sourceMappingURL=lodash.d.ts.map
|
package/dist/lodash.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lodash.d.ts","sourceRoot":"","sources":["../src/lodash.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGpD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGzC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"lodash.d.ts","sourceRoot":"","sources":["../src/lodash.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGpD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGzC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAG1D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA"}
|
package/dist/lodash.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { debounce, get, has, isEmpty, isNil, noop, omit, once, pick, set, throttle } from 'lodash-es';
|
|
1
|
+
export { cloneDeep, debounce, get, has, isEmpty, isEqual, isNil, noop, omit, once, pick, set, throttle } from 'lodash-es';
|
|
2
2
|
//# sourceMappingURL=lodash.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @Author : TanRui
|
|
3
|
+
* @WeChat : Tan578853789
|
|
4
|
+
* @File : axios/index.ts
|
|
5
|
+
* @Date : 2025/10/08
|
|
6
|
+
* @Desc. : 网络请求库
|
|
7
|
+
*/
|
|
8
|
+
import type { CreateRequestOptions } from './types';
|
|
9
|
+
/**
|
|
10
|
+
* 创建带默认配置的 axios 实例(已将副作用抽离为可配置项函数)
|
|
11
|
+
* @param options - 实例的配置项
|
|
12
|
+
* @param responseMap - 响应代码映射表
|
|
13
|
+
* @param handleMessageFn - 提示信息函数
|
|
14
|
+
* @param handleGetTokenFn - 获取 token 函数
|
|
15
|
+
* @param handleNoAuthFn - 登录失败处理函数
|
|
16
|
+
* @returns axiosInstance
|
|
17
|
+
*/
|
|
18
|
+
declare const createAxiosInstance: ({ options, responseMap, handleMessageFn, handleGetTokenFn, handleNoAuthFn }: CreateRequestOptions) => import("axios").AxiosInstance;
|
|
19
|
+
declare function testI18n(): string;
|
|
20
|
+
export { createAxiosInstance, testI18n };
|
|
21
|
+
//# sourceMappingURL=axios.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.d.ts","sourceRoot":"","sources":["../../src/request/axios.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAoB,MAAM,SAAS,CAAA;AAIrE;;;;;;;;GAQG;AACH,QAAA,MAAM,mBAAmB,GAAI,6EAM1B,oBAAoB,kCAgJtB,CAAA;AAkBD,iBAAS,QAAQ,WAEhB;AAED,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,CAAA"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import { DEFAULT_OPTIONS, DEFAULT_GET_TOKEN_FN, NOOP, HTTP_RESPONSE_MAP, HTTP_ERROR_MAP } from './defaults.js';
|
|
3
|
+
import { $t } from '../locales/i18next.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @Author : TanRui
|
|
7
|
+
* @WeChat : Tan578853789
|
|
8
|
+
* @File : axios/index.ts
|
|
9
|
+
* @Date : 2025/10/08
|
|
10
|
+
* @Desc. : 网络请求库
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* 创建带默认配置的 axios 实例(已将副作用抽离为可配置项函数)
|
|
14
|
+
* @param options - 实例的配置项
|
|
15
|
+
* @param responseMap - 响应代码映射表
|
|
16
|
+
* @param handleMessageFn - 提示信息函数
|
|
17
|
+
* @param handleGetTokenFn - 获取 token 函数
|
|
18
|
+
* @param handleNoAuthFn - 登录失败处理函数
|
|
19
|
+
* @returns axiosInstance
|
|
20
|
+
*/
|
|
21
|
+
const createAxiosInstance = ({ options, responseMap, handleMessageFn = NOOP, handleGetTokenFn = DEFAULT_GET_TOKEN_FN, handleNoAuthFn = NOOP }) => {
|
|
22
|
+
const ops = { ...DEFAULT_OPTIONS, ...options };
|
|
23
|
+
const httpResponseMap = { ...HTTP_RESPONSE_MAP, ...responseMap };
|
|
24
|
+
const axiosInstance = axios.create(ops);
|
|
25
|
+
// 请求拦截器
|
|
26
|
+
axiosInstance.interceptors.request.use((config) => {
|
|
27
|
+
// 如果是 get/delete/head 请求,将 data 合并为 params
|
|
28
|
+
if (['get', 'delete', 'head'].includes(config.method?.toLowerCase() || '')) {
|
|
29
|
+
config.params = { ...config.data, ...config.params };
|
|
30
|
+
delete config.data;
|
|
31
|
+
}
|
|
32
|
+
// 判断是否需要添加 token
|
|
33
|
+
if (config.noAuth === true) {
|
|
34
|
+
return config;
|
|
35
|
+
}
|
|
36
|
+
const token = handleGetTokenFn();
|
|
37
|
+
if (token) {
|
|
38
|
+
config.headers.Authorization = `Bearer ${token}`;
|
|
39
|
+
return config;
|
|
40
|
+
}
|
|
41
|
+
// 无 token 情况下的处理
|
|
42
|
+
handleNoAuthFn();
|
|
43
|
+
if (config.showErrorMsg) {
|
|
44
|
+
handleMessageFn({
|
|
45
|
+
message: $t('axios.create.noToken'),
|
|
46
|
+
type: 'error',
|
|
47
|
+
grouping: true,
|
|
48
|
+
duration: 5000,
|
|
49
|
+
showClose: true
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
return Promise.reject({
|
|
53
|
+
message: $t('axios.create.noToken')
|
|
54
|
+
});
|
|
55
|
+
}, (error) => {
|
|
56
|
+
handleMessageFn({
|
|
57
|
+
message: $t('axios.create.errorRsp'),
|
|
58
|
+
type: 'warning',
|
|
59
|
+
grouping: true,
|
|
60
|
+
duration: 5000,
|
|
61
|
+
showClose: true
|
|
62
|
+
});
|
|
63
|
+
return Promise.reject(error);
|
|
64
|
+
});
|
|
65
|
+
// 响应拦截器
|
|
66
|
+
axiosInstance.interceptors.response.use((response) => {
|
|
67
|
+
// 响应 200 成功处理
|
|
68
|
+
if (!isBusinessResponse(response.data) && !isRequestError(response.data)) {
|
|
69
|
+
// 非统一响应体格式,或返回的是文件类型,则直接返回数据
|
|
70
|
+
return response.data;
|
|
71
|
+
}
|
|
72
|
+
// 业务相关处理
|
|
73
|
+
const { code, data, msg } = response.data;
|
|
74
|
+
// 业务成功,直接返回数据
|
|
75
|
+
if (httpResponseMap[code] === 'SUCCESS') {
|
|
76
|
+
return data;
|
|
77
|
+
}
|
|
78
|
+
// 特殊处理 - 未授权
|
|
79
|
+
if (httpResponseMap[code] === 'NO_AUTH') {
|
|
80
|
+
handleNoAuthFn();
|
|
81
|
+
}
|
|
82
|
+
// 业务失败,显示错误提示(可配置)
|
|
83
|
+
if (response.config.showErrorMsg) {
|
|
84
|
+
handleMessageFn({
|
|
85
|
+
message: msg || $t('axios.create.errorMsg'),
|
|
86
|
+
type: 'warning',
|
|
87
|
+
grouping: true,
|
|
88
|
+
duration: 5000,
|
|
89
|
+
showClose: true
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return Promise.reject(response.data);
|
|
93
|
+
}, (error) => {
|
|
94
|
+
let message = '';
|
|
95
|
+
let status = '';
|
|
96
|
+
let statusText = '';
|
|
97
|
+
// 非 HTTP 响应错误(网络层、超时、URL 等)
|
|
98
|
+
if (!error.response) {
|
|
99
|
+
if (error.code === 'ECONNABORTED') {
|
|
100
|
+
message = $t('axios.create.timeout');
|
|
101
|
+
}
|
|
102
|
+
else if (error.code === 'ERR_INVALID_URL') {
|
|
103
|
+
message = $t('axios.create.invalidUrl');
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
message = `${error.message || error.code || $t('axios.create.unknown')}`;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
// 有 HTTP 响应的错误(4xx, 5xx 等)
|
|
110
|
+
else {
|
|
111
|
+
const { status: responseStatus, statusText: responseStatusText } = error.response;
|
|
112
|
+
status = responseStatus;
|
|
113
|
+
statusText = responseStatusText;
|
|
114
|
+
// 使用映射表获取错误消息
|
|
115
|
+
if (responseStatus in HTTP_ERROR_MAP) {
|
|
116
|
+
message = $t(HTTP_ERROR_MAP[responseStatus]);
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
message = `${responseStatus} ${responseStatusText}`;
|
|
120
|
+
}
|
|
121
|
+
// 特殊处理 - 未授权
|
|
122
|
+
if (responseStatus === 401) {
|
|
123
|
+
handleNoAuthFn();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
// ===== 统一错误提示 & reject =====
|
|
127
|
+
if (error.config?.showErrorMsg) {
|
|
128
|
+
handleMessageFn({
|
|
129
|
+
message,
|
|
130
|
+
type: 'error',
|
|
131
|
+
grouping: true,
|
|
132
|
+
duration: 5000,
|
|
133
|
+
showClose: true
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
return Promise.reject({
|
|
137
|
+
fillUrl: error.config?.baseURL + error.config?.url,
|
|
138
|
+
message,
|
|
139
|
+
code: error.code,
|
|
140
|
+
status,
|
|
141
|
+
statusText,
|
|
142
|
+
response: error.response
|
|
143
|
+
});
|
|
144
|
+
});
|
|
145
|
+
return axiosInstance;
|
|
146
|
+
};
|
|
147
|
+
// 类型守卫函数 - 响应是否为统一响应体格式
|
|
148
|
+
function isBusinessResponse(obj) {
|
|
149
|
+
return obj && typeof obj === 'object' && 'code' in obj && 'msg' in obj;
|
|
150
|
+
}
|
|
151
|
+
// 判断是否请求错误导致重定向
|
|
152
|
+
function isRequestError(data) {
|
|
153
|
+
const errorKeywords = ['<html>', '<!DOCTYPE', '<!doctype'];
|
|
154
|
+
if (typeof data !== 'string') {
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
const d = data;
|
|
158
|
+
return errorKeywords.some((keyword) => d.includes(keyword));
|
|
159
|
+
}
|
|
160
|
+
function testI18n() {
|
|
161
|
+
return $t(HTTP_ERROR_MAP[404]);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
export { createAxiosInstance, testI18n };
|
|
165
|
+
//# sourceMappingURL=axios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.js","sources":["../../src/request/axios.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;;;;;;AAMG;AAOH;;;;;;;;AAQG;AACH,MAAM,mBAAmB,GAAG,CAAC,EAC3B,OAAO,EACP,WAAW,EACX,eAAe,GAAG,IAAI,EACtB,gBAAgB,GAAG,oBAAoB,EACvC,cAAc,GAAG,IAAI,EACA,KAAI;IACzB,MAAM,GAAG,GAAG,EAAE,GAAG,eAAe,EAAE,GAAG,OAAO,EAAE;IAC9C,MAAM,eAAe,GAAG,EAAE,GAAG,iBAAiB,EAAE,GAAG,WAAW,EAAE;IAChE,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;;IAGvC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CACpC,CAAC,MAAM,KAAI;;QAET,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,EAAE;AAC1E,YAAA,MAAM,CAAC,MAAM,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE;YACpD,OAAO,MAAM,CAAC,IAAI;QACpB;;AAEA,QAAA,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE;AAC1B,YAAA,OAAO,MAAM;QACf;AAEA,QAAA,MAAM,KAAK,GAAG,gBAAgB,EAAE;QAEhC,IAAI,KAAK,EAAE;YACT,MAAM,CAAC,OAAO,CAAC,aAAa,GAAG,CAAA,OAAA,EAAU,KAAK,EAAE;AAChD,YAAA,OAAO,MAAM;QACf;;AAGA,QAAA,cAAc,EAAE;AAEhB,QAAA,IAAI,MAAM,CAAC,YAAY,EAAE;AACvB,YAAA,eAAe,CAAC;AACd,gBAAA,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC;AACnC,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,SAAS,EAAE;AACZ,aAAA,CAAC;QACJ;QAEA,OAAO,OAAO,CAAC,MAAM,CAAC;AACpB,YAAA,OAAO,EAAE,EAAE,CAAC,sBAAsB;AACnC,SAAA,CAAC;AACJ,IAAA,CAAC,EACD,CAAC,KAAK,KAAI;AACR,QAAA,eAAe,CAAC;AACd,YAAA,OAAO,EAAE,EAAE,CAAC,uBAAuB,CAAC;AACpC,YAAA,IAAI,EAAE,SAAS;AACf,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,SAAS,EAAE;AACZ,SAAA,CAAC;AACF,QAAA,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;AAC9B,IAAA,CAAC,CACF;;IAGD,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CACrC,CAAC,QAAQ,KAAI;;AAEX,QAAA,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;;YAExE,OAAO,QAAQ,CAAC,IAAI;QACtB;;QAEA,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI;;AAGzC,QAAA,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;AACvC,YAAA,OAAO,IAAI;QACb;;AAGA,QAAA,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;AACvC,YAAA,cAAc,EAAE;QAClB;;AAGA,QAAA,IAAI,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE;AAChC,YAAA,eAAe,CAAC;AACd,gBAAA,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,uBAAuB,CAAC;AAC3C,gBAAA,IAAI,EAAE,SAAS;AACf,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,SAAS,EAAE;AACZ,aAAA,CAAC;QACJ;QACA,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;AACtC,IAAA,CAAC,EACD,CAAC,KAAK,KAAI;QACR,IAAI,OAAO,GAAG,EAAE;QAChB,IAAI,MAAM,GAAG,EAAE;QACf,IAAI,UAAU,GAAG,EAAE;;AAGnB,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;AACnB,YAAA,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE;AACjC,gBAAA,OAAO,GAAG,EAAE,CAAC,sBAAsB,CAAC;YACtC;AAAO,iBAAA,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE;AAC3C,gBAAA,OAAO,GAAG,EAAE,CAAC,yBAAyB,CAAC;YACzC;iBAAO;AACL,gBAAA,OAAO,GAAG,CAAA,EAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,sBAAsB,CAAC,EAAE;YAC1E;QACF;;aAEK;AACH,YAAA,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC,QAAQ;YACjF,MAAM,GAAG,cAAc;YACvB,UAAU,GAAG,kBAAkB;;AAG/B,YAAA,IAAI,cAAc,IAAI,cAAc,EAAE;gBACpC,OAAO,GAAG,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAC9C;iBAAO;AACL,gBAAA,OAAO,GAAG,CAAA,EAAG,cAAc,CAAA,CAAA,EAAI,kBAAkB,EAAE;YACrD;;AAGA,YAAA,IAAI,cAAc,KAAK,GAAG,EAAE;AAC1B,gBAAA,cAAc,EAAE;YAClB;QACF;;AAGA,QAAA,IAAI,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE;AAC9B,YAAA,eAAe,CAAC;gBACd,OAAO;AACP,gBAAA,IAAI,EAAE,OAAO;AACb,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,QAAQ,EAAE,IAAI;AACd,gBAAA,SAAS,EAAE;AACZ,aAAA,CAAC;QACJ;QAEA,OAAO,OAAO,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG;YAClD,OAAO;YACP,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM;YACN,UAAU;YACV,QAAQ,EAAE,KAAK,CAAC;AACjB,SAAA,CAAC;AACJ,IAAA,CAAC,CACF;AAED,IAAA,OAAO,aAAa;AACtB;AAEA;AACA,SAAS,kBAAkB,CAAC,GAAqB,EAAA;AAC/C,IAAA,OAAO,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG;AACxE;AAEA;AACA,SAAS,cAAc,CAAC,IAAsB,EAAA;IAC5C,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;AAE1D,IAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC5B,QAAA,OAAO,KAAK;IACd;IACA,MAAM,CAAC,GAAG,IAAc;AACxB,IAAA,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC7D;AAEA,SAAS,QAAQ,GAAA;AACf,IAAA,OAAO,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAChC;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Options } from './types';
|
|
2
|
+
declare const HTTP_RESPONSE_MAP: Record<number, string>;
|
|
3
|
+
declare const HTTP_ERROR_MAP: Record<number, string>;
|
|
4
|
+
declare const DEFAULT_OPTIONS: Required<Options>;
|
|
5
|
+
declare const DEFAULT_GET_TOKEN_FN: () => null;
|
|
6
|
+
declare const NOOP: () => void;
|
|
7
|
+
export { HTTP_RESPONSE_MAP, HTTP_ERROR_MAP, DEFAULT_OPTIONS, DEFAULT_GET_TOKEN_FN, NOOP };
|
|
8
|
+
//# sourceMappingURL=defaults.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/request/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtC,QAAA,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAG7C,CAAA;AAGD,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAa1C,CAAA;AAGD,QAAA,MAAM,eAAe,EAAE,QAAQ,CAAC,OAAO,CAOtC,CAAA;AAED,QAAA,MAAM,oBAAoB,YAAa,CAAA;AAGvC,QAAA,MAAM,IAAI,YAAW,CAAA;AAErB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// 响应代码映射表
|
|
2
|
+
const HTTP_RESPONSE_MAP = {
|
|
3
|
+
'0': 'SUCCESS',
|
|
4
|
+
'3': 'NO_AUTH'
|
|
5
|
+
};
|
|
6
|
+
// HTTP 状态码错误映射表
|
|
7
|
+
const HTTP_ERROR_MAP = {
|
|
8
|
+
'400': 'axios.defaults.400',
|
|
9
|
+
'401': 'axios.defaults.401',
|
|
10
|
+
'403': 'axios.defaults.403',
|
|
11
|
+
'404': 'axios.defaults.404',
|
|
12
|
+
'500': 'axios.defaults.500',
|
|
13
|
+
'501': 'axios.defaults.501',
|
|
14
|
+
'502': 'axios.defaults.502',
|
|
15
|
+
'503': 'axios.defaults.503',
|
|
16
|
+
'504': 'axios.defaults.504',
|
|
17
|
+
'505': 'axios.defaults.505',
|
|
18
|
+
'506': 'axios.defaults.506',
|
|
19
|
+
'507': 'axios.defaults.507'
|
|
20
|
+
};
|
|
21
|
+
// 默认配置
|
|
22
|
+
const DEFAULT_OPTIONS = {
|
|
23
|
+
baseURL: '',
|
|
24
|
+
timeout: 60000,
|
|
25
|
+
showErrorMsg: true,
|
|
26
|
+
headers: {
|
|
27
|
+
'Content-Type': 'application/x-www-form-urlencoded'
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
const DEFAULT_GET_TOKEN_FN = () => null;
|
|
31
|
+
// 共享空函数(通过引用实现共用同一个内存空间,可略微减少内存分配)
|
|
32
|
+
const NOOP = () => { };
|
|
33
|
+
|
|
34
|
+
export { DEFAULT_GET_TOKEN_FN, DEFAULT_OPTIONS, HTTP_ERROR_MAP, HTTP_RESPONSE_MAP, NOOP };
|
|
35
|
+
//# sourceMappingURL=defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defaults.js","sources":["../../src/request/defaults.ts"],"sourcesContent":[null],"names":[],"mappings":"AAEA;AACA,MAAM,iBAAiB,GAA2B;AAChD,IAAA,GAAG,EAAE,SAAS;AACd,IAAA,GAAG,EAAE;;AAGP;AACA,MAAM,cAAc,GAA2B;AAC7C,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE,oBAAoB;AAC3B,IAAA,KAAK,EAAE;;AAGT;AACA,MAAM,eAAe,GAAsB;AACzC,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,OAAO,EAAE,KAAK;AACd,IAAA,YAAY,EAAE,IAAI;AAClB,IAAA,OAAO,EAAE;AACP,QAAA,cAAc,EAAE;AACjB;;AAGH,MAAM,oBAAoB,GAAG,MAAM;AAEnC;AACA,MAAM,IAAI,GAAG,MAAK,EAAE;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/request/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,SAAS,CAAA;AAC5B,cAAc,SAAS,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { createAxiosInstance, testI18n } from './axios.js';
|
|
2
|
+
|
|
3
|
+
console.log('%c✨ 欢迎使用 @jnrs/core/request', 'background: #2459E2; color: #f2f2f2; font-weight: bold; padding: 4px 8px; border-radius: 4px; font-family: "Helvetica Neue", sans-serif;');
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/request/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA,OAAO,CAAC,GAAG,CACT,6BAA6B,EAC7B,0IAA0I,CAC3I"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import 'axios';
|
|
2
|
+
declare module 'axios' {
|
|
3
|
+
interface AxiosRequestConfig {
|
|
4
|
+
showErrorMsg?: boolean;
|
|
5
|
+
noAuth?: boolean;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
interface Options {
|
|
9
|
+
/**
|
|
10
|
+
* 请求的根路径,默认 ''
|
|
11
|
+
*/
|
|
12
|
+
baseURL?: string;
|
|
13
|
+
/**
|
|
14
|
+
* 请求超时时间(ms),默认 60000
|
|
15
|
+
*/
|
|
16
|
+
timeout?: number;
|
|
17
|
+
/**
|
|
18
|
+
* 是否显示错误信息,默认 true
|
|
19
|
+
*/
|
|
20
|
+
showErrorMsg?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* 请求头,默认 { 'Content-Type': 'application/x-www-form-urlencoded' }
|
|
23
|
+
*/
|
|
24
|
+
headers?: Record<string, string>;
|
|
25
|
+
}
|
|
26
|
+
interface MessageOptions {
|
|
27
|
+
message: string;
|
|
28
|
+
type?: 'success' | 'error' | 'warning';
|
|
29
|
+
grouping?: boolean;
|
|
30
|
+
duration?: number;
|
|
31
|
+
showClose?: boolean;
|
|
32
|
+
}
|
|
33
|
+
interface CreateRequestOptions {
|
|
34
|
+
/**
|
|
35
|
+
* 请求配置项
|
|
36
|
+
* @param baseURL - 请求的根路径
|
|
37
|
+
* @param timeout - 请求超时时间(ms)
|
|
38
|
+
* @param showErrorMsg - 是否显示错误信息
|
|
39
|
+
* @param headers - 请求头
|
|
40
|
+
*/
|
|
41
|
+
options?: Options;
|
|
42
|
+
responseMap?: Record<number, string>;
|
|
43
|
+
handleMessageFn?: (opts: MessageOptions) => void;
|
|
44
|
+
handleGetTokenFn?: () => string | null | undefined;
|
|
45
|
+
handleNoAuthFn?: () => void;
|
|
46
|
+
}
|
|
47
|
+
type Data = object | FormData | URLSearchParams | string | null;
|
|
48
|
+
/**
|
|
49
|
+
* 请求参数类型
|
|
50
|
+
* @param url - 请求地址
|
|
51
|
+
* @param mockUrl - MOCK 请求地址
|
|
52
|
+
* @param method - 请求方法
|
|
53
|
+
* @param headers - 请求头
|
|
54
|
+
* @param params - 请求参数
|
|
55
|
+
* @param data - 请求数据
|
|
56
|
+
* @param showErrorMsg - 是否显示错误信息
|
|
57
|
+
* @param noAuth - 是否需要授权
|
|
58
|
+
*/
|
|
59
|
+
interface BusinessRequest<D = Data> {
|
|
60
|
+
url: string;
|
|
61
|
+
mockUrl?: string;
|
|
62
|
+
method: 'get' | 'post' | 'put' | 'delete' | 'patch' | 'head' | 'options';
|
|
63
|
+
headers?: Record<string, string>;
|
|
64
|
+
params?: Record<string, unknown>;
|
|
65
|
+
data?: D;
|
|
66
|
+
showErrorMsg?: boolean;
|
|
67
|
+
noAuth?: boolean;
|
|
68
|
+
responseType?: 'json' | 'blob' | 'arraybuffer' | 'text' | 'stream';
|
|
69
|
+
}
|
|
70
|
+
interface BusinessResponse<T = unknown> {
|
|
71
|
+
code: number;
|
|
72
|
+
msg: string;
|
|
73
|
+
data?: T;
|
|
74
|
+
}
|
|
75
|
+
export type { Options, MessageOptions, CreateRequestOptions, BusinessResponse, BusinessRequest };
|
|
76
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/request/types.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,CAAA;AAEd,OAAO,QAAQ,OAAO,CAAC;IACrB,UAAU,kBAAkB;QAC1B,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB;CACF;AAED,UAAU,OAAO;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACjC;AAED,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,UAAU,oBAAoB;IAC5B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAChD,gBAAgB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;IAClD,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;CAC5B;AAGD,KAAK,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,GAAG,MAAM,GAAG,IAAI,CAAA;AAE/D;;;;;;;;;;GAUG;AACH,UAAU,eAAe,CAAC,CAAC,GAAG,IAAI;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAA;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,CAAC,CAAA;IACR,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,QAAQ,CAAA;CACnE;AAGD,UAAU,gBAAgB,CAAC,CAAC,GAAG,OAAO;IACpC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,CAAC,CAAA;CACT;AAED,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAA"}
|