@das-fed/utils 7.0.5-test.21 → 7.0.5-test.22

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.
Files changed (61) hide show
  1. package/api-services/index.js +1034 -1035
  2. package/api-services/index.js.gz +0 -0
  3. package/api-services/modules/app-manage/index.js +786 -766
  4. package/api-services/modules/app-manage/index.js.gz +0 -0
  5. package/api-services/modules/authentication/index.js +851 -853
  6. package/api-services/modules/authentication/index.js.gz +0 -0
  7. package/api-services/modules/bems/index.js +204 -188
  8. package/api-services/modules/bems/index.js.gz +0 -0
  9. package/api-services/modules/contract/index.js +851 -853
  10. package/api-services/modules/contract/index.js.gz +0 -0
  11. package/api-services/modules/duty-manage/index.js +856 -858
  12. package/api-services/modules/duty-manage/index.js.gz +0 -0
  13. package/api-services/modules/enterpriseright/index.js +780 -768
  14. package/api-services/modules/enterpriseright/index.js.gz +0 -0
  15. package/api-services/modules/file/index.js +178 -162
  16. package/api-services/modules/file/index.js.gz +0 -0
  17. package/api-services/modules/gateway-edge/index.js +192 -176
  18. package/api-services/modules/gateway-edge/index.js.gz +0 -0
  19. package/api-services/modules/index.js +643 -626
  20. package/api-services/modules/index.js.gz +0 -0
  21. package/api-services/modules/iot/index.js +1100 -1102
  22. package/api-services/modules/iot/index.js.gz +0 -0
  23. package/api-services/modules/justauth/index.d.ts +1 -1
  24. package/api-services/modules/justauth/index.js +758 -723
  25. package/api-services/modules/justauth/index.js.gz +0 -0
  26. package/api-services/modules/knowledge/index.js +755 -721
  27. package/api-services/modules/knowledge/index.js.gz +0 -0
  28. package/api-services/modules/link/index.js +851 -853
  29. package/api-services/modules/link/index.js.gz +0 -0
  30. package/api-services/modules/permission/index.js +851 -853
  31. package/api-services/modules/permission/index.js.gz +0 -0
  32. package/api-services/modules/platformManage/index.js +276 -260
  33. package/api-services/modules/platformManage/index.js.gz +0 -0
  34. package/api-services/modules/portal/index.js +851 -853
  35. package/api-services/modules/portal/index.js.gz +0 -0
  36. package/api-services/modules/space-manage/index.js +755 -721
  37. package/api-services/modules/space-manage/index.js.gz +0 -0
  38. package/api-services/modules/super-admin/index.js +207 -191
  39. package/api-services/modules/super-admin/index.js.gz +0 -0
  40. package/api-services/modules/supplier/index.js +199 -183
  41. package/api-services/modules/supplier/index.js.gz +0 -0
  42. package/api-services/modules/supplychain-manage/index.js +192 -176
  43. package/api-services/modules/supplychain-manage/index.js.gz +0 -0
  44. package/api-services/modules/systemConfiguration/index.js +192 -176
  45. package/api-services/modules/systemConfiguration/index.js.gz +0 -0
  46. package/api-services/modules/tool/index.js +720 -708
  47. package/api-services/modules/tool/index.js.gz +0 -0
  48. package/api-services/src/create-service/index.js +848 -846
  49. package/api-services/src/create-service/index.js.gz +0 -0
  50. package/create-api-service/index.js +308 -292
  51. package/create-api-service/index.js.gz +0 -0
  52. package/create-api-service/sso/index.js +533 -498
  53. package/create-api-service/sso/index.js.gz +0 -0
  54. package/create-api-service/thirdLogout/index.d.ts +19 -0
  55. package/create-api-service/thirdLogout/index.js +1834 -0
  56. package/create-api-service/thirdLogout/index.js.gz +0 -0
  57. package/create-api-service/unauthorized-recovery/index.d.ts +30 -0
  58. package/create-api-service/unauthorized-recovery/index.js +10 -0
  59. package/curring-http/type.d.ts +93 -87
  60. package/esm-map.json +8 -1
  61. package/package.json +4 -4
@@ -0,0 +1,30 @@
1
+ import { CurringConfig } from '../../curring-http/type';
2
+
3
+ /** 401 恢复成功后的结果。 */
4
+ export interface UnauthorizedRecoveryResult {
5
+ /** 恢复后用于重试原请求的平台访问令牌。 */
6
+ accessToken: string;
7
+ }
8
+ /** 401 恢复处理器接收的上下文。 */
9
+ export interface UnauthorizedRecoveryContext {
10
+ /** Axios 返回的原始错误。 */
11
+ error: any;
12
+ /** 发生 401 的原始请求配置。 */
13
+ config: CurringConfig;
14
+ }
15
+ /** 项目可注册的 401 恢复处理器。 */
16
+ export type UnauthorizedRecoveryHandler = (context: UnauthorizedRecoveryContext) => Promise<UnauthorizedRecoveryResult | null>;
17
+ /**
18
+ * 注册项目自定义的 401 恢复处理器。
19
+ * 后注册的处理器会覆盖之前的处理器,避免不同项目逻辑同时接管认证流程。
20
+ * @param handler 项目自定义恢复处理器
21
+ * @returns 注销当前处理器的方法
22
+ */
23
+ export declare const registerUnauthorizedRecovery: (handler: UnauthorizedRecoveryHandler) => () => void;
24
+ /**
25
+ * 尝试恢复 401 请求。
26
+ * 并发 401 共用同一个恢复任务,避免短时间内重复续签 Token。
27
+ * @param context 401 请求上下文
28
+ * @returns 恢复成功后的新 Token;无法恢复时返回 null
29
+ */
30
+ export declare const recoverUnauthorized: (context: UnauthorizedRecoveryContext) => unknown;
@@ -0,0 +1,10 @@
1
+ let e = null, l = null;
2
+ const n = (r) => (e = r, () => {
3
+ e === r && (e = null);
4
+ }), o = async (r) => e ? (l || (l = Promise.resolve(e(r)).finally(() => {
5
+ l = null;
6
+ })), l) : null;
7
+ export {
8
+ o as recoverUnauthorized,
9
+ n as registerUnauthorizedRecovery
10
+ };
@@ -1,89 +1,95 @@
1
1
  import { AxiosInstance, AxiosRequestConfig, AxiosError } from 'axios';
2
2
  import { Ref } from 'vue';
3
-
4
-
5
- /** 请求工具配置项 */
6
- export type CurringConfig = AxiosRequestConfig & {
7
- /** 请求实例 */
8
- axiosInstance?: AxiosInstance
9
-
10
- /** 请求方法 */
11
- method?: Method
12
-
13
- /** 请求的body数据 */
14
- data?: any
15
-
16
- /** 请求的query数据 */
17
- params?: any
18
-
19
- /** 接口地址前缀 */
20
- urlPrefix?: string
21
-
22
- /** 标记为公共接口,不需要鉴权,默认为false */
23
- public?: boolean
24
-
25
- /** 请求成功执行的回调 */
26
- onSuccess?: (res: any, config: CurringConfig) => Promise<any>
27
-
28
- /** 请求失败执行的回调 */
29
- onError?: (error: any, config: CurringConfig) => Promise<any>
30
-
31
- /** 自定义处理请求失败执行的回调 */
32
- onCustomError?: (error: any, config: CurringConfig) => Promise<any>
33
-
34
- /** 不管请求成功或失败都会执行的回调 */
35
- finally?: (config: CurringConfig) => any
36
-
37
- /** 每次请求之前都会执行的函数 */
38
- beforeRun?: (config: CurringConfig) => Promise<CurringConfig>
39
-
40
- /** 自定义错误信息 */
41
- customErrorMessage?: (
42
- /** 原始错误信息 */
43
- message: string,
44
-
45
- /** 原始错误对象 */
46
- error: any,
47
- ) => string | null | undefined
48
-
49
- /** 忽略错误提示 */
50
- ignoreErrorMessage?: boolean
51
-
52
- /** 接口401是否重定向到登录页 */
53
- noRedireLogin?: boolean
54
-
55
- /** 开启CSRF安全选项 */
56
- csrf?: boolean
57
- }
58
-
59
- export type Method = 'get' | 'post' | 'put' | 'delete' | 'patch'
60
-
61
- export type CurringConfigFun = (config: CurringConfig) => CurringConfig | Promise<CurringConfig>
62
-
63
- export type CurringRes = {
64
- /** 请求时返回的接口数据 */
65
- data: Ref<any>
66
-
67
- /** 请求时的错误信息 */
68
- error: Ref<any>
69
-
70
- /** 请求时的loading */
71
- loading: Ref<boolean>
72
-
73
- /** 发起请求 返回格式 [ error, data ] */
74
- run: (payload?: any, config?: CurringConfig) => CurringRunRes
75
-
76
- /** 取消请求控制器 */
77
- abortController: Ref<AbortController | null>
78
- }
79
-
80
- /** 返回为数组 [error, data], 请求成功error为null,请求失败data为null */
81
- export type CurringRunRes = Promise<
82
- [
83
- /** 请求返回的错误信息,请求成功时为null,请求失败时为错误信息 */
84
- error: { code: string | number; msg: string; error: AxiosError } | null,
85
-
86
- /** 请求返回的接口数据,请求成功时为后端数据,请求失败时为null */
87
- data: any | null,
88
- ]
89
- >
3
+
4
+
5
+ /** 请求工具配置项 */
6
+ export type CurringConfig = AxiosRequestConfig & {
7
+ /** 请求实例 */
8
+ axiosInstance?: AxiosInstance
9
+
10
+ /** 请求方法 */
11
+ method?: Method
12
+
13
+ /** 请求的body数据 */
14
+ data?: any
15
+
16
+ /** 请求的query数据 */
17
+ params?: any
18
+
19
+ /** 接口地址前缀 */
20
+ urlPrefix?: string
21
+
22
+ /** 标记为公共接口,不需要鉴权,默认为false */
23
+ public?: boolean
24
+
25
+ /** 请求成功执行的回调 */
26
+ onSuccess?: (res: any, config: CurringConfig) => Promise<any>
27
+
28
+ /** 请求失败执行的回调 */
29
+ onError?: (error: any, config: CurringConfig) => Promise<any>
30
+
31
+ /** 自定义处理请求失败执行的回调 */
32
+ onCustomError?: (error: any, config: CurringConfig) => Promise<any>
33
+
34
+ /** 不管请求成功或失败都会执行的回调 */
35
+ finally?: (config: CurringConfig) => any
36
+
37
+ /** 每次请求之前都会执行的函数 */
38
+ beforeRun?: (config: CurringConfig) => Promise<CurringConfig>
39
+
40
+ /** 自定义错误信息 */
41
+ customErrorMessage?: (
42
+ /** 原始错误信息 */
43
+ message: string,
44
+
45
+ /** 原始错误对象 */
46
+ error: any,
47
+ ) => string | null | undefined
48
+
49
+ /** 忽略错误提示 */
50
+ ignoreErrorMessage?: boolean
51
+
52
+ /** 接口401是否重定向到登录页 */
53
+ noRedireLogin?: boolean
54
+
55
+ /** 是否跳过项目注册的401恢复逻辑 */
56
+ skipUnauthorizedRecovery?: boolean
57
+
58
+ /** 标记当前请求已完成一次401恢复重试,防止重复续签 */
59
+ _unauthorizedRecoveryRetried?: boolean
60
+
61
+ /** 开启CSRF安全选项 */
62
+ csrf?: boolean
63
+ }
64
+
65
+ export type Method = 'get' | 'post' | 'put' | 'delete' | 'patch'
66
+
67
+ export type CurringConfigFun = (config: CurringConfig) => CurringConfig | Promise<CurringConfig>
68
+
69
+ export type CurringRes = {
70
+ /** 请求时返回的接口数据 */
71
+ data: Ref<any>
72
+
73
+ /** 请求时的错误信息 */
74
+ error: Ref<any>
75
+
76
+ /** 请求时的loading */
77
+ loading: Ref<boolean>
78
+
79
+ /** 发起请求 返回格式 [ error, data ] */
80
+ run: (payload?: any, config?: CurringConfig) => CurringRunRes
81
+
82
+ /** 取消请求控制器 */
83
+ abortController: Ref<AbortController | null>
84
+ }
85
+
86
+ /** 返回为数组 [error, data], 请求成功error为null,请求失败data为null */
87
+ export type CurringRunRes = Promise<
88
+ [
89
+ /** 请求返回的错误信息,请求成功时为null,请求失败时为错误信息 */
90
+ error: { code: string | number; msg: string; error: AxiosError } | null,
91
+
92
+ /** 请求返回的接口数据,请求成功时为后端数据,请求失败时为null */
93
+ data: any | null,
94
+ ]
95
+ >
package/esm-map.json CHANGED
@@ -144,5 +144,12 @@
144
144
  "getFileExtension": "/common-tools/get-file-extension/index",
145
145
  "getLanguages": "/common-info/index",
146
146
  "appendQueryParams": "/common-tools/get-url-params/index",
147
- "refreshToken": "/create-api-service/sso/index"
147
+ "refreshToken": "/create-api-service/sso/index",
148
+ "isThirdLogin": "/create-api-service/thirdLogout/index",
149
+ "thirdLogout": "/create-api-service/thirdLogout/index",
150
+ "oauthClient": "/api-services/modules/justauth/index",
151
+ "zhongshenLogout": "/create-api-service/thirdLogout/index",
152
+ "jmcLogout": "/create-api-service/thirdLogout/index",
153
+ "registerUnauthorizedRecovery": "/create-api-service/unauthorized-recovery/index",
154
+ "recoverUnauthorized": "/create-api-service/unauthorized-recovery/index"
148
155
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@das-fed/utils",
3
- "version": "7.0.5-test.21",
3
+ "version": "7.0.5-test.22",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -9,7 +9,7 @@
9
9
  "license": "ISC",
10
10
  "dependencies": {
11
11
  "@antv/x6": "^2.18.1",
12
- "@das-fed/utils": "7.0.5-test.21",
12
+ "@das-fed/utils": "7.0.5-test.22",
13
13
  "@vue/shared": "^3.4.21",
14
14
  "@vueuse/core": "^9.6.0",
15
15
  "axios": "^1.6.7",
@@ -21,8 +21,8 @@
21
21
  "vue": "^3.4.21"
22
22
  },
23
23
  "devDependencies": {
24
- "@das-fed/cli": "7.0.5-test.21",
25
- "@das-fed/web": "7.0.5-test.21",
24
+ "@das-fed/cli": "7.0.5-test.22",
25
+ "@das-fed/web": "7.0.5-test.22",
26
26
  "@types/js-cookie": "^3.0.6",
27
27
  "@types/lodash-es": "^4.17.12",
28
28
  "@types/qs": "^6.9.15",