@eggjs/controller-decorator 4.0.0-beta.7 → 4.0.0-beta.9
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/dist/builder/ControllerMetaBuilderFactory.d.ts +6 -10
- package/dist/builder/ControllerMetaBuilderFactory.js +41 -37
- package/dist/builder/index.d.ts +1 -0
- package/dist/builder/index.js +2 -3
- package/dist/decorator/Acl.d.ts +1 -4
- package/dist/decorator/Acl.js +21 -23
- package/dist/decorator/Context.d.ts +1 -4
- package/dist/decorator/Context.js +10 -15
- package/dist/decorator/Middleware.d.ts +2 -6
- package/dist/decorator/Middleware.js +64 -52
- package/dist/decorator/http/HTTPController.d.ts +2 -6
- package/dist/decorator/http/HTTPController.js +28 -22
- package/dist/decorator/http/HTTPMethod.d.ts +2 -6
- package/dist/decorator/http/HTTPMethod.js +16 -20
- package/dist/decorator/http/HTTPParam.d.ts +8 -12
- package/dist/decorator/http/HTTPParam.js +68 -70
- package/dist/decorator/http/Host.d.ts +2 -6
- package/dist/decorator/http/Host.js +24 -26
- package/dist/decorator/http/index.d.ts +4 -0
- package/dist/decorator/http/index.js +5 -6
- package/dist/decorator/index.d.ts +4 -0
- package/dist/decorator/index.js +5 -10
- package/dist/impl/http/HTTPControllerMetaBuilder.d.ts +8 -12
- package/dist/impl/http/HTTPControllerMetaBuilder.js +55 -61
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.d.ts +10 -14
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.js +100 -80
- package/dist/impl/http/index.d.ts +2 -0
- package/dist/impl/http/index.js +3 -4
- package/dist/impl/index.d.ts +1 -0
- package/dist/impl/index.js +2 -5
- package/dist/index.d.ts +6 -24
- package/dist/index.js +7 -31
- package/dist/model/HTTPControllerMeta.d.ts +21 -24
- package/dist/model/HTTPControllerMeta.js +60 -53
- package/dist/model/HTTPCookies.d.ts +3 -6
- package/dist/model/HTTPCookies.js +4 -7
- package/dist/model/HTTPMethodMeta.d.ts +56 -59
- package/dist/model/HTTPMethodMeta.js +124 -102
- package/dist/model/HTTPRequest.d.ts +5 -6
- package/dist/model/HTTPRequest.js +3 -5
- package/dist/model/HTTPResponse.d.ts +10 -11
- package/dist/model/HTTPResponse.js +3 -5
- package/dist/model/index.d.ts +5 -0
- package/dist/model/index.js +6 -7
- package/dist/util/ControllerInfoUtil.d.ts +16 -19
- package/dist/util/ControllerInfoUtil.js +46 -48
- package/dist/util/ControllerMetadataUtil.d.ts +4 -8
- package/dist/util/ControllerMetadataUtil.js +20 -21
- package/dist/util/HTTPInfoUtil.d.ts +15 -19
- package/dist/util/HTTPInfoUtil.js +64 -53
- package/dist/util/HTTPPriorityUtil.d.ts +18 -21
- package/dist/util/HTTPPriorityUtil.js +42 -38
- package/dist/util/MethodInfoUtil.d.ts +19 -22
- package/dist/util/MethodInfoUtil.js +72 -62
- package/dist/util/index.d.ts +6 -0
- package/dist/util/index.js +7 -10
- package/dist/util/validator/ControllerValidator.d.ts +3 -7
- package/dist/util/validator/ControllerValidator.js +14 -15
- package/dist/util/validator/MethodValidator.d.ts +3 -7
- package/dist/util/validator/MethodValidator.js +30 -30
- package/dist/util/validator/index.d.ts +2 -0
- package/dist/util/validator/index.js +3 -4
- package/package.json +7 -7
|
@@ -1,80 +1,100 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { HTTPPriorityUtil } from "../../util/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { ClassUtil } from '@eggjs/tegg-metadata';
|
|
3
|
+
import { HTTPMethodMeta, ParamMeta, ParamMetaUtil } from "../../model/index.js";
|
|
4
|
+
import { MethodValidator, HTTPInfoUtil, MethodInfoUtil, HTTPPriorityUtil } from "../../util/index.js";
|
|
5
|
+
export class HTTPControllerMethodMetaBuilder {
|
|
6
|
+
clazz;
|
|
7
|
+
methodName;
|
|
8
|
+
constructor(clazz, methodName) {
|
|
9
|
+
this.clazz = clazz;
|
|
10
|
+
this.methodName = methodName;
|
|
11
|
+
}
|
|
12
|
+
// 检查 HTTP 方法上参数是否都加上了注解
|
|
13
|
+
// foo(a, b=233, c); foo.length = 2;
|
|
14
|
+
// 由于这种情况的存在, 所以需要对 function 参数检查进行特殊处理
|
|
15
|
+
// 如果有注解的参数比 function.length 长, 长度应该取有注解参数总数(包括 @Context)
|
|
16
|
+
//
|
|
17
|
+
// 但是有两种特殊情况无法处理
|
|
18
|
+
// foo(@Context() ctx, @HTTPParam() id1, id2 = 233)
|
|
19
|
+
// foo(@Context() ctx, @HTTPParam() id1, id2 = 233, id3)
|
|
20
|
+
// 这两种情况均为默认值参数在
|
|
21
|
+
checkParamDecorators() {
|
|
22
|
+
const method = this.clazz.prototype[this.methodName];
|
|
23
|
+
// 获取函数参数长度
|
|
24
|
+
const functionLength = method.length;
|
|
25
|
+
// 计算带注解参数
|
|
26
|
+
const paramIndexList = HTTPInfoUtil.getParamIndexList(this.clazz, this.methodName);
|
|
27
|
+
const contextIndex = MethodInfoUtil.getMethodContextIndex(this.clazz, this.methodName);
|
|
28
|
+
const hasAnnotationParamCount = typeof contextIndex === 'undefined'
|
|
29
|
+
? paramIndexList.length
|
|
30
|
+
: paramIndexList.length + 1;
|
|
31
|
+
const maxParamCount = Math.max(functionLength, hasAnnotationParamCount);
|
|
32
|
+
for (let i = 0; i < maxParamCount; ++i) {
|
|
33
|
+
// 上下文参数, 跳过检查
|
|
34
|
+
if (i === contextIndex) {
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
const paramType = HTTPInfoUtil.getHTTPMethodParamType(i, this.clazz, this.methodName);
|
|
38
|
+
if (!paramType) {
|
|
39
|
+
const classDesc = ClassUtil.classDescription(this.clazz);
|
|
40
|
+
throw new Error(`${classDesc}:${this.methodName} param ${i} has no http param type, Please add @HTTPBody, @HTTPParam, @HTTPQuery, @HTTPQueries`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
buildParamType(httpPath) {
|
|
45
|
+
this.checkParamDecorators();
|
|
46
|
+
const paramTypeMap = new Map();
|
|
47
|
+
const paramIndexList = HTTPInfoUtil.getParamIndexList(this.clazz, this.methodName);
|
|
48
|
+
for (const paramIndex of paramIndexList) {
|
|
49
|
+
const paramType = HTTPInfoUtil.getHTTPMethodParamType(paramIndex, this.clazz, this.methodName);
|
|
50
|
+
const paramName = HTTPInfoUtil.getHTTPMethodParamName(paramIndex, this.clazz, this.methodName);
|
|
51
|
+
const paramMeta = ParamMetaUtil.createParam(paramType, paramName);
|
|
52
|
+
try {
|
|
53
|
+
paramMeta.validate(httpPath);
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
const classDesc = ClassUtil.classDescription(this.clazz);
|
|
57
|
+
e.message = `build controller ${classDesc} method ${this.methodName} param ${paramName} failed: ${e.message}`;
|
|
58
|
+
throw e;
|
|
59
|
+
}
|
|
60
|
+
paramTypeMap.set(paramIndex, paramMeta);
|
|
61
|
+
}
|
|
62
|
+
return paramTypeMap;
|
|
63
|
+
}
|
|
64
|
+
getPriority() {
|
|
65
|
+
const priority = HTTPInfoUtil.getHTTPMethodPriority(this.clazz, this.methodName);
|
|
66
|
+
if (priority !== undefined) {
|
|
67
|
+
return priority;
|
|
68
|
+
}
|
|
69
|
+
const controllerPath = HTTPInfoUtil.getHTTPPath(this.clazz);
|
|
70
|
+
const methodPath = HTTPInfoUtil.getHTTPMethodPath(this.clazz, this.methodName);
|
|
71
|
+
const realPath = controllerPath ? path.posix.join(controllerPath, methodPath) : methodPath;
|
|
72
|
+
const defaultPriority = HTTPPriorityUtil.calcPathPriority(realPath);
|
|
73
|
+
if (defaultPriority > HTTPPriorityUtil.DEFAULT_PRIORITY) {
|
|
74
|
+
throw new Error(`path ${realPath} is too long, should set priority manually`);
|
|
75
|
+
}
|
|
76
|
+
return defaultPriority;
|
|
77
|
+
}
|
|
78
|
+
build() {
|
|
79
|
+
MethodValidator.validate(this.clazz, this.methodName);
|
|
80
|
+
const controllerType = MethodInfoUtil.getMethodControllerType(this.clazz, this.methodName);
|
|
81
|
+
if (!controllerType) {
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
const httpMethod = HTTPInfoUtil.getHTTPMethodMethod(this.clazz, this.methodName);
|
|
85
|
+
const parentPath = HTTPInfoUtil.getHTTPPath(this.clazz);
|
|
86
|
+
const httpPath = HTTPInfoUtil.getHTTPMethodPath(this.clazz, this.methodName);
|
|
87
|
+
const contextIndex = MethodInfoUtil.getMethodContextIndex(this.clazz, this.methodName);
|
|
88
|
+
const middlewares = MethodInfoUtil.getMethodMiddlewares(this.clazz, this.methodName);
|
|
89
|
+
const needAcl = MethodInfoUtil.hasMethodAcl(this.clazz, this.methodName);
|
|
90
|
+
const aclCode = MethodInfoUtil.getMethodAcl(this.clazz, this.methodName);
|
|
91
|
+
const hosts = MethodInfoUtil.getMethodHosts(this.clazz, this.methodName);
|
|
92
|
+
const realPath = parentPath
|
|
93
|
+
? path.posix.join(parentPath, httpPath)
|
|
94
|
+
: httpPath;
|
|
95
|
+
const paramTypeMap = this.buildParamType(realPath);
|
|
96
|
+
const priority = this.getPriority();
|
|
97
|
+
return new HTTPMethodMeta(this.methodName, httpPath, httpMethod, middlewares, contextIndex, paramTypeMap, priority, needAcl, aclCode, hosts);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUENvbnRyb2xsZXJNZXRob2RNZXRhQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL2h0dHAvSFRUUENvbnRyb2xsZXJNZXRob2RNZXRhQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFFN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRHLE1BQU0sT0FBTywrQkFBK0I7SUFDekIsS0FBSyxDQUFvQjtJQUN6QixVQUFVLENBQVM7SUFFcEMsWUFBWSxLQUF3QixFQUFFLFVBQWtCO1FBQ3RELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFRCx3QkFBd0I7SUFDeEIsb0NBQW9DO0lBQ3BDLHVDQUF1QztJQUN2Qyx5REFBeUQ7SUFDekQsRUFBRTtJQUNGLGdCQUFnQjtJQUNoQixtREFBbUQ7SUFDbkQsd0RBQXdEO0lBQ3hELGdCQUFnQjtJQUNSLG9CQUFvQjtRQUMxQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFckQsV0FBVztRQUNYLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFFckMsVUFBVTtRQUNWLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNu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
|
package/dist/impl/http/index.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export { };
|
|
1
|
+
export * from "./HTTPControllerMetaBuilder.js";
|
|
2
|
+
export * from "./HTTPControllerMethodMetaBuilder.js";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9odHRwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxzQ0FBc0MsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './http/index.ts';
|
package/dist/impl/index.js
CHANGED
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import "./http/index.js";
|
|
4
|
-
|
|
5
|
-
export { };
|
|
1
|
+
export * from "./http/index.js";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW1wbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIn0=
|
package/dist/index.d.ts
CHANGED
|
@@ -1,24 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
import { Context } from "./decorator/Context.js";
|
|
8
|
-
import { Middleware } from "./decorator/Middleware.js";
|
|
9
|
-
import { BodyParamMeta, CookiesParamMeta, HTTPMethodMeta, HeadersParamMeta, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, RequestParamMeta } from "./model/HTTPMethodMeta.js";
|
|
10
|
-
import { HTTPControllerMeta } from "./model/HTTPControllerMeta.js";
|
|
11
|
-
import { HTTPCookies } from "./model/HTTPCookies.js";
|
|
12
|
-
import { HTTPRequest } from "./model/HTTPRequest.js";
|
|
13
|
-
import { HTTPResponse } from "./model/HTTPResponse.js";
|
|
14
|
-
import { HTTPControllerMetaBuilder } from "./impl/http/HTTPControllerMetaBuilder.js";
|
|
15
|
-
import { HTTPControllerMethodMetaBuilder } from "./impl/http/HTTPControllerMethodMetaBuilder.js";
|
|
16
|
-
import { ControllerValidator } from "./util/validator/ControllerValidator.js";
|
|
17
|
-
import { MethodValidator } from "./util/validator/MethodValidator.js";
|
|
18
|
-
import { ControllerInfoUtil } from "./util/ControllerInfoUtil.js";
|
|
19
|
-
import { ControllerMetadataUtil } from "./util/ControllerMetadataUtil.js";
|
|
20
|
-
import { HTTPInfoUtil } from "./util/HTTPInfoUtil.js";
|
|
21
|
-
import { HTTPPriorityUtil } from "./util/HTTPPriorityUtil.js";
|
|
22
|
-
import { MethodInfoUtil } from "./util/MethodInfoUtil.js";
|
|
23
|
-
export * from "@eggjs/tegg-types/controller-decorator";
|
|
24
|
-
export { Acl, BodyParamMeta, Context, ControllerInfoUtil, ControllerMetaBuilderFactory, ControllerMetadataUtil, ControllerValidator, Cookies, CookiesParamMeta, HTTPBody, HTTPController, HTTPControllerMeta, HTTPControllerMetaBuilder, HTTPControllerMethodMetaBuilder, HTTPCookies, HTTPHeaders, HTTPInfoUtil, HTTPMethod, HTTPMethodMeta, HTTPParam, HTTPPriorityUtil, HTTPQueries, HTTPQuery, HTTPRequest, HTTPResponse, HeadersParamMeta, Host, MethodInfoUtil, MethodValidator, Middleware, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, Request, RequestParamMeta };
|
|
1
|
+
export * from '@eggjs/tegg-types/controller-decorator';
|
|
2
|
+
export * from './builder/index.ts';
|
|
3
|
+
export * from './decorator/index.ts';
|
|
4
|
+
export * from './impl/index.ts';
|
|
5
|
+
export * from './model/index.ts';
|
|
6
|
+
export * from './util/index.ts';
|
package/dist/index.js
CHANGED
|
@@ -1,31 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import "./util/index.js";
|
|
9
|
-
import { ControllerMetaBuilderFactory } from "./builder/ControllerMetaBuilderFactory.js";
|
|
10
|
-
import "./builder/index.js";
|
|
11
|
-
import { Host } from "./decorator/http/Host.js";
|
|
12
|
-
import { HTTPController } from "./decorator/http/HTTPController.js";
|
|
13
|
-
import { HTTPMethod } from "./decorator/http/HTTPMethod.js";
|
|
14
|
-
import { Cookies, HTTPBody, HTTPHeaders, HTTPParam, HTTPQueries, HTTPQuery, Request } from "./decorator/http/HTTPParam.js";
|
|
15
|
-
import { Acl } from "./decorator/Acl.js";
|
|
16
|
-
import { Context } from "./decorator/Context.js";
|
|
17
|
-
import { Middleware } from "./decorator/Middleware.js";
|
|
18
|
-
import "./decorator/index.js";
|
|
19
|
-
import { BodyParamMeta, CookiesParamMeta, HTTPMethodMeta, HeadersParamMeta, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, RequestParamMeta } from "./model/HTTPMethodMeta.js";
|
|
20
|
-
import { HTTPControllerMeta } from "./model/HTTPControllerMeta.js";
|
|
21
|
-
import { HTTPCookies } from "./model/HTTPCookies.js";
|
|
22
|
-
import { HTTPRequest } from "./model/HTTPRequest.js";
|
|
23
|
-
import { HTTPResponse } from "./model/HTTPResponse.js";
|
|
24
|
-
import "./model/index.js";
|
|
25
|
-
import { HTTPControllerMethodMetaBuilder } from "./impl/http/HTTPControllerMethodMetaBuilder.js";
|
|
26
|
-
import { HTTPControllerMetaBuilder } from "./impl/http/HTTPControllerMetaBuilder.js";
|
|
27
|
-
import "./impl/index.js";
|
|
28
|
-
|
|
29
|
-
export * from "@eggjs/tegg-types/controller-decorator"
|
|
30
|
-
|
|
31
|
-
export { Acl, BodyParamMeta, Context, ControllerInfoUtil, ControllerMetaBuilderFactory, ControllerMetadataUtil, ControllerValidator, Cookies, CookiesParamMeta, HTTPBody, HTTPController, HTTPControllerMeta, HTTPControllerMetaBuilder, HTTPControllerMethodMetaBuilder, HTTPCookies, HTTPHeaders, HTTPInfoUtil, HTTPMethod, HTTPMethodMeta, HTTPParam, HTTPPriorityUtil, HTTPQueries, HTTPQuery, HTTPRequest, HTTPResponse, HeadersParamMeta, Host, MethodInfoUtil, MethodValidator, Middleware, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, Request, RequestParamMeta };
|
|
1
|
+
export * from '@eggjs/tegg-types/controller-decorator';
|
|
2
|
+
export * from "./builder/index.js";
|
|
3
|
+
export * from "./decorator/index.js";
|
|
4
|
+
export * from "./impl/index.js";
|
|
5
|
+
export * from "./model/index.js";
|
|
6
|
+
export * from "./util/index.js";
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3Q0FBd0MsQ0FBQztBQUV2RCxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsaUJBQWlCLENBQUMifQ==
|
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
getMethodAcl(method: HTTPMethodMeta): string | undefined;
|
|
1
|
+
import type { ControllerMetadata, EggPrototypeName, MiddlewareFunc } from '@eggjs/tegg-types';
|
|
2
|
+
import { ControllerType } from '@eggjs/tegg-types';
|
|
3
|
+
import { HTTPMethodMeta } from './HTTPMethodMeta.ts';
|
|
4
|
+
export declare class HTTPControllerMeta implements ControllerMetadata {
|
|
5
|
+
readonly protoName: EggPrototypeName;
|
|
6
|
+
readonly controllerName: string;
|
|
7
|
+
readonly className: string;
|
|
8
|
+
readonly type = ControllerType.HTTP;
|
|
9
|
+
readonly path?: string;
|
|
10
|
+
readonly middlewares: readonly MiddlewareFunc[];
|
|
11
|
+
readonly methods: readonly HTTPMethodMeta[];
|
|
12
|
+
readonly needAcl: boolean;
|
|
13
|
+
readonly aclCode?: string;
|
|
14
|
+
readonly hosts?: string[];
|
|
15
|
+
constructor(className: string, protoName: EggPrototypeName, controllerName: string, path: string | undefined, middlewares: MiddlewareFunc[], methods: HTTPMethodMeta[], needAcl: boolean, aclCode: string | undefined, hosts: string[] | undefined);
|
|
16
|
+
getMethodRealPath(method: HTTPMethodMeta): string;
|
|
17
|
+
getMethodHosts(method: HTTPMethodMeta): string[] | undefined;
|
|
18
|
+
getMethodName(method: HTTPMethodMeta): string;
|
|
19
|
+
getMethodMiddlewares(method: HTTPMethodMeta): MiddlewareFunc[];
|
|
20
|
+
hasMethodAcl(method: HTTPMethodMeta): boolean;
|
|
21
|
+
getMethodAcl(method: HTTPMethodMeta): string | undefined;
|
|
23
22
|
}
|
|
24
|
-
//#endregion
|
|
25
|
-
export { HTTPControllerMeta };
|
|
@@ -1,53 +1,60 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ControllerType } from
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import { ControllerType } from '@eggjs/tegg-types';
|
|
3
|
+
import { HTTPMethodMeta } from "./HTTPMethodMeta.js";
|
|
4
|
+
export class HTTPControllerMeta {
|
|
5
|
+
protoName;
|
|
6
|
+
controllerName;
|
|
7
|
+
className;
|
|
8
|
+
type = ControllerType.HTTP;
|
|
9
|
+
path;
|
|
10
|
+
middlewares;
|
|
11
|
+
methods;
|
|
12
|
+
needAcl;
|
|
13
|
+
aclCode;
|
|
14
|
+
hosts;
|
|
15
|
+
constructor(className, protoName, controllerName, path, middlewares, methods, needAcl, aclCode, hosts) {
|
|
16
|
+
this.protoName = protoName;
|
|
17
|
+
this.controllerName = controllerName;
|
|
18
|
+
this.className = className;
|
|
19
|
+
this.path = path;
|
|
20
|
+
this.middlewares = middlewares;
|
|
21
|
+
this.methods = methods;
|
|
22
|
+
this.needAcl = needAcl;
|
|
23
|
+
this.aclCode = aclCode;
|
|
24
|
+
this.hosts = hosts;
|
|
25
|
+
}
|
|
26
|
+
getMethodRealPath(method) {
|
|
27
|
+
if (this.path) {
|
|
28
|
+
return path.posix.join(this.path, method.path);
|
|
29
|
+
}
|
|
30
|
+
return method.path;
|
|
31
|
+
}
|
|
32
|
+
getMethodHosts(method) {
|
|
33
|
+
if (this.hosts) {
|
|
34
|
+
return this.hosts;
|
|
35
|
+
}
|
|
36
|
+
return method.hosts;
|
|
37
|
+
}
|
|
38
|
+
getMethodName(method) {
|
|
39
|
+
return `${method.method} ${this.controllerName}.${method.name}`;
|
|
40
|
+
}
|
|
41
|
+
getMethodMiddlewares(method) {
|
|
42
|
+
if (this.middlewares.length) {
|
|
43
|
+
return [
|
|
44
|
+
...this.middlewares,
|
|
45
|
+
...method.middlewares,
|
|
46
|
+
];
|
|
47
|
+
}
|
|
48
|
+
return [...method.middlewares];
|
|
49
|
+
}
|
|
50
|
+
hasMethodAcl(method) {
|
|
51
|
+
return method.needAcl || this.needAcl;
|
|
52
|
+
}
|
|
53
|
+
getMethodAcl(method) {
|
|
54
|
+
if (method.aclCode) {
|
|
55
|
+
return method.aclCode;
|
|
56
|
+
}
|
|
57
|
+
return this.aclCode;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUENvbnRyb2xsZXJNZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVsL0hUVFBDb250cm9sbGVyTWV0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFHN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sa0JBQWtCO0lBQ3BCLFNBQVMsQ0FBbUI7SUFDNUIsY0FBYyxDQUFTO0lBQ3ZCLFNBQVMsQ0FBUztJQUNYLElBQUksR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQzNCLElBQUksQ0FBVTtJQUNkLFdBQVcsQ0FBNEI7SUFDdkMsT0FBTyxDQUE0QjtJQUNuQyxPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2pCLEtBQUssQ0FBWTtJQUVqQyxZQUNFLFNBQWlCLEVBQ2pCLFNBQTJCLEVBQzNCLGNBQXNCLEVBQ3RCLElBQXdCLEVBQ3hCLFdBQTZCLEVBQzdCLE9BQXlCLEVBQ3pCLE9BQWdCLEVBQ2hCLE9BQTJCLEVBQzNCLEtBQTJCO1FBRTNCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFzQjtRQUN0QyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQXNCO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUFzQjtRQUNsQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsb0JBQW9CLENBQUMsTUFBc0I7UUFDekMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLE9BQU87Z0JBQ0wsR0FBRyxJQUFJLENBQUMsV0FBVztnQkFDbkIsR0FBRyxNQUFNLENBQUMsV0FBVzthQUN0QixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sQ0FBRSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQXNCO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBc0I7UUFDakMsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztDQUNGIn0=
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { Cookies } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
declare class HTTPCookies extends Cookies {}
|
|
5
|
-
//#endregion
|
|
6
|
-
export { HTTPCookies };
|
|
1
|
+
import { Cookies } from '@eggjs/cookies';
|
|
2
|
+
export declare class HTTPCookies extends Cookies {
|
|
3
|
+
}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { Cookies } from
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
//#endregion
|
|
7
|
-
export { HTTPCookies };
|
|
1
|
+
import { Cookies } from '@eggjs/cookies';
|
|
2
|
+
export class HTTPCookies extends Cookies {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUENvb2tpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWwvSFRUUENvb2tpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sT0FBTyxXQUFZLFNBQVEsT0FBTztDQUFHIn0=
|
|
@@ -1,59 +1,56 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
//#endregion
|
|
59
|
-
export { BodyParamMeta, CookiesParamMeta, HTTPMethodMeta, HeadersParamMeta, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, RequestParamMeta };
|
|
1
|
+
import { HTTPParamType } from '@eggjs/tegg-types';
|
|
2
|
+
import type { HTTPMethodEnum, MethodMeta, MiddlewareFunc } from '@eggjs/tegg-types';
|
|
3
|
+
export declare abstract class ParamMeta {
|
|
4
|
+
type: HTTPParamType;
|
|
5
|
+
abstract validate(httpPath: string): void;
|
|
6
|
+
}
|
|
7
|
+
export declare class RequestParamMeta extends ParamMeta {
|
|
8
|
+
type: HTTPParamType;
|
|
9
|
+
validate(): void;
|
|
10
|
+
}
|
|
11
|
+
export declare class BodyParamMeta extends ParamMeta {
|
|
12
|
+
type: HTTPParamType;
|
|
13
|
+
validate(): void;
|
|
14
|
+
}
|
|
15
|
+
export declare class HeadersParamMeta extends ParamMeta {
|
|
16
|
+
type: HTTPParamType;
|
|
17
|
+
validate(): void;
|
|
18
|
+
}
|
|
19
|
+
export declare class QueryParamMeta extends ParamMeta {
|
|
20
|
+
type: HTTPParamType;
|
|
21
|
+
name: string;
|
|
22
|
+
constructor(name: string);
|
|
23
|
+
validate(): void;
|
|
24
|
+
}
|
|
25
|
+
export declare class QueriesParamMeta extends ParamMeta {
|
|
26
|
+
type: HTTPParamType;
|
|
27
|
+
name: string;
|
|
28
|
+
constructor(name: string);
|
|
29
|
+
validate(): void;
|
|
30
|
+
}
|
|
31
|
+
export declare class PathParamMeta extends ParamMeta {
|
|
32
|
+
type: HTTPParamType;
|
|
33
|
+
name: string;
|
|
34
|
+
constructor(name: string);
|
|
35
|
+
validate(httpPath: string): void;
|
|
36
|
+
}
|
|
37
|
+
export declare class CookiesParamMeta extends ParamMeta {
|
|
38
|
+
type: HTTPParamType;
|
|
39
|
+
validate(): void;
|
|
40
|
+
}
|
|
41
|
+
export declare class HTTPMethodMeta implements MethodMeta {
|
|
42
|
+
readonly name: string;
|
|
43
|
+
readonly path: string;
|
|
44
|
+
readonly method: HTTPMethodEnum;
|
|
45
|
+
readonly middlewares: readonly MiddlewareFunc[];
|
|
46
|
+
readonly contextParamIndex: number | undefined;
|
|
47
|
+
readonly paramMap: Map<number, ParamMeta>;
|
|
48
|
+
readonly priority: number;
|
|
49
|
+
readonly needAcl: boolean;
|
|
50
|
+
readonly aclCode: string | undefined;
|
|
51
|
+
readonly hosts: string[] | undefined;
|
|
52
|
+
constructor(name: string, path: string, method: HTTPMethodEnum, middlewares: MiddlewareFunc[], contextParamIndex: number | undefined, paramTypeMap: Map<number, ParamMeta>, priority: number, needAcl: boolean, aclCode: string | undefined, hosts: string[] | undefined);
|
|
53
|
+
}
|
|
54
|
+
export declare class ParamMetaUtil {
|
|
55
|
+
static createParam(type: HTTPParamType, name?: string): RequestParamMeta | BodyParamMeta | HeadersParamMeta | QueryParamMeta | QueriesParamMeta | PathParamMeta | CookiesParamMeta;
|
|
56
|
+
}
|