@cicctencent/midwayjs-base 1.0.35 → 1.0.36

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 (66) hide show
  1. package/README.md +347 -1
  2. package/dist/types/config/config.default.d.ts +3 -0
  3. package/dist/types/config/config.default.js +171 -0
  4. package/dist/types/config/env.js +52 -0
  5. package/dist/{configuration.js → types/configuration.js} +44 -20
  6. package/dist/{filter → types/filter}/default.filter.js +1 -2
  7. package/dist/{filter → types/filter}/notfound.filter.js +1 -3
  8. package/dist/{guard → types/guard}/api.d.ts +0 -3
  9. package/dist/types/guard/api.js +77 -0
  10. package/dist/{guard → types/guard}/auth.d.ts +0 -3
  11. package/dist/types/guard/auth.js +182 -0
  12. package/dist/{index.js → types/index.js} +27 -6
  13. package/dist/types/lib/decorator.d.ts +6 -0
  14. package/dist/types/lib/decorator.js +48 -0
  15. package/dist/types/lib/jwt.d.ts +34 -0
  16. package/dist/types/lib/jwt.js +59 -0
  17. package/dist/{lib → types/lib}/request.d.ts +0 -5
  18. package/dist/{lib → types/lib}/request.js +1 -1
  19. package/dist/{lib → types/lib}/utils.d.ts +1 -7
  20. package/dist/types/lib/utils.js +78 -0
  21. package/dist/types/middleware/apiResultFormatter.d.ts +7 -0
  22. package/dist/types/middleware/apiResultFormatter.js +83 -0
  23. package/dist/types/middleware/detect.middleware.d.ts +4 -0
  24. package/dist/types/middleware/detect.middleware.js +58 -0
  25. package/dist/types/middleware/requestInit.d.ts +7 -0
  26. package/dist/types/middleware/requestInit.js +139 -0
  27. package/dist/types/service/session.service.d.ts +9 -0
  28. package/dist/types/service/session.service.js +56 -0
  29. package/dist/types/service/tencent.service.d.ts +37 -0
  30. package/dist/types/service/tencent.service.js +132 -0
  31. package/dist/types/{base.controller.js → types/base.controller.js} +1 -4
  32. package/dist/types/{base.model.service.d.ts → types/base.model.service.d.ts} +1 -9
  33. package/dist/types/types/base.model.service.js +76 -0
  34. package/dist/types/{base.service.d.ts → types/base.service.d.ts} +1 -10
  35. package/dist/types/types/base.service.js +70 -0
  36. package/dist/types/{session.service.interface.d.ts → types/session.service.interface.d.ts} +1 -15
  37. package/dist/types/{session.service.interface.js → types/session.service.interface.js} +1 -5
  38. package/package.json +4 -1
  39. package/dist/config/config.default.d.ts +0 -3
  40. package/dist/config/config.default.js +0 -160
  41. package/dist/config/env.js +0 -19
  42. package/dist/guard/api.js +0 -88
  43. package/dist/guard/auth.js +0 -202
  44. package/dist/lib/decorator.d.ts +0 -36
  45. package/dist/lib/decorator.js +0 -79
  46. package/dist/lib/jwt.d.ts +0 -135
  47. package/dist/lib/jwt.js +0 -38
  48. package/dist/lib/utils.js +0 -89
  49. package/dist/middleware/apiResultFormatter.d.ts +0 -8
  50. package/dist/middleware/apiResultFormatter.js +0 -84
  51. package/dist/middleware/detect.middleware.d.ts +0 -5
  52. package/dist/middleware/detect.middleware.js +0 -61
  53. package/dist/middleware/requestInit.d.ts +0 -8
  54. package/dist/middleware/requestInit.js +0 -100
  55. package/dist/service/session.service.d.ts +0 -33
  56. package/dist/service/session.service.js +0 -81
  57. package/dist/service/tencent.service.d.ts +0 -45
  58. package/dist/service/tencent.service.js +0 -105
  59. package/dist/types/base.model.service.js +0 -86
  60. package/dist/types/base.service.js +0 -86
  61. /package/dist/{config → types/config}/env.d.ts +0 -0
  62. /package/dist/{configuration.d.ts → types/configuration.d.ts} +0 -0
  63. /package/dist/{filter → types/filter}/default.filter.d.ts +0 -0
  64. /package/dist/{filter → types/filter}/notfound.filter.d.ts +0 -0
  65. /package/dist/{index.d.ts → types/index.d.ts} +0 -0
  66. /package/dist/types/{base.controller.d.ts → types/base.controller.d.ts} +0 -0
@@ -1,36 +0,0 @@
1
- /**
2
- * 判断是否校验token的api装饰器
3
- * @param need 是否要
4
- * @returns
5
- */
6
- export declare function checkApiToken(need?: boolean): MethodDecorator;
7
- /**
8
- * 获取装饰的是否需要toke验证
9
- * @param target 对象
10
- * @param propertyKey 属性或方法名
11
- */
12
- export declare function getApiToken(target: any, propertyKey: any): any;
13
- /**
14
- * 判断是否校验登陆态
15
- * @param need 是否要
16
- * @returns
17
- */
18
- export declare function checkLogin(need?: boolean): MethodDecorator;
19
- /**
20
- * 获取装饰的是否需要校验登陆态
21
- * @param target 对象
22
- * @param propertyKey 属性或方法名
23
- */
24
- export declare function getCheckLogin(target: any, propertyKey: any): any;
25
- /**
26
- * 判断是否校验在IP白名单内
27
- * @param need 是否要
28
- * @returns
29
- */
30
- export declare function checkIP(need?: boolean): MethodDecorator;
31
- /**
32
- * 获取装饰的是否需要校验IP白名单
33
- * @param target 对象
34
- * @param propertyKey 属性或方法名
35
- */
36
- export declare function getCheckIP(target: any, propertyKey: any): any;
@@ -1,79 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.checkApiToken = checkApiToken;
4
- exports.getApiToken = getApiToken;
5
- exports.checkLogin = checkLogin;
6
- exports.getCheckLogin = getCheckLogin;
7
- exports.checkIP = checkIP;
8
- exports.getCheckIP = getCheckIP;
9
- // @ts-ignore
10
- const core_1 = require("@midwayjs/core");
11
- const decorator_1 = require("@fefeding/common/dist/utils/decorator");
12
- const CheckIPKey = 'decorator:CheckIPKey';
13
- /**
14
- * 判断是否校验token的api装饰器
15
- * @param need 是否要
16
- * @returns
17
- */
18
- function checkApiToken(need = true) {
19
- return (target, propertyKey) => {
20
- // 只保存元数据
21
- (0, core_1.savePropertyMetadata)(decorator_1.default.apiTokenMetadataKey, need, target, propertyKey);
22
- };
23
- }
24
- /**
25
- * 获取装饰的是否需要toke验证
26
- * @param target 对象
27
- * @param propertyKey 属性或方法名
28
- */
29
- function getApiToken(target, propertyKey) {
30
- try {
31
- const value = (0, core_1.getPropertyMetadata)(decorator_1.default.apiTokenMetadataKey, target, propertyKey);
32
- return value;
33
- }
34
- catch (e) {
35
- console.log(e);
36
- return false;
37
- }
38
- }
39
- /**
40
- * 判断是否校验登陆态
41
- * @param need 是否要
42
- * @returns
43
- */
44
- function checkLogin(need = true) {
45
- return (target, propertyKey) => {
46
- // 只保存元数据
47
- (0, core_1.savePropertyMetadata)(decorator_1.default.apiAuthMetadataKey, need, target, propertyKey);
48
- };
49
- }
50
- /**
51
- * 获取装饰的是否需要校验登陆态
52
- * @param target 对象
53
- * @param propertyKey 属性或方法名
54
- */
55
- function getCheckLogin(target, propertyKey) {
56
- const value = (0, core_1.getPropertyMetadata)(decorator_1.default.apiAuthMetadataKey, target, propertyKey);
57
- return value;
58
- }
59
- /**
60
- * 判断是否校验在IP白名单内
61
- * @param need 是否要
62
- * @returns
63
- */
64
- function checkIP(need = true) {
65
- return (target, propertyKey) => {
66
- // 只保存元数据
67
- (0, core_1.savePropertyMetadata)(CheckIPKey, need, target, propertyKey);
68
- };
69
- }
70
- /**
71
- * 获取装饰的是否需要校验IP白名单
72
- * @param target 对象
73
- * @param propertyKey 属性或方法名
74
- */
75
- function getCheckIP(target, propertyKey) {
76
- const value = (0, core_1.getPropertyMetadata)(CheckIPKey, target, propertyKey);
77
- return value;
78
- }
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSxzQ0FVQztBQU9ELGtDQWFDO0FBT0QsZ0NBVUM7QUFPRCxzQ0FPQztBQVNELDBCQVVDO0FBT0QsZ0NBT0M7QUF6R0QsYUFBYTtBQUNiLHlDQUE0RTtBQUM1RSxxRUFBK0Q7QUFFL0QsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUM7QUFFMUM7Ozs7R0FJRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxJQUFJLEdBQUcsSUFBSTtJQUNyQyxPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxFQUFFO1FBQzNCLFNBQVM7UUFDVCxJQUFBLDJCQUFvQixFQUNoQixtQkFBVSxDQUFDLG1CQUFtQixFQUM5QixJQUFJLEVBQ0osTUFBTSxFQUNOLFdBQVcsQ0FDZCxDQUFDO0lBQ04sQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVc7SUFDM0MsSUFBSSxDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBQSwwQkFBbUIsRUFDN0IsbUJBQVUsQ0FBQyxtQkFBbUIsRUFDOUIsTUFBTSxFQUNOLFdBQVcsQ0FDZCxDQUFDO1FBQ0YsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELE9BQU0sQ0FBQyxFQUFFLENBQUM7UUFDTixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2YsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztBQUNMLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLElBQUksR0FBRyxJQUFJO0lBQ2xDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLEVBQUU7UUFDM0IsU0FBUztRQUNULElBQUEsMkJBQW9CLEVBQ2hCLG1CQUFVLENBQUMsa0JBQWtCLEVBQzdCLElBQUksRUFDSixNQUFNLEVBQ04sV0FBVyxDQUNkLENBQUM7SUFDTixDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxNQUFNLEVBQUUsV0FBVztJQUM3QyxNQUFNLEtBQUssR0FBRyxJQUFBLDBCQUFtQixFQUM3QixtQkFBVSxDQUFDLGtCQUFrQixFQUM3QixNQUFNLEVBQ04sV0FBVyxDQUNkLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBSUQ7Ozs7R0FJRztBQUNILFNBQWdCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSTtJQUMvQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxFQUFFO1FBQzNCLFNBQVM7UUFDVCxJQUFBLDJCQUFvQixFQUNoQixVQUFVLEVBQ1YsSUFBSSxFQUNKLE1BQU0sRUFDTixXQUFXLENBQ2QsQ0FBQztJQUNOLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLE1BQU0sRUFBRSxXQUFXO0lBQzFDLE1BQU0sS0FBSyxHQUFHLElBQUEsMEJBQW1CLEVBQzdCLFVBQVUsRUFDVixNQUFNLEVBQ04sV0FBVyxDQUNkLENBQUM7SUFDRixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIn0=
package/dist/lib/jwt.d.ts DELETED
@@ -1,135 +0,0 @@
1
- export type Algorithm = 'HS256' | 'HS384' | 'HS512' | 'RS256' | 'RS384' | 'RS512' | 'ES256' | 'ES384' | 'ES512' | 'PS256' | 'PS384' | 'PS512';
2
- export interface VerifyOptions {
3
- /**
4
- * 允许的算法列表
5
- * 如果未指定,将根据提供的密钥类型使用默认值:
6
- * - secret: ['HS256', 'HS384', 'HS512']
7
- * - rsa: ['RS256', 'RS384', 'RS512']
8
- * - ec: ['ES256', 'ES384', 'ES512']
9
- * - 默认: ['RS256', 'RS384', 'RS512']
10
- */
11
- algorithms?: Algorithm[];
12
- /**
13
- * 用于验证受众(aud 声明)
14
- * 可以是字符串、正则表达式或它们的数组
15
- * 例如: "urn:foo", /urn:f[o]{2}/, [/urn:f[o]{2}/, "urn:bar"]
16
- */
17
- audience?: string | RegExp | (string | RegExp)[];
18
- /**
19
- * 如果为 true,返回包含 decoded { payload, header, signature } 的对象
20
- * 而不仅仅是 payload 的内容
21
- */
22
- complete?: boolean;
23
- /**
24
- * issuer 声明的有效值(iss 字段),可以是字符串或字符串数组
25
- */
26
- issuer?: string | string[];
27
- /**
28
- * 用于验证 JWT ID(jti 声明)的值
29
- */
30
- jwtid?: string;
31
- /**
32
- * 如果为 true,则不验证令牌的过期时间(exp 声明)
33
- */
34
- ignoreExpiration?: boolean;
35
- /**
36
- * 如果为 true,则不验证令牌的生效时间(nbf 声明)
37
- */
38
- ignoreNotBefore?: boolean;
39
- /**
40
- * 用于验证主题(sub 声明)的值
41
- */
42
- subject?: string;
43
- /**
44
- * 检查 nbf 和 exp 声明时允许的秒数偏差
45
- * 用于处理不同服务器之间的时钟差异
46
- */
47
- clockTolerance?: number;
48
- /**
49
- * 令牌仍然有效的最大允许年龄
50
- * 可以是秒数或描述时间跨度的字符串
51
- * 例如: 1000, "2 days", "10h", "7d"
52
- * 数值被解释为秒数,字符串需提供时间单位
53
- */
54
- maxAge?: number | string;
55
- /**
56
- * 用于所有必要比较的当前时间(以秒为单位)
57
- */
58
- clockTimestamp?: number;
59
- /**
60
- * 用于验证 nonce 声明的值
61
- * 在 OpenID 中用于 ID 令牌
62
- */
63
- nonce?: string;
64
- /**
65
- * 如果为 true,允许与指定算法不匹配的非对称密钥
66
- * 此选项仅用于向后兼容,应避免使用
67
- */
68
- allowInvalidAsymmetricKeyTypes?: boolean;
69
- }
70
- export interface SignOptions {
71
- /**
72
- * 用于签名的算法
73
- * @default 'HS256'
74
- */
75
- algorithm?: Algorithm;
76
- /**
77
- * 令牌过期时间
78
- * 可以是秒数或描述时间跨度的字符串(如 "2 days"、"10h")
79
- * 不能与 payload 中的 exp 同时存在
80
- */
81
- expiresIn?: number | string;
82
- /**
83
- * 令牌生效时间(在此时间前令牌无效)
84
- * 可以是秒数或描述时间跨度的字符串(如 "2 days"、"10h")
85
- * 不能与 payload 中的 nbf 同时存在
86
- */
87
- notBefore?: number | string;
88
- /**
89
- * 受众声明(aud)
90
- * 不能与 payload 中的 aud 同时存在
91
- */
92
- audience?: string | string[];
93
- /**
94
- * 发行者声明(iss)
95
- * 不能与 payload 中的 iss 同时存在
96
- */
97
- issuer?: string;
98
- /**
99
- * JWT ID 声明(jti)
100
- */
101
- jwtid?: string;
102
- /**
103
- * 主题声明(sub)
104
- * 不能与 payload 中的 sub 同时存在
105
- */
106
- subject?: string;
107
- /**
108
- * 如果为 true,则不在令牌中包含 iat(发行时间)声明
109
- */
110
- noTimestamp?: boolean;
111
- /**
112
- * 自定义 JWT 头部信息
113
- */
114
- header?: Record<string, any>;
115
- /**
116
- * 用于头部中的 kid(密钥 ID)声明
117
- */
118
- keyid?: string;
119
- /**
120
- * 如果为 true,签名函数将直接修改 payload 对象
121
- * 在需要获取应用声明后但编码前的原始 payload 引用时有用
122
- */
123
- mutatePayload?: boolean;
124
- /**
125
- * 如果为 true,允许使用 modulus 小于 2048 的私钥进行 RSA 签名
126
- */
127
- allowInsecureKeySizes?: boolean;
128
- /**
129
- * 如果为 true,允许与指定算法不匹配的非对称密钥
130
- * 此选项仅用于向后兼容,应避免使用
131
- */
132
- allowInvalidAsymmetricKeyTypes?: boolean;
133
- }
134
- export declare function decodeJWT(token: string, secretKey: string, options?: VerifyOptions): any;
135
- export declare function encodeJWT(data: any, secretKey: string, options?: SignOptions): any;
package/dist/lib/jwt.js DELETED
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.decodeJWT = decodeJWT;
4
- exports.encodeJWT = encodeJWT;
5
- const jwt = require("jsonwebtoken");
6
- // 验证jwt
7
- function decodeJWT(token, secretKey, options) {
8
- try {
9
- const decoded = jwt.verify(token, secretKey, {
10
- algorithm: 'HS256',
11
- ...(options || {})
12
- });
13
- return decoded;
14
- }
15
- catch (err) {
16
- console.error('Token 验证失败:', err.message); // 如过期、篡改等
17
- return null;
18
- }
19
- }
20
- /*
21
- id: string;
22
- code?: string;
23
- loginId: string;
24
- userId?: number;
25
- user?: User;
26
- account?: Account;
27
- appId?: number;
28
- status?: EStatus;
29
- lastDate: Date;
30
- */
31
- function encodeJWT(data, secretKey, options) {
32
- const token = jwt.sign(data, secretKey, {
33
- algorithm: 'HS256',
34
- ...(options || {})
35
- });
36
- return token;
37
- }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiand0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9qd3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUF3S0EsOEJBV0M7QUFhRCw4QkFNQztBQXJNRCxvQ0FBb0M7QUFzS3BDLFFBQVE7QUFDUixTQUFnQixTQUFTLENBQUMsS0FBYSxFQUFFLFNBQWlCLEVBQUUsT0FBdUI7SUFDL0UsSUFBSSxDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO1lBQzdDLFNBQVMsRUFBRSxPQUFPO1lBQ2xCLEdBQUcsQ0FBQyxPQUFPLElBQUUsRUFBRSxDQUFDO1NBQ25CLENBQUMsQ0FBQztRQUNDLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVTtRQUNyRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7QUFDUCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7RUFVRTtBQUNGLFNBQWdCLFNBQVMsQ0FBQyxJQUFTLEVBQUUsU0FBaUIsRUFBRSxPQUFxQjtJQUN6RSxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUU7UUFDcEMsU0FBUyxFQUFFLE9BQU87UUFDbEIsR0FBRyxDQUFDLE9BQU8sSUFBRSxFQUFFLENBQUM7S0FDbkIsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyJ9
package/dist/lib/utils.js DELETED
@@ -1,89 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.loadEnv = void 0;
18
- exports.checkUrlHost = checkUrlHost;
19
- exports.getDefaultTemplate = getDefaultTemplate;
20
- exports.getAuthToken = getAuthToken;
21
- exports.setAuthToken = setAuthToken;
22
- __exportStar(require("./jwt"), exports);
23
- const env_1 = require("../config/env");
24
- Object.defineProperty(exports, "loadEnv", { enumerable: true, get: function () { return env_1.loadEnv; } });
25
- //判断url是否是对应的域名
26
- function checkUrlHost(url, host) {
27
- if (/^\/[^\/]{1,}/.test(url))
28
- return true;
29
- if (Array.isArray(host)) {
30
- for (const h of host) {
31
- if (checkUrlHost(url, h))
32
- return true;
33
- }
34
- return false;
35
- }
36
- const reg = new RegExp('^(http(s)?:)?//' + host);
37
- return reg.test(url);
38
- }
39
- /**
40
- * render模板
41
- * @param ctx
42
- * @param file
43
- * @returns
44
- */
45
- function getDefaultTemplate(ctx, file = 'index.html', data = {}) {
46
- // 前端端口,如果为空,说明就是开发环境了
47
- const viteTarget = process.env.VITE_PORT;
48
- const config = ctx.app.getConfig();
49
- const prefix = config.koa.globalPrefix;
50
- const option = {
51
- data: {
52
- session: ctx.currentSession || null,
53
- ...data,
54
- config: {
55
- prefix,
56
- ...(data.config || {}),
57
- },
58
- },
59
- title: data.title || '',
60
- description: process.env.DESCRIPTION || '',
61
- env: process.env,
62
- prefix,
63
- viteTarget: viteTarget ? `//${ctx.hostname}:${viteTarget}` : '',
64
- };
65
- //console.log(file, data);
66
- return ctx.render(file, option);
67
- }
68
- // 从当前请求中获取登陆态token
69
- function getAuthToken(ctx, option) {
70
- const body = (ctx.request.body || {});
71
- const token = ctx.URL.searchParams.get('token') ||
72
- ctx.request.header['x-auth-token'] ||
73
- ctx.cookies.get('token', {
74
- signed: false,
75
- ...(option || {})
76
- }) ||
77
- ctx.request.header['authorization'] ||
78
- body.token;
79
- return token;
80
- }
81
- // 种登陆态token
82
- function setAuthToken(ctx, token, option) {
83
- ctx.cookies.set('token', token, {
84
- httpOnly: true,
85
- maxAge: 1000 * 60 * 60 * 24 * 30,
86
- ...(option || {})
87
- });
88
- }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0Esb0NBVUM7QUFRRCxnREFzQkM7QUFHRCxvQ0FZQztBQUdELG9DQU1DO0FBcEVELHdDQUFzQjtBQUN0Qix1Q0FBd0M7QUF1RXBDLHdGQXZFSyxhQUFPLE9BdUVMO0FBckVYLGVBQWU7QUFDZixTQUFnQixZQUFZLENBQUMsR0FBVyxFQUFFLElBQTBCO0lBQ2hFLElBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLElBQUksQ0FBQztJQUN6QyxJQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNyQixLQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7Z0JBQUUsT0FBTyxJQUFJLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNqRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDekIsQ0FBQztBQUVEOzs7OztPQUtPO0FBQ1AsU0FBZ0Isa0JBQWtCLENBQUMsR0FBWSxFQUFFLElBQUksR0FBQyxZQUFZLEVBQUUsT0FBWSxFQUFFO0lBQzlFLHNCQUFzQjtJQUN0QixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztJQUN6QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25DLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO0lBQ3ZDLE1BQU0sTUFBTSxHQUFHO1FBQ1gsSUFBSSxFQUFFO1lBQ0YsT0FBTyxFQUFFLEdBQUcsQ0FBQyxjQUFjLElBQUUsSUFBSTtZQUNqQyxHQUFHLElBQUk7WUFDUCxNQUFNLEVBQUU7Z0JBQ0osTUFBTTtnQkFDTixHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBRSxFQUFFLENBQUM7YUFDdkI7U0FDSjtRQUNELEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7UUFDdkIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUU7UUFDMUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1FBQ2hCLE1BQU07UUFDTixVQUFVLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxRQUFRLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7S0FDbEUsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFFRCxtQkFBbUI7QUFDbkIsU0FBZ0IsWUFBWSxDQUFDLEdBQVksRUFBRSxNQUF5QjtJQUNoRSxNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBUSxDQUFDO0lBQ3pDLE1BQU0sS0FBSyxHQUNYLEdBQUcsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7UUFDakMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDO1FBQ2xDLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRTtZQUNyQixNQUFNLEVBQUUsS0FBSztZQUNiLEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1NBQ3BCLENBQUM7UUFDRixHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUM7UUFDL0IsSUFBSSxDQUFDLEtBQUssQ0FBRTtJQUNwQixPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBRUQsWUFBWTtBQUNaLFNBQWdCLFlBQVksQ0FBQyxHQUFZLEVBQUUsS0FBYSxFQUFFLE1BQXlCO0lBQy9FLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUU7UUFDNUIsUUFBUSxFQUFFLElBQUk7UUFDZCxNQUFNLEVBQUUsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUU7UUFDaEMsR0FBRyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7S0FDcEIsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyJ9
@@ -1,8 +0,0 @@
1
- import { IMiddleware } from '@midwayjs/core';
2
- import { NextFunction, Context } from '@midwayjs/koa';
3
- export declare class ApiResultFormatterMiddleware implements IMiddleware<Context, NextFunction> {
4
- apiOption: any;
5
- ignore(ctx: Context): boolean;
6
- resolve(): (ctx: Context, next: NextFunction) => Promise<void>;
7
- canFormat(data: any): boolean;
8
- }
@@ -1,84 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ApiResultFormatterMiddleware = void 0;
13
- // @ts-ignore
14
- const core_1 = require("@midwayjs/core");
15
- const stream_1 = require("stream");
16
- let ApiResultFormatterMiddleware = class ApiResultFormatterMiddleware {
17
- apiOption;
18
- ignore(ctx) {
19
- // 下面的路由将忽略此中间件
20
- if (this.apiOption?.ignore) {
21
- for (const ig of this.apiOption.ignore) {
22
- if (typeof ig === 'string' && ctx.path === ig)
23
- return true;
24
- if (ig?.test?.(ctx.path))
25
- return true;
26
- }
27
- }
28
- return false;
29
- }
30
- resolve() {
31
- return async (ctx, next) => {
32
- const isApi = this.apiOption?.reg?.test(ctx.request.path);
33
- //console.log(ctx.URL.toString(), isApi);
34
- if (isApi) {
35
- try {
36
- await next();
37
- const res = ctx.body;
38
- // 是否是可格式化的类型
39
- if (this.canFormat(res)) {
40
- ctx.body = Object.assign({
41
- ret: 0,
42
- msg: 'success',
43
- data: null,
44
- }, typeof res?.ret === 'number' ? res : { data: res });
45
- //ctx.logger.info(ctx.request.rawBody, ctx.body);
46
- }
47
- }
48
- catch (err) {
49
- console.error(err);
50
- if (typeof err.ret === 'number') {
51
- ctx.body = err;
52
- }
53
- else {
54
- ctx.body = {
55
- ret: 1001,
56
- msg: err.message,
57
- };
58
- }
59
- ctx.logger.error(ctx.request.rawBody, ctx.body);
60
- }
61
- finally {
62
- if (ctx.status !== 302)
63
- ctx.status = 200;
64
- }
65
- }
66
- else {
67
- await next();
68
- }
69
- };
70
- }
71
- canFormat(data) {
72
- return data !== '' && !Buffer.isBuffer(data) &&
73
- !(data instanceof stream_1.Stream || data instanceof Uint8Array || data instanceof Blob);
74
- }
75
- };
76
- exports.ApiResultFormatterMiddleware = ApiResultFormatterMiddleware;
77
- __decorate([
78
- (0, core_1.Config)('apiOption'),
79
- __metadata("design:type", Object)
80
- ], ApiResultFormatterMiddleware.prototype, "apiOption", void 0);
81
- exports.ApiResultFormatterMiddleware = ApiResultFormatterMiddleware = __decorate([
82
- (0, core_1.Middleware)()
83
- ], ApiResultFormatterMiddleware);
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpUmVzdWx0Rm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21pZGRsZXdhcmUvYXBpUmVzdWx0Rm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLGFBQWE7QUFDYix5Q0FBaUU7QUFFakUsbUNBQWdDO0FBR3pCLElBQU0sNEJBQTRCLEdBQWxDLE1BQU0sNEJBQTRCO0lBSXJDLFNBQVMsQ0FBTTtJQUVmLE1BQU0sQ0FBQyxHQUFZO1FBQ2YsZUFBZTtRQUNmLElBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUN4QixLQUFJLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ3BDLElBQUcsT0FBTyxFQUFFLEtBQUssUUFBUSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssRUFBRTtvQkFBRSxPQUFPLElBQUksQ0FBQztnQkFDMUQsSUFBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztvQkFBRSxPQUFPLElBQUksQ0FBQztZQUN6QyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxLQUFLLEVBQUUsR0FBWSxFQUFFLElBQWtCLEVBQUUsRUFBRTtZQUM5QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMxRCx5Q0FBeUM7WUFDekMsSUFBSSxLQUFLLEVBQUUsQ0FBQztnQkFDUixJQUFJLENBQUM7b0JBQ0QsTUFBTSxJQUFJLEVBQUUsQ0FBQztvQkFDYixNQUFNLEdBQUcsR0FBUSxHQUFHLENBQUMsSUFBSSxDQUFDO29CQUMxQixhQUFhO29CQUNiLElBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNyQixHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQ3BCOzRCQUNJLEdBQUcsRUFBRSxDQUFDOzRCQUNOLEdBQUcsRUFBRSxTQUFTOzRCQUNkLElBQUksRUFBRSxJQUFJO3lCQUNiLEVBQ0QsT0FBTyxHQUFHLEVBQUUsR0FBRyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FDckQsQ0FBQzt3QkFDRixpREFBaUQ7b0JBQ3JELENBQUM7Z0JBQ0wsQ0FBQztnQkFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO29CQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQ25CLElBQUksT0FBTyxHQUFHLENBQUMsR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO3dCQUM5QixHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztvQkFDbkIsQ0FBQzt5QkFBTSxDQUFDO3dCQUNKLEdBQUcsQ0FBQyxJQUFJLEdBQUc7NEJBQ1AsR0FBRyxFQUFFLElBQUk7NEJBQ1QsR0FBRyxFQUFFLEdBQUcsQ0FBQyxPQUFPO3lCQUNuQixDQUFDO29CQUNOLENBQUM7b0JBQ0QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwRCxDQUFDO3dCQUNPLENBQUM7b0JBQ0wsSUFBRyxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUc7d0JBQUUsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7Z0JBQzVDLENBQUM7WUFDTCxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxJQUFJLEVBQUUsQ0FBQztZQUNqQixDQUFDO1FBQ0wsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUNELFNBQVMsQ0FBQyxJQUFTO1FBQ2YsT0FBTyxJQUFJLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDNUMsQ0FBQyxDQUFDLElBQUksWUFBWSxlQUFNLElBQUksSUFBSSxZQUFZLFVBQVUsSUFBSSxJQUFJLFlBQVksSUFBSSxDQUFDLENBQUM7SUFDcEYsQ0FBQztDQUNKLENBQUE7QUE3RFksb0VBQTRCO0FBSXJDO0lBREMsSUFBQSxhQUFNLEVBQUMsV0FBVyxDQUFDOzsrREFDTDt1Q0FKTiw0QkFBNEI7SUFEeEMsSUFBQSxpQkFBVSxHQUFFO0dBQ0EsNEJBQTRCLENBNkR4QyJ9
@@ -1,5 +0,0 @@
1
- import { IMiddleware } from '@midwayjs/core';
2
- import { NextFunction, Context } from '@midwayjs/koa';
3
- export declare class DetectMiddleware implements IMiddleware<Context, NextFunction> {
4
- resolve(): (ctx: Context, next: NextFunction) => Promise<any>;
5
- }
@@ -1,61 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.DetectMiddleware = void 0;
10
- const core_1 = require("@midwayjs/core");
11
- let DetectMiddleware = class DetectMiddleware {
12
- resolve() {
13
- return async (ctx, next) => {
14
- const UA = ctx.get('user-agent') || '';
15
- const IS_MOBILE = /Mobile/i.test(UA);
16
- const VER_MQQ = UA.match(/QQ\/([\d.]+)/i) && UA.match(/QQ\/([\d.]+)/i)?.[1];
17
- const IS_MQQ = Boolean(VER_MQQ);
18
- // 微信版本号可能分4段,影响业务代码里使用semver比较版本号(会报错),如果业务需要4段版本号可以自己从ua里取
19
- const VER_WEIXIN = UA.match(/MicroMessenger\/([\d.]+)/i) &&
20
- UA.match(/MicroMessenger\/([\d.]+)/i)?.[1]
21
- .split('.')
22
- .slice(0, 3)
23
- .join('.');
24
- const IS_WEIXIN = Boolean(VER_WEIXIN);
25
- // 是否是开发者工具
26
- const IS_WECHATTOOLS = /wechatdevtools\//i.test(UA);
27
- // @ts-ignore
28
- const IS_PCWEIXIN = /(Windows|Mac)Wechat/i.test(UA);
29
- // 是否是企业微信
30
- const IS_WXWORK = /wxwork\//i.test(UA);
31
- // @ts-ignore
32
- const VER_MINA = /miniProgram/i.test(UA);
33
- const IS_MINA = Boolean(VER_MINA);
34
- let requestIP = (ctx.request.header['x-forwarded-for'] ||
35
- ctx.request.ip || '').toString();
36
- if (requestIP.includes(','))
37
- requestIP = requestIP.split(',')[0];
38
- const clientIP = (ctx.request.header['x-client-ip'] || requestIP).toString();
39
- const hostname = ctx.get('tencent-acceleration-domain-name') || ctx.request.hostname;
40
- // 环境变量
41
- ctx.detect = {
42
- IS_MOBILE,
43
- IS_MQQ,
44
- IS_WEIXIN,
45
- IS_WECHATTOOLS,
46
- IS_PCWEIXIN,
47
- IS_WXWORK,
48
- IS_MINA,
49
- CLIENTIP: clientIP,
50
- REQUESTIP: requestIP,
51
- HOSTNAME: hostname,
52
- };
53
- return next();
54
- };
55
- }
56
- };
57
- exports.DetectMiddleware = DetectMiddleware;
58
- exports.DetectMiddleware = DetectMiddleware = __decorate([
59
- (0, core_1.Middleware)()
60
- ], DetectMiddleware);
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0ZWN0Lm1pZGRsZXdhcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWlkZGxld2FyZS9kZXRlY3QubWlkZGxld2FyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSx5Q0FBeUQ7QUFJbEQsSUFBTSxnQkFBZ0IsR0FBdEIsTUFBTSxnQkFBZ0I7SUFDekIsT0FBTztRQUNILE9BQU8sS0FBSyxFQUFFLEdBQVksRUFBRSxJQUFrQixFQUFFLEVBQUU7WUFDOUMsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdkMsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNyQyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUM1RSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDaEMsNERBQTREO1lBQzVELE1BQU0sVUFBVSxHQUNaLEVBQUUsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUM7Z0JBQ3JDLEVBQUUsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztxQkFDckMsS0FBSyxDQUFDLEdBQUcsQ0FBQztxQkFDVixLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztxQkFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbkIsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXRDLFdBQVc7WUFDWCxNQUFNLGNBQWMsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEQsYUFBYTtZQUNiLE1BQU0sV0FBVyxHQUFHLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNwRCxVQUFVO1lBQ1YsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN2QyxhQUFhO1lBQ2IsTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN6QyxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFFbEMsSUFBSSxTQUFTLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQztnQkFDdEQsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakMsSUFBRyxTQUFTLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFBRSxTQUFTLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVoRSxNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRTdFLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsa0NBQWtDLENBQUMsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztZQUVyRixPQUFPO1lBQ1AsR0FBRyxDQUFDLE1BQU0sR0FBRztnQkFDVCxTQUFTO2dCQUNULE1BQU07Z0JBQ04sU0FBUztnQkFDVCxjQUFjO2dCQUNkLFdBQVc7Z0JBQ1gsU0FBUztnQkFDVCxPQUFPO2dCQUNQLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixTQUFTLEVBQUUsU0FBUztnQkFDcEIsUUFBUSxFQUFFLFFBQVE7YUFDckIsQ0FBQTtZQUNELE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDbEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUE7QUFsRFksNENBQWdCOzJCQUFoQixnQkFBZ0I7SUFENUIsSUFBQSxpQkFBVSxHQUFFO0dBQ0EsZ0JBQWdCLENBa0Q1QiJ9
@@ -1,8 +0,0 @@
1
- import { IMiddleware } from '@midwayjs/core';
2
- import { NextFunction, Context } from '@midwayjs/koa';
3
- export declare class RequestInitMiddleware implements IMiddleware<Context, NextFunction> {
4
- loggerConfig: any;
5
- private staticExtensions;
6
- ignore(ctx: Context): boolean;
7
- resolve(): (ctx: Context, next: NextFunction) => Promise<any>;
8
- }