@eggjs/controller-decorator 4.0.0-beta.9 → 4.0.2-beta.0
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 +1 -1
- package/dist/builder/ControllerMetaBuilderFactory.d.ts +10 -6
- package/dist/builder/ControllerMetaBuilderFactory.js +37 -41
- package/dist/builder/index.d.ts +1 -1
- package/dist/builder/index.js +3 -2
- package/dist/decorator/Acl.d.ts +4 -1
- package/dist/decorator/Acl.js +23 -21
- package/dist/decorator/Context.d.ts +4 -1
- package/dist/decorator/Context.js +15 -10
- package/dist/decorator/Middleware.d.ts +6 -2
- package/dist/decorator/Middleware.js +51 -64
- package/dist/decorator/http/HTTPController.d.ts +6 -2
- package/dist/decorator/http/HTTPController.js +23 -28
- package/dist/decorator/http/HTTPMethod.d.ts +6 -2
- package/dist/decorator/http/HTTPMethod.js +21 -16
- package/dist/decorator/http/HTTPParam.d.ts +159 -8
- package/dist/decorator/http/HTTPParam.js +216 -68
- package/dist/decorator/http/Host.d.ts +6 -2
- package/dist/decorator/http/Host.js +26 -24
- package/dist/decorator/http/index.d.ts +5 -4
- package/dist/decorator/http/index.js +7 -5
- package/dist/decorator/index.d.ts +14 -4
- package/dist/decorator/index.js +16 -5
- package/dist/decorator/mcp/Extra.d.ts +4 -0
- package/dist/decorator/mcp/Extra.js +13 -0
- package/dist/decorator/mcp/MCPController.d.ts +6 -0
- package/dist/decorator/mcp/MCPController.js +24 -0
- package/dist/decorator/mcp/MCPPrompt.d.ts +8 -0
- package/dist/decorator/mcp/MCPPrompt.js +31 -0
- package/dist/decorator/mcp/MCPResource.d.ts +6 -0
- package/dist/decorator/mcp/MCPResource.js +21 -0
- package/dist/decorator/mcp/MCPTool.d.ts +8 -0
- package/dist/decorator/mcp/MCPTool.js +31 -0
- package/dist/decorator/mcp/index.d.ts +5 -0
- package/dist/decorator/mcp/index.js +7 -0
- package/dist/impl/http/HTTPControllerMetaBuilder.d.ts +13 -8
- package/dist/impl/http/HTTPControllerMetaBuilder.js +58 -55
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.d.ts +15 -10
- package/dist/impl/http/HTTPControllerMethodMetaBuilder.js +81 -100
- package/dist/impl/http/index.d.ts +2 -2
- package/dist/impl/http/index.js +4 -3
- package/dist/impl/index.d.ts +8 -1
- package/dist/impl/index.js +10 -2
- package/dist/impl/mcp/MCPControllerMetaBuilder.d.ts +15 -0
- package/dist/impl/mcp/MCPControllerMetaBuilder.js +67 -0
- package/dist/impl/mcp/MCPControllerPromptMetaBuilder.d.ts +13 -0
- package/dist/impl/mcp/MCPControllerPromptMetaBuilder.js +37 -0
- package/dist/impl/mcp/MCPControllerResourceMetaBuilder.d.ts +13 -0
- package/dist/impl/mcp/MCPControllerResourceMetaBuilder.js +35 -0
- package/dist/impl/mcp/MCPControllerToolMetaBuilder.d.ts +13 -0
- package/dist/impl/mcp/MCPControllerToolMetaBuilder.js +37 -0
- package/dist/impl/mcp/index.d.ts +4 -0
- package/dist/impl/mcp/index.js +6 -0
- package/dist/index.d.ts +42 -6
- package/dist/index.js +44 -7
- package/dist/model/HTTPControllerMeta.d.ts +26 -21
- package/dist/model/HTTPControllerMeta.js +58 -60
- package/dist/model/HTTPCookies.d.ts +2 -3
- package/dist/model/HTTPCookies.js +3 -4
- package/dist/model/HTTPMethodMeta.d.ts +60 -56
- package/dist/model/HTTPMethodMeta.js +104 -124
- package/dist/model/HTTPResponse.d.ts +6 -9
- package/dist/model/HTTPResponse.js +6 -3
- package/dist/model/MCPControllerMeta.d.ts +29 -0
- package/dist/model/MCPControllerMeta.js +51 -0
- package/dist/model/MCPPromptMeta.d.ts +28 -0
- package/dist/model/MCPPromptMeta.js +26 -0
- package/dist/model/MCPResourceMeta.d.ts +28 -0
- package/dist/model/MCPResourceMeta.js +28 -0
- package/dist/model/MCPToolMeta.d.ts +26 -0
- package/dist/model/MCPToolMeta.js +24 -0
- package/dist/model/index.d.ts +8 -5
- package/dist/model/index.js +10 -6
- package/dist/util/ControllerInfoUtil.d.ts +21 -16
- package/dist/util/ControllerInfoUtil.js +54 -46
- package/dist/util/ControllerMetadataUtil.d.ts +8 -4
- package/dist/util/ControllerMetadataUtil.js +21 -20
- package/dist/util/HTTPInfoUtil.d.ts +19 -15
- package/dist/util/HTTPInfoUtil.js +53 -64
- package/dist/util/HTTPPriorityUtil.d.ts +22 -18
- package/dist/util/HTTPPriorityUtil.js +39 -42
- package/dist/util/MCPInfoUtil.d.ts +52 -0
- package/dist/util/MCPInfoUtil.js +87 -0
- package/dist/util/MethodInfoUtil.d.ts +24 -19
- package/dist/util/MethodInfoUtil.js +68 -72
- package/dist/util/index.d.ts +9 -6
- package/dist/util/index.js +11 -7
- package/dist/util/validator/ControllerValidator.d.ts +7 -3
- package/dist/util/validator/ControllerValidator.js +15 -14
- package/dist/util/validator/MethodValidator.d.ts +7 -3
- package/dist/util/validator/MethodValidator.js +30 -30
- package/dist/util/validator/index.d.ts +2 -2
- package/dist/util/validator/index.js +4 -3
- package/package.json +36 -39
- package/dist/model/HTTPRequest.d.ts +0 -7
- package/dist/model/HTTPRequest.js +0 -3
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { ControllerInfoUtil } from "../../util/ControllerInfoUtil.js";
|
|
2
|
+
import { ControllerValidator } from "../../util/validator/ControllerValidator.js";
|
|
3
|
+
import { MCPInfoUtil } from "../../util/MCPInfoUtil.js";
|
|
4
|
+
import { ControllerMetaBuilderFactory } from "../../builder/ControllerMetaBuilderFactory.js";
|
|
5
|
+
import { MCPControllerMeta } from "../../model/MCPControllerMeta.js";
|
|
6
|
+
import "../../model/index.js";
|
|
7
|
+
import { MCPControllerPromptMetaBuilder } from "./MCPControllerPromptMetaBuilder.js";
|
|
8
|
+
import { MCPControllerResourceMetaBuilder } from "./MCPControllerResourceMetaBuilder.js";
|
|
9
|
+
import { MCPControllerToolMetaBuilder } from "./MCPControllerToolMetaBuilder.js";
|
|
10
|
+
import { PrototypeUtil } from "@eggjs/core-decorator";
|
|
11
|
+
import { ControllerType } from "@eggjs/tegg-types";
|
|
12
|
+
import assert from "node:assert";
|
|
13
|
+
|
|
14
|
+
//#region src/impl/mcp/MCPControllerMetaBuilder.ts
|
|
15
|
+
var MCPControllerMetaBuilder = class MCPControllerMetaBuilder {
|
|
16
|
+
clazz;
|
|
17
|
+
constructor(clazz) {
|
|
18
|
+
this.clazz = clazz;
|
|
19
|
+
}
|
|
20
|
+
buildResource() {
|
|
21
|
+
const methodNames = MCPInfoUtil.getMCPResource(this.clazz);
|
|
22
|
+
const methods = [];
|
|
23
|
+
for (const methodName of methodNames) {
|
|
24
|
+
const methodMeta = new MCPControllerResourceMetaBuilder(this.clazz, methodName).build();
|
|
25
|
+
if (methodMeta) methods.push(methodMeta);
|
|
26
|
+
}
|
|
27
|
+
return methods;
|
|
28
|
+
}
|
|
29
|
+
buildPrompt() {
|
|
30
|
+
const methodNames = MCPInfoUtil.getMCPPrompt(this.clazz);
|
|
31
|
+
const methods = [];
|
|
32
|
+
for (const methodName of methodNames) {
|
|
33
|
+
const methodMeta = new MCPControllerPromptMetaBuilder(this.clazz, methodName).build();
|
|
34
|
+
if (methodMeta) methods.push(methodMeta);
|
|
35
|
+
}
|
|
36
|
+
return methods;
|
|
37
|
+
}
|
|
38
|
+
buildTool() {
|
|
39
|
+
const methodNames = MCPInfoUtil.getMCPTool(this.clazz);
|
|
40
|
+
const methods = [];
|
|
41
|
+
for (const methodName of methodNames) {
|
|
42
|
+
const methodMeta = new MCPControllerToolMetaBuilder(this.clazz, methodName).build();
|
|
43
|
+
if (methodMeta) methods.push(methodMeta);
|
|
44
|
+
}
|
|
45
|
+
return methods;
|
|
46
|
+
}
|
|
47
|
+
build() {
|
|
48
|
+
ControllerValidator.validate(this.clazz);
|
|
49
|
+
assert(ControllerInfoUtil.getControllerType(this.clazz) === ControllerType.MCP, "invalidate controller type");
|
|
50
|
+
const mcpMiddlewares = ControllerInfoUtil.getControllerMiddlewares(this.clazz);
|
|
51
|
+
const resources = this.buildResource();
|
|
52
|
+
const prompts = this.buildPrompt();
|
|
53
|
+
const tools = this.buildTool();
|
|
54
|
+
const protoName = PrototypeUtil.getProperty(this.clazz).name;
|
|
55
|
+
const clazzName = this.clazz.name;
|
|
56
|
+
const controllerName = ControllerInfoUtil.getControllerName(this.clazz) || clazzName;
|
|
57
|
+
const name = MCPInfoUtil.getMCPName(this.clazz);
|
|
58
|
+
return new MCPControllerMeta(clazzName, protoName, controllerName, MCPInfoUtil.getMCPVersion(this.clazz) || "1.0.0", tools, resources, prompts, mcpMiddlewares, name, ControllerInfoUtil.hasControllerAcl(this.clazz), ControllerInfoUtil.getControllerAcl(this.clazz), MCPInfoUtil.getMCPControllerParams(this.clazz));
|
|
59
|
+
}
|
|
60
|
+
static create(clazz) {
|
|
61
|
+
return new MCPControllerMetaBuilder(clazz);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
ControllerMetaBuilderFactory.registerControllerMetaBuilder(ControllerType.MCP, MCPControllerMetaBuilder.create);
|
|
65
|
+
|
|
66
|
+
//#endregion
|
|
67
|
+
export { MCPControllerMetaBuilder };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { MCPPromptMeta } from "../../model/MCPPromptMeta.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
4
|
+
|
|
5
|
+
//#region src/impl/mcp/MCPControllerPromptMetaBuilder.d.ts
|
|
6
|
+
declare class MCPControllerPromptMetaBuilder {
|
|
7
|
+
private readonly clazz;
|
|
8
|
+
private readonly methodName;
|
|
9
|
+
constructor(clazz: EggProtoImplClass, methodName: string);
|
|
10
|
+
build(): MCPPromptMeta | undefined;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { MCPControllerPromptMetaBuilder };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { MethodInfoUtil } from "../../util/MethodInfoUtil.js";
|
|
2
|
+
import { MethodValidator } from "../../util/validator/MethodValidator.js";
|
|
3
|
+
import { MCPInfoUtil } from "../../util/MCPInfoUtil.js";
|
|
4
|
+
import { MCPPromptMeta } from "../../model/MCPPromptMeta.js";
|
|
5
|
+
import "../../model/index.js";
|
|
6
|
+
|
|
7
|
+
//#region src/impl/mcp/MCPControllerPromptMetaBuilder.ts
|
|
8
|
+
var MCPControllerPromptMetaBuilder = class {
|
|
9
|
+
clazz;
|
|
10
|
+
methodName;
|
|
11
|
+
constructor(clazz, methodName) {
|
|
12
|
+
this.clazz = clazz;
|
|
13
|
+
this.methodName = methodName;
|
|
14
|
+
}
|
|
15
|
+
build() {
|
|
16
|
+
MethodValidator.validate(this.clazz, this.methodName);
|
|
17
|
+
if (!MethodInfoUtil.getMethodControllerType(this.clazz, this.methodName)) return;
|
|
18
|
+
const middlewares = MethodInfoUtil.getMethodMiddlewares(this.clazz, this.methodName);
|
|
19
|
+
const needAcl = MethodInfoUtil.hasMethodAcl(this.clazz, this.methodName);
|
|
20
|
+
const aclCode = MethodInfoUtil.getMethodAcl(this.clazz, this.methodName);
|
|
21
|
+
const params = MCPInfoUtil.getMCPPromptParams(this.clazz, this.methodName);
|
|
22
|
+
const detail = MCPInfoUtil.getMCPPromptArgsIndex(this.clazz, this.methodName);
|
|
23
|
+
const extra = MCPInfoUtil.getMCPExtra(this.clazz, this.methodName);
|
|
24
|
+
return new MCPPromptMeta({
|
|
25
|
+
name: this.methodName,
|
|
26
|
+
middlewares,
|
|
27
|
+
needAcl,
|
|
28
|
+
aclCode,
|
|
29
|
+
detail,
|
|
30
|
+
extra,
|
|
31
|
+
...params
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { MCPControllerPromptMetaBuilder };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { MCPResourceMeta } from "../../model/MCPResourceMeta.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
4
|
+
|
|
5
|
+
//#region src/impl/mcp/MCPControllerResourceMetaBuilder.d.ts
|
|
6
|
+
declare class MCPControllerResourceMetaBuilder {
|
|
7
|
+
private readonly clazz;
|
|
8
|
+
private readonly methodName;
|
|
9
|
+
constructor(clazz: EggProtoImplClass, methodName: string);
|
|
10
|
+
build(): MCPResourceMeta | undefined;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { MCPControllerResourceMetaBuilder };
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { MethodInfoUtil } from "../../util/MethodInfoUtil.js";
|
|
2
|
+
import { MethodValidator } from "../../util/validator/MethodValidator.js";
|
|
3
|
+
import { MCPInfoUtil } from "../../util/MCPInfoUtil.js";
|
|
4
|
+
import { MCPResourceMeta } from "../../model/MCPResourceMeta.js";
|
|
5
|
+
import "../../model/index.js";
|
|
6
|
+
|
|
7
|
+
//#region src/impl/mcp/MCPControllerResourceMetaBuilder.ts
|
|
8
|
+
var MCPControllerResourceMetaBuilder = class {
|
|
9
|
+
clazz;
|
|
10
|
+
methodName;
|
|
11
|
+
constructor(clazz, methodName) {
|
|
12
|
+
this.clazz = clazz;
|
|
13
|
+
this.methodName = methodName;
|
|
14
|
+
}
|
|
15
|
+
build() {
|
|
16
|
+
MethodValidator.validate(this.clazz, this.methodName);
|
|
17
|
+
if (!MethodInfoUtil.getMethodControllerType(this.clazz, this.methodName)) return;
|
|
18
|
+
const middlewares = MethodInfoUtil.getMethodMiddlewares(this.clazz, this.methodName);
|
|
19
|
+
const needAcl = MethodInfoUtil.hasMethodAcl(this.clazz, this.methodName);
|
|
20
|
+
const aclCode = MethodInfoUtil.getMethodAcl(this.clazz, this.methodName);
|
|
21
|
+
const params = MCPInfoUtil.getMCPResourceParams(this.clazz, this.methodName);
|
|
22
|
+
const extra = MCPInfoUtil.getMCPExtra(this.clazz, this.methodName);
|
|
23
|
+
return new MCPResourceMeta({
|
|
24
|
+
name: this.methodName,
|
|
25
|
+
middlewares,
|
|
26
|
+
needAcl,
|
|
27
|
+
aclCode,
|
|
28
|
+
extra,
|
|
29
|
+
...params
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
//#endregion
|
|
35
|
+
export { MCPControllerResourceMetaBuilder };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { MCPToolMeta } from "../../model/MCPToolMeta.js";
|
|
2
|
+
import "../../model/index.js";
|
|
3
|
+
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
4
|
+
|
|
5
|
+
//#region src/impl/mcp/MCPControllerToolMetaBuilder.d.ts
|
|
6
|
+
declare class MCPControllerToolMetaBuilder {
|
|
7
|
+
private readonly clazz;
|
|
8
|
+
private readonly methodName;
|
|
9
|
+
constructor(clazz: EggProtoImplClass, methodName: string);
|
|
10
|
+
build(): MCPToolMeta | undefined;
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { MCPControllerToolMetaBuilder };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { MethodInfoUtil } from "../../util/MethodInfoUtil.js";
|
|
2
|
+
import { MethodValidator } from "../../util/validator/MethodValidator.js";
|
|
3
|
+
import { MCPInfoUtil } from "../../util/MCPInfoUtil.js";
|
|
4
|
+
import { MCPToolMeta } from "../../model/MCPToolMeta.js";
|
|
5
|
+
import "../../model/index.js";
|
|
6
|
+
|
|
7
|
+
//#region src/impl/mcp/MCPControllerToolMetaBuilder.ts
|
|
8
|
+
var MCPControllerToolMetaBuilder = class {
|
|
9
|
+
clazz;
|
|
10
|
+
methodName;
|
|
11
|
+
constructor(clazz, methodName) {
|
|
12
|
+
this.clazz = clazz;
|
|
13
|
+
this.methodName = methodName;
|
|
14
|
+
}
|
|
15
|
+
build() {
|
|
16
|
+
MethodValidator.validate(this.clazz, this.methodName);
|
|
17
|
+
if (!MethodInfoUtil.getMethodControllerType(this.clazz, this.methodName)) return;
|
|
18
|
+
const middlewares = MethodInfoUtil.getMethodMiddlewares(this.clazz, this.methodName);
|
|
19
|
+
const needAcl = MethodInfoUtil.hasMethodAcl(this.clazz, this.methodName);
|
|
20
|
+
const aclCode = MethodInfoUtil.getMethodAcl(this.clazz, this.methodName);
|
|
21
|
+
const params = MCPInfoUtil.getMCPToolParams(this.clazz, this.methodName);
|
|
22
|
+
const detail = MCPInfoUtil.getMCPToolArgsIndex(this.clazz, this.methodName);
|
|
23
|
+
const extra = MCPInfoUtil.getMCPExtra(this.clazz, this.methodName);
|
|
24
|
+
return new MCPToolMeta({
|
|
25
|
+
name: this.methodName,
|
|
26
|
+
middlewares,
|
|
27
|
+
needAcl,
|
|
28
|
+
aclCode,
|
|
29
|
+
detail,
|
|
30
|
+
extra,
|
|
31
|
+
...params
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { MCPControllerToolMetaBuilder };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { MCPControllerMetaBuilder } from "./MCPControllerMetaBuilder.js";
|
|
2
|
+
import { MCPControllerPromptMetaBuilder } from "./MCPControllerPromptMetaBuilder.js";
|
|
3
|
+
import { MCPControllerResourceMetaBuilder } from "./MCPControllerResourceMetaBuilder.js";
|
|
4
|
+
import { MCPControllerToolMetaBuilder } from "./MCPControllerToolMetaBuilder.js";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { MCPControllerPromptMetaBuilder } from "./MCPControllerPromptMetaBuilder.js";
|
|
2
|
+
import { MCPControllerResourceMetaBuilder } from "./MCPControllerResourceMetaBuilder.js";
|
|
3
|
+
import { MCPControllerToolMetaBuilder } from "./MCPControllerToolMetaBuilder.js";
|
|
4
|
+
import { MCPControllerMetaBuilder } from "./MCPControllerMetaBuilder.js";
|
|
5
|
+
|
|
6
|
+
export { };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { ControllerMetaBuilderFactory } from "./builder/ControllerMetaBuilderFactory.js";
|
|
2
|
+
import "./builder/index.js";
|
|
3
|
+
import { Host } from "./decorator/http/Host.js";
|
|
4
|
+
import { HTTPController } from "./decorator/http/HTTPController.js";
|
|
5
|
+
import { HTTPMethod } from "./decorator/http/HTTPMethod.js";
|
|
6
|
+
import { InjectContext } from "./decorator/Context.js";
|
|
7
|
+
import { HTTPBody, HTTPCookies, HTTPHeaders, HTTPParam, HTTPQueries, HTTPQuery, HTTPRequest } from "./decorator/http/HTTPParam.js";
|
|
8
|
+
import { Extra } from "./decorator/mcp/Extra.js";
|
|
9
|
+
import { MCPController } from "./decorator/mcp/MCPController.js";
|
|
10
|
+
import { MCPPrompt, PromptArgsSchema } from "./decorator/mcp/MCPPrompt.js";
|
|
11
|
+
import { MCPResource } from "./decorator/mcp/MCPResource.js";
|
|
12
|
+
import { MCPTool, ToolArgsSchema } from "./decorator/mcp/MCPTool.js";
|
|
13
|
+
import { Acl } from "./decorator/Acl.js";
|
|
14
|
+
import { Middleware } from "./decorator/Middleware.js";
|
|
15
|
+
import "./decorator/index.js";
|
|
16
|
+
import { BodyParamMeta, CookiesParamMeta, HTTPMethodMeta, HeadersParamMeta, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, RequestParamMeta } from "./model/HTTPMethodMeta.js";
|
|
17
|
+
import { HTTPControllerMeta } from "./model/HTTPControllerMeta.js";
|
|
18
|
+
import { Cookies } from "./model/HTTPCookies.js";
|
|
19
|
+
import { HTTPResponse } from "./model/HTTPResponse.js";
|
|
20
|
+
import { MCPInfoUtil, PromptArgsSchemaDetail, ToolArgsSchemaDetail } from "./util/MCPInfoUtil.js";
|
|
21
|
+
import { MCPPromptMeta } from "./model/MCPPromptMeta.js";
|
|
22
|
+
import { MCPResourceMeta } from "./model/MCPResourceMeta.js";
|
|
23
|
+
import { MCPToolMeta } from "./model/MCPToolMeta.js";
|
|
24
|
+
import { MCPControllerMeta } from "./model/MCPControllerMeta.js";
|
|
25
|
+
import "./model/index.js";
|
|
26
|
+
import { HTTPControllerMetaBuilder } from "./impl/http/HTTPControllerMetaBuilder.js";
|
|
27
|
+
import { HTTPControllerMethodMetaBuilder } from "./impl/http/HTTPControllerMethodMetaBuilder.js";
|
|
28
|
+
import { MCPControllerMetaBuilder } from "./impl/mcp/MCPControllerMetaBuilder.js";
|
|
29
|
+
import { MCPControllerPromptMetaBuilder } from "./impl/mcp/MCPControllerPromptMetaBuilder.js";
|
|
30
|
+
import { MCPControllerResourceMetaBuilder } from "./impl/mcp/MCPControllerResourceMetaBuilder.js";
|
|
31
|
+
import { MCPControllerToolMetaBuilder } from "./impl/mcp/MCPControllerToolMetaBuilder.js";
|
|
32
|
+
import "./impl/index.js";
|
|
33
|
+
import { ControllerValidator } from "./util/validator/ControllerValidator.js";
|
|
34
|
+
import { MethodValidator } from "./util/validator/MethodValidator.js";
|
|
35
|
+
import { ControllerInfoUtil } from "./util/ControllerInfoUtil.js";
|
|
36
|
+
import { ControllerMetadataUtil } from "./util/ControllerMetadataUtil.js";
|
|
37
|
+
import { HTTPInfoUtil } from "./util/HTTPInfoUtil.js";
|
|
38
|
+
import { HTTPPriorityUtil } from "./util/HTTPPriorityUtil.js";
|
|
39
|
+
import { MethodInfoUtil } from "./util/MethodInfoUtil.js";
|
|
40
|
+
import "./util/index.js";
|
|
41
|
+
export * from "@eggjs/tegg-types/controller-decorator";
|
|
42
|
+
export { Acl, BodyParamMeta, ControllerInfoUtil, ControllerMetaBuilderFactory, ControllerMetadataUtil, ControllerValidator, Cookies, CookiesParamMeta, Extra, HTTPBody, InjectContext as HTTPContext, HTTPController, HTTPControllerMeta, HTTPControllerMetaBuilder, HTTPControllerMethodMetaBuilder, HTTPCookies, HTTPHeaders, HTTPInfoUtil, HTTPMethod, HTTPMethodMeta, HTTPParam, HTTPPriorityUtil, HTTPQueries, HTTPQuery, HTTPRequest, HTTPResponse, HeadersParamMeta, Host, InjectContext, MCPController, MCPControllerMeta, MCPControllerMetaBuilder, MCPControllerPromptMetaBuilder, MCPControllerResourceMetaBuilder, MCPControllerToolMetaBuilder, MCPInfoUtil, MCPPrompt, MCPPromptMeta, MCPResource, MCPResourceMeta, MCPTool, MCPToolMeta, MethodInfoUtil, MethodValidator, Middleware, ParamMeta, ParamMetaUtil, PathParamMeta, PromptArgsSchema, PromptArgsSchemaDetail, QueriesParamMeta, QueryParamMeta, RequestParamMeta, ToolArgsSchema, ToolArgsSchemaDetail };
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { ControllerInfoUtil } from "./util/ControllerInfoUtil.js";
|
|
2
|
+
import { ControllerValidator } from "./util/validator/ControllerValidator.js";
|
|
3
|
+
import { MethodInfoUtil } from "./util/MethodInfoUtil.js";
|
|
4
|
+
import { MethodValidator } from "./util/validator/MethodValidator.js";
|
|
5
|
+
import { ControllerMetadataUtil } from "./util/ControllerMetadataUtil.js";
|
|
6
|
+
import { HTTPInfoUtil } from "./util/HTTPInfoUtil.js";
|
|
7
|
+
import { HTTPPriorityUtil } from "./util/HTTPPriorityUtil.js";
|
|
8
|
+
import { MCPInfoUtil } from "./util/MCPInfoUtil.js";
|
|
9
|
+
import "./util/index.js";
|
|
10
|
+
import { ControllerMetaBuilderFactory } from "./builder/ControllerMetaBuilderFactory.js";
|
|
11
|
+
import "./builder/index.js";
|
|
12
|
+
import { Host } from "./decorator/http/Host.js";
|
|
13
|
+
import { HTTPController } from "./decorator/http/HTTPController.js";
|
|
14
|
+
import { HTTPMethod } from "./decorator/http/HTTPMethod.js";
|
|
15
|
+
import { InjectContext } from "./decorator/Context.js";
|
|
16
|
+
import { HTTPBody, HTTPCookies, HTTPHeaders, HTTPParam, HTTPQueries, HTTPQuery, HTTPRequest } from "./decorator/http/HTTPParam.js";
|
|
17
|
+
import { Extra } from "./decorator/mcp/Extra.js";
|
|
18
|
+
import { MCPController } from "./decorator/mcp/MCPController.js";
|
|
19
|
+
import { MCPPrompt, PromptArgsSchema } from "./decorator/mcp/MCPPrompt.js";
|
|
20
|
+
import { MCPResource } from "./decorator/mcp/MCPResource.js";
|
|
21
|
+
import { MCPTool, ToolArgsSchema } from "./decorator/mcp/MCPTool.js";
|
|
22
|
+
import { Acl } from "./decorator/Acl.js";
|
|
23
|
+
import { Middleware } from "./decorator/Middleware.js";
|
|
24
|
+
import "./decorator/index.js";
|
|
25
|
+
import { BodyParamMeta, CookiesParamMeta, HTTPMethodMeta, HeadersParamMeta, ParamMeta, ParamMetaUtil, PathParamMeta, QueriesParamMeta, QueryParamMeta, RequestParamMeta } from "./model/HTTPMethodMeta.js";
|
|
26
|
+
import { HTTPControllerMeta } from "./model/HTTPControllerMeta.js";
|
|
27
|
+
import { Cookies } from "./model/HTTPCookies.js";
|
|
28
|
+
import { HTTPResponse } from "./model/HTTPResponse.js";
|
|
29
|
+
import { MCPPromptMeta } from "./model/MCPPromptMeta.js";
|
|
30
|
+
import { MCPResourceMeta } from "./model/MCPResourceMeta.js";
|
|
31
|
+
import { MCPToolMeta } from "./model/MCPToolMeta.js";
|
|
32
|
+
import { MCPControllerMeta } from "./model/MCPControllerMeta.js";
|
|
33
|
+
import "./model/index.js";
|
|
34
|
+
import { HTTPControllerMethodMetaBuilder } from "./impl/http/HTTPControllerMethodMetaBuilder.js";
|
|
35
|
+
import { HTTPControllerMetaBuilder } from "./impl/http/HTTPControllerMetaBuilder.js";
|
|
36
|
+
import { MCPControllerPromptMetaBuilder } from "./impl/mcp/MCPControllerPromptMetaBuilder.js";
|
|
37
|
+
import { MCPControllerResourceMetaBuilder } from "./impl/mcp/MCPControllerResourceMetaBuilder.js";
|
|
38
|
+
import { MCPControllerToolMetaBuilder } from "./impl/mcp/MCPControllerToolMetaBuilder.js";
|
|
39
|
+
import { MCPControllerMetaBuilder } from "./impl/mcp/MCPControllerMetaBuilder.js";
|
|
40
|
+
import "./impl/index.js";
|
|
41
|
+
|
|
42
|
+
export * from "@eggjs/tegg-types/controller-decorator"
|
|
43
|
+
|
|
44
|
+
export { Acl, BodyParamMeta, ControllerInfoUtil, ControllerMetaBuilderFactory, ControllerMetadataUtil, ControllerValidator, Cookies, CookiesParamMeta, Extra, HTTPBody, InjectContext as HTTPContext, HTTPController, HTTPControllerMeta, HTTPControllerMetaBuilder, HTTPControllerMethodMetaBuilder, HTTPCookies, HTTPHeaders, HTTPInfoUtil, HTTPMethod, HTTPMethodMeta, HTTPParam, HTTPPriorityUtil, HTTPQueries, HTTPQuery, HTTPRequest, HTTPResponse, HeadersParamMeta, Host, InjectContext, MCPController, MCPControllerMeta, MCPControllerMetaBuilder, MCPControllerPromptMetaBuilder, MCPControllerResourceMetaBuilder, MCPControllerToolMetaBuilder, MCPInfoUtil, MCPPrompt, MCPPromptMeta, MCPResource, MCPResourceMeta, MCPTool, MCPToolMeta, MethodInfoUtil, MethodValidator, Middleware, ParamMeta, ParamMetaUtil, PathParamMeta, PromptArgsSchema, QueriesParamMeta, QueryParamMeta, RequestParamMeta, ToolArgsSchema };
|
|
@@ -1,22 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { ControllerType } from
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
import { HTTPMethodMeta } from "./HTTPMethodMeta.js";
|
|
2
|
+
import { ControllerMetadata, ControllerType, EggPrototypeName, MiddlewareFunc } from "@eggjs/tegg-types";
|
|
3
|
+
|
|
4
|
+
//#region src/model/HTTPControllerMeta.d.ts
|
|
5
|
+
declare class HTTPControllerMeta implements ControllerMetadata {
|
|
6
|
+
readonly protoName: EggPrototypeName;
|
|
7
|
+
readonly controllerName: string;
|
|
8
|
+
readonly className: string;
|
|
9
|
+
readonly type: ControllerType;
|
|
10
|
+
readonly path?: string;
|
|
11
|
+
readonly middlewares: readonly MiddlewareFunc[];
|
|
12
|
+
readonly methods: readonly HTTPMethodMeta[];
|
|
13
|
+
readonly needAcl: boolean;
|
|
14
|
+
readonly aclCode?: string;
|
|
15
|
+
readonly hosts?: string[];
|
|
16
|
+
readonly timeout?: number;
|
|
17
|
+
constructor(className: string, protoName: EggPrototypeName, controllerName: string, path: string | undefined, middlewares: MiddlewareFunc[], methods: HTTPMethodMeta[], needAcl: boolean, aclCode: string | undefined, hosts: string[] | undefined, timeout: number | undefined);
|
|
18
|
+
getMethodRealPath(method: HTTPMethodMeta): string;
|
|
19
|
+
getMethodHosts(method: HTTPMethodMeta): string[] | undefined;
|
|
20
|
+
getMethodName(method: HTTPMethodMeta): string;
|
|
21
|
+
getMethodMiddlewares(method: HTTPMethodMeta): MiddlewareFunc[];
|
|
22
|
+
hasMethodAcl(method: HTTPMethodMeta): boolean;
|
|
23
|
+
getMethodAcl(method: HTTPMethodMeta): string | undefined;
|
|
24
|
+
getMethodTimeout(method: HTTPMethodMeta): number | undefined;
|
|
22
25
|
}
|
|
26
|
+
//#endregion
|
|
27
|
+
export { HTTPControllerMeta };
|
|
@@ -1,60 +1,58 @@
|
|
|
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
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUENvbnRyb2xsZXJNZXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVsL0hUVFBDb250cm9sbGVyTWV0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLElBQUksTUFBTSxXQUFXLENBQUM7QUFHN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sa0JBQWtCO0lBQ3BCLFNBQVMsQ0FBbUI7SUFDNUIsY0FBYyxDQUFTO0lBQ3ZCLFNBQVMsQ0FBUztJQUNYLElBQUksR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDO0lBQzNCLElBQUksQ0FBVTtJQUNkLFdBQVcsQ0FBNEI7SUFDdkMsT0FBTyxDQUE0QjtJQUNuQyxPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2pCLEtBQUssQ0FBWTtJQUVqQyxZQUNFLFNBQWlCLEVBQ2pCLFNBQTJCLEVBQzNCLGNBQXNCLEVBQ3RCLElBQXdCLEVBQ3hCLFdBQTZCLEVBQzdCLE9BQXlCLEVBQ3pCLE9BQWdCLEVBQ2hCLE9BQTJCLEVBQzNCLEtBQTJCO1FBRTNCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFzQjtRQUN0QyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQsY0FBYyxDQUFDLE1BQXNCO1FBQ25DLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUFzQjtRQUNsQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsY0FBYyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsb0JBQW9CLENBQUMsTUFBc0I7UUFDekMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLE9BQU87Z0JBQ0wsR0FBRyxJQUFJLENBQUMsV0FBVztnQkFDbkIsR0FBRyxNQUFNLENBQUMsV0FBVzthQUN0QixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sQ0FBRSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQXNCO1FBQ2pDLE9BQU8sTUFBTSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBc0I7UUFDakMsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ3hCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztDQUNGIn0=
|
|
1
|
+
import "./HTTPMethodMeta.js";
|
|
2
|
+
import { ControllerType } from "@eggjs/tegg-types";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
|
|
5
|
+
//#region src/model/HTTPControllerMeta.ts
|
|
6
|
+
var HTTPControllerMeta = class {
|
|
7
|
+
protoName;
|
|
8
|
+
controllerName;
|
|
9
|
+
className;
|
|
10
|
+
type = ControllerType.HTTP;
|
|
11
|
+
path;
|
|
12
|
+
middlewares;
|
|
13
|
+
methods;
|
|
14
|
+
needAcl;
|
|
15
|
+
aclCode;
|
|
16
|
+
hosts;
|
|
17
|
+
timeout;
|
|
18
|
+
constructor(className, protoName, controllerName, path$1, middlewares, methods, needAcl, aclCode, hosts, timeout) {
|
|
19
|
+
this.protoName = protoName;
|
|
20
|
+
this.controllerName = controllerName;
|
|
21
|
+
this.className = className;
|
|
22
|
+
this.path = path$1;
|
|
23
|
+
this.middlewares = middlewares;
|
|
24
|
+
this.methods = methods;
|
|
25
|
+
this.needAcl = needAcl;
|
|
26
|
+
this.aclCode = aclCode;
|
|
27
|
+
this.hosts = hosts;
|
|
28
|
+
this.timeout = timeout;
|
|
29
|
+
}
|
|
30
|
+
getMethodRealPath(method) {
|
|
31
|
+
if (this.path) return path.posix.join(this.path, method.path);
|
|
32
|
+
return method.path;
|
|
33
|
+
}
|
|
34
|
+
getMethodHosts(method) {
|
|
35
|
+
if (this.hosts) return this.hosts;
|
|
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) return [...this.middlewares, ...method.middlewares];
|
|
43
|
+
return [...method.middlewares];
|
|
44
|
+
}
|
|
45
|
+
hasMethodAcl(method) {
|
|
46
|
+
return method.needAcl || this.needAcl;
|
|
47
|
+
}
|
|
48
|
+
getMethodAcl(method) {
|
|
49
|
+
if (method.aclCode) return method.aclCode;
|
|
50
|
+
return this.aclCode;
|
|
51
|
+
}
|
|
52
|
+
getMethodTimeout(method) {
|
|
53
|
+
return method.timeout || this.timeout;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
//#endregion
|
|
58
|
+
export { HTTPControllerMeta };
|
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import { Cookies } from
|
|
2
|
-
export
|
|
3
|
-
}
|
|
1
|
+
import { Cookies } from "@eggjs/cookies";
|
|
2
|
+
export { Cookies };
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Cookies } from
|
|
2
|
-
|
|
3
|
-
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSFRUUENvb2tpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWwvSFRUUENvb2tpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sT0FBTyxXQUFZLFNBQVEsT0FBTztDQUFHIn0=
|
|
1
|
+
import { Cookies } from "@eggjs/cookies";
|
|
2
|
+
|
|
3
|
+
export { Cookies };
|