@hestjs/core 0.1.9 → 0.2.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 +93 -37
- package/dist/application/application-factory.d.ts +6 -1
- package/dist/application/application-factory.d.ts.map +1 -1
- package/dist/application/application-factory.js +33 -9
- package/dist/application/application-factory.js.map +1 -1
- package/dist/application/hest-application.d.ts +3 -22
- package/dist/application/hest-application.d.ts.map +1 -1
- package/dist/application/hest-application.js +4 -29
- package/dist/application/hest-application.js.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/interfaces/application.d.ts +2 -2
- package/dist/interfaces/application.d.ts.map +1 -1
- package/dist/router/router-explorer.d.ts +0 -20
- package/dist/router/router-explorer.d.ts.map +1 -1
- package/dist/router/router-explorer.js +11 -69
- package/dist/router/router-explorer.js.map +1 -1
- package/package.json +1 -1
- package/dist/exceptions/base-exception.d.ts +0 -20
- package/dist/exceptions/base-exception.d.ts.map +0 -1
- package/dist/exceptions/base-exception.js +0 -42
- package/dist/exceptions/base-exception.js.map +0 -1
- package/dist/exceptions/exception-filter.d.ts +0 -39
- package/dist/exceptions/exception-filter.d.ts.map +0 -1
- package/dist/exceptions/exception-filter.js +0 -69
- package/dist/exceptions/exception-filter.js.map +0 -1
- package/dist/exceptions/http-exception.d.ts +0 -40
- package/dist/exceptions/http-exception.d.ts.map +0 -1
- package/dist/exceptions/http-exception.js +0 -88
- package/dist/exceptions/http-exception.js.map +0 -1
- package/dist/exceptions/index.d.ts +0 -4
- package/dist/exceptions/index.d.ts.map +0 -1
- package/dist/exceptions/index.js +0 -20
- package/dist/exceptions/index.js.map +0 -1
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/index.d.ts.map +0 -1
- package/dist/interceptors/index.js +0 -18
- package/dist/interceptors/index.js.map +0 -1
- package/dist/interceptors/interceptor.d.ts +0 -82
- package/dist/interceptors/interceptor.d.ts.map +0 -1
- package/dist/interceptors/interceptor.js +0 -120
- package/dist/interceptors/interceptor.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"router-explorer.js","sourceRoot":"","sources":["../../src/router/router-explorer.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;
|
1
|
+
{"version":3,"file":"router-explorer.js","sourceRoot":"","sources":["../../src/router/router-explorer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,20 +0,0 @@
|
|
1
|
-
import type { ContentfulStatusCode } from 'hono/utils/http-status';
|
2
|
-
/**
|
3
|
-
* 基础异常类
|
4
|
-
*/
|
5
|
-
export declare abstract class BaseException extends Error {
|
6
|
-
readonly status: ContentfulStatusCode;
|
7
|
-
readonly error: string;
|
8
|
-
readonly timestamp: Date;
|
9
|
-
readonly path?: string;
|
10
|
-
constructor(message: string, status?: ContentfulStatusCode, error?: string);
|
11
|
-
/**
|
12
|
-
* 获取异常响应对象
|
13
|
-
*/
|
14
|
-
getResponse(): Record<string, any>;
|
15
|
-
/**
|
16
|
-
* 设置请求路径
|
17
|
-
*/
|
18
|
-
setPath(path: string): this;
|
19
|
-
}
|
20
|
-
//# sourceMappingURL=base-exception.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"base-exception.d.ts","sourceRoot":"","sources":["../../src/exceptions/base-exception.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE;;GAEG;AACH,8BAAsB,aAAc,SAAQ,KAAK;aAM7B,MAAM,EAAE,oBAAoB;aAC5B,KAAK,EAAE,MAAM;IAN/B,SAAgB,SAAS,EAAE,IAAI,CAAC;IAChC,SAAgB,IAAI,CAAC,EAAE,MAAM,CAAC;gBAG5B,OAAO,EAAE,MAAM,EACC,MAAM,GAAE,oBAA0B,EAClC,KAAK,GAAE,MAAgC;IAUzD;;OAEG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAUlC;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAI5B"}
|
@@ -1,42 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.BaseException = void 0;
|
4
|
-
/**
|
5
|
-
* 基础异常类
|
6
|
-
*/
|
7
|
-
class BaseException extends Error {
|
8
|
-
status;
|
9
|
-
error;
|
10
|
-
timestamp;
|
11
|
-
path;
|
12
|
-
constructor(message, status = 500, error = 'Internal Server Error') {
|
13
|
-
super(message);
|
14
|
-
this.status = status;
|
15
|
-
this.error = error;
|
16
|
-
this.name = this.constructor.name;
|
17
|
-
this.timestamp = new Date();
|
18
|
-
// 确保异常堆栈正确
|
19
|
-
Error.captureStackTrace(this, this.constructor);
|
20
|
-
}
|
21
|
-
/**
|
22
|
-
* 获取异常响应对象
|
23
|
-
*/
|
24
|
-
getResponse() {
|
25
|
-
return {
|
26
|
-
statusCode: this.status,
|
27
|
-
message: this.message,
|
28
|
-
error: this.error,
|
29
|
-
timestamp: this.timestamp.toISOString(),
|
30
|
-
path: this.path,
|
31
|
-
};
|
32
|
-
}
|
33
|
-
/**
|
34
|
-
* 设置请求路径
|
35
|
-
*/
|
36
|
-
setPath(path) {
|
37
|
-
this.path = path;
|
38
|
-
return this;
|
39
|
-
}
|
40
|
-
}
|
41
|
-
exports.BaseException = BaseException;
|
42
|
-
//# sourceMappingURL=base-exception.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"base-exception.js","sourceRoot":"","sources":["../../src/exceptions/base-exception.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,MAAsB,aAAc,SAAQ,KAAK;IAM7B;IACA;IANF,SAAS,CAAO;IAChB,IAAI,CAAU;IAE9B,YACE,OAAe,EACC,SAA+B,GAAG,EAClC,QAAgB,uBAAuB;QAEvD,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,WAAM,GAAN,MAAM,CAA4B;QAClC,UAAK,GAAL,KAAK,CAAkC;QAGvD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAE5B,WAAW;QACX,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,MAAM;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE;YACvC,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QACjB,IAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AArCD,sCAqCC"}
|
@@ -1,39 +0,0 @@
|
|
1
|
-
import type { Context } from "hono";
|
2
|
-
import { HttpException } from "./http-exception";
|
3
|
-
/**
|
4
|
-
* 异常过滤器接口
|
5
|
-
*/
|
6
|
-
export interface ExceptionFilter<T = any> {
|
7
|
-
catch(exception: T, host: ArgumentsHost): any;
|
8
|
-
}
|
9
|
-
/**
|
10
|
-
* 参数宿主接口
|
11
|
-
*/
|
12
|
-
export interface ArgumentsHost {
|
13
|
-
getContext(): Context;
|
14
|
-
getRequest(): any;
|
15
|
-
getResponse(): any;
|
16
|
-
}
|
17
|
-
/**
|
18
|
-
* 默认参数宿主实现
|
19
|
-
*/
|
20
|
-
export declare class DefaultArgumentsHost implements ArgumentsHost {
|
21
|
-
private readonly context;
|
22
|
-
constructor(context: Context);
|
23
|
-
getContext(): Context;
|
24
|
-
getRequest(): any;
|
25
|
-
getResponse(): any;
|
26
|
-
}
|
27
|
-
/**
|
28
|
-
* 默认全局异常过滤器
|
29
|
-
*/
|
30
|
-
export declare class DefaultExceptionFilter implements ExceptionFilter {
|
31
|
-
catch(exception: any, host: ArgumentsHost): any;
|
32
|
-
}
|
33
|
-
/**
|
34
|
-
* HTTP 异常过滤器
|
35
|
-
*/
|
36
|
-
export declare class HttpExceptionFilter implements ExceptionFilter<HttpException> {
|
37
|
-
catch(exception: HttpException, host: ArgumentsHost): any;
|
38
|
-
}
|
39
|
-
//# sourceMappingURL=exception-filter.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"exception-filter.d.ts","sourceRoot":"","sources":["../../src/exceptions/exception-filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,GAAG;IACtC,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,IAAI,OAAO,CAAC;IACtB,UAAU,IAAI,GAAG,CAAC;IAClB,WAAW,IAAI,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IAC5C,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,OAAO;IAE7C,UAAU,IAAI,OAAO;IAIrB,UAAU,IAAI,GAAG;IAIjB,WAAW,IAAI,GAAG;CAGnB;AAED;;GAEG;AACH,qBAAa,sBAAuB,YAAW,eAAe;IAC5D,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG;CA0BhD;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe,CAAC,aAAa,CAAC;IACxE,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG;CAY1D"}
|
@@ -1,69 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.HttpExceptionFilter = exports.DefaultExceptionFilter = exports.DefaultArgumentsHost = void 0;
|
4
|
-
const base_exception_1 = require("./base-exception");
|
5
|
-
/**
|
6
|
-
* 默认参数宿主实现
|
7
|
-
*/
|
8
|
-
class DefaultArgumentsHost {
|
9
|
-
context;
|
10
|
-
constructor(context) {
|
11
|
-
this.context = context;
|
12
|
-
}
|
13
|
-
getContext() {
|
14
|
-
return this.context;
|
15
|
-
}
|
16
|
-
getRequest() {
|
17
|
-
return this.context.req;
|
18
|
-
}
|
19
|
-
getResponse() {
|
20
|
-
return this.context;
|
21
|
-
}
|
22
|
-
}
|
23
|
-
exports.DefaultArgumentsHost = DefaultArgumentsHost;
|
24
|
-
/**
|
25
|
-
* 默认全局异常过滤器
|
26
|
-
*/
|
27
|
-
class DefaultExceptionFilter {
|
28
|
-
catch(exception, host) {
|
29
|
-
const ctx = host.getContext();
|
30
|
-
const request = host.getRequest();
|
31
|
-
let status = 500;
|
32
|
-
let response = {
|
33
|
-
statusCode: 500,
|
34
|
-
message: "Internal server error",
|
35
|
-
timestamp: new Date().toISOString(),
|
36
|
-
path: request.url,
|
37
|
-
};
|
38
|
-
if (exception instanceof base_exception_1.BaseException) {
|
39
|
-
status = exception.status;
|
40
|
-
response = exception.getResponse();
|
41
|
-
response.path = request.url;
|
42
|
-
}
|
43
|
-
else if (exception instanceof Error) {
|
44
|
-
response.message = exception.message;
|
45
|
-
response.stack = exception.stack;
|
46
|
-
}
|
47
|
-
// 记录错误日志
|
48
|
-
console.error(`Exception caught: ${exception.message}`, exception.stack);
|
49
|
-
return ctx.json(response, status);
|
50
|
-
}
|
51
|
-
}
|
52
|
-
exports.DefaultExceptionFilter = DefaultExceptionFilter;
|
53
|
-
/**
|
54
|
-
* HTTP 异常过滤器
|
55
|
-
*/
|
56
|
-
class HttpExceptionFilter {
|
57
|
-
catch(exception, host) {
|
58
|
-
const ctx = host.getContext();
|
59
|
-
const request = host.getRequest();
|
60
|
-
const status = exception.status;
|
61
|
-
const response = {
|
62
|
-
...exception.getResponse(),
|
63
|
-
path: request.url,
|
64
|
-
};
|
65
|
-
return ctx.json(response, status);
|
66
|
-
}
|
67
|
-
}
|
68
|
-
exports.HttpExceptionFilter = HttpExceptionFilter;
|
69
|
-
//# sourceMappingURL=exception-filter.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"exception-filter.js","sourceRoot":"","sources":["../../src/exceptions/exception-filter.ts"],"names":[],"mappings":";;;AACA,qDAAiD;AAmBjD;;GAEG;AACH,MAAa,oBAAoB;IACF;IAA7B,YAA6B,OAAgB;QAAhB,YAAO,GAAP,OAAO,CAAS;IAAG,CAAC;IAEjD,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IAC1B,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF;AAdD,oDAcC;AAED;;GAEG;AACH,MAAa,sBAAsB;IACjC,KAAK,CAAC,SAAc,EAAE,IAAmB;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,MAAM,GAAG,GAAG,CAAC;QACjB,IAAI,QAAQ,GAAQ;YAClB,UAAU,EAAE,GAAG;YACf,OAAO,EAAE,uBAAuB;YAChC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,IAAI,EAAE,OAAO,CAAC,GAAG;SAClB,CAAC;QAEF,IAAI,SAAS,YAAY,8BAAa,EAAE,CAAC;YACvC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;YAC1B,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;QAC9B,CAAC;aAAM,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YACtC,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;YACrC,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QACnC,CAAC;QAED,SAAS;QACT,OAAO,CAAC,KAAK,CAAC,qBAAqB,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QAEzE,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAa,CAAC,CAAC;IAC3C,CAAC;CACF;AA3BD,wDA2BC;AAED;;GAEG;AACH,MAAa,mBAAmB;IAC9B,KAAK,CAAC,SAAwB,EAAE,IAAmB;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAChC,MAAM,QAAQ,GAAG;YACf,GAAG,SAAS,CAAC,WAAW,EAAE;YAC1B,IAAI,EAAE,OAAO,CAAC,GAAG;SAClB,CAAC;QAEF,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAa,CAAC,CAAC;IAC3C,CAAC;CACF;AAbD,kDAaC"}
|
@@ -1,40 +0,0 @@
|
|
1
|
-
import { BaseException } from './base-exception';
|
2
|
-
import type { ContentfulStatusCode } from 'hono/utils/http-status';
|
3
|
-
/**
|
4
|
-
* HTTP 异常类
|
5
|
-
*/
|
6
|
-
export declare class HttpException extends BaseException {
|
7
|
-
constructor(response: string | Record<string, any>, status: ContentfulStatusCode, options?: {
|
8
|
-
cause?: Error;
|
9
|
-
description?: string;
|
10
|
-
});
|
11
|
-
/**
|
12
|
-
* 获取状态码对应的默认错误消息
|
13
|
-
*/
|
14
|
-
private static getDefaultMessage;
|
15
|
-
}
|
16
|
-
/**
|
17
|
-
* 常用 HTTP 异常类
|
18
|
-
*/
|
19
|
-
export declare class BadRequestException extends HttpException {
|
20
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
21
|
-
}
|
22
|
-
export declare class UnauthorizedException extends HttpException {
|
23
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
24
|
-
}
|
25
|
-
export declare class ForbiddenException extends HttpException {
|
26
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
27
|
-
}
|
28
|
-
export declare class NotFoundException extends HttpException {
|
29
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
30
|
-
}
|
31
|
-
export declare class ConflictException extends HttpException {
|
32
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
33
|
-
}
|
34
|
-
export declare class UnprocessableEntityException extends HttpException {
|
35
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
36
|
-
}
|
37
|
-
export declare class InternalServerErrorException extends HttpException {
|
38
|
-
constructor(message?: string | Record<string, any>, description?: string);
|
39
|
-
}
|
40
|
-
//# sourceMappingURL=http-exception.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"http-exception.d.ts","sourceRoot":"","sources":["../../src/exceptions/http-exception.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE;;GAEG;AACH,qBAAa,aAAc,SAAQ,aAAa;gBAE5C,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACtC,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAYnD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;CAqBjC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa;gBACxC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,qBAAsB,SAAQ,aAAa;gBAC1C,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,kBAAmB,SAAQ,aAAa;gBACvC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,iBAAkB,SAAQ,aAAa;gBACtC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,iBAAkB,SAAQ,aAAa;gBACtC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,4BAA6B,SAAQ,aAAa;gBACjD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE;AAED,qBAAa,4BAA6B,SAAQ,aAAa;gBACjD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM;CAGzE"}
|
@@ -1,88 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.InternalServerErrorException = exports.UnprocessableEntityException = exports.ConflictException = exports.NotFoundException = exports.ForbiddenException = exports.UnauthorizedException = exports.BadRequestException = exports.HttpException = void 0;
|
4
|
-
const base_exception_1 = require("./base-exception");
|
5
|
-
/**
|
6
|
-
* HTTP 异常类
|
7
|
-
*/
|
8
|
-
class HttpException extends base_exception_1.BaseException {
|
9
|
-
constructor(response, status, options) {
|
10
|
-
const message = typeof response === 'string' ? response : response.message || 'Http Exception';
|
11
|
-
const error = typeof response === 'string' ? HttpException.getDefaultMessage(status) : response.error;
|
12
|
-
super(message, status, error);
|
13
|
-
if (options?.cause) {
|
14
|
-
this.cause = options.cause;
|
15
|
-
}
|
16
|
-
}
|
17
|
-
/**
|
18
|
-
* 获取状态码对应的默认错误消息
|
19
|
-
*/
|
20
|
-
static getDefaultMessage(status) {
|
21
|
-
switch (status) {
|
22
|
-
case 400: return 'Bad Request';
|
23
|
-
case 401: return 'Unauthorized';
|
24
|
-
case 403: return 'Forbidden';
|
25
|
-
case 404: return 'Not Found';
|
26
|
-
case 405: return 'Method Not Allowed';
|
27
|
-
case 406: return 'Not Acceptable';
|
28
|
-
case 408: return 'Request Timeout';
|
29
|
-
case 409: return 'Conflict';
|
30
|
-
case 410: return 'Gone';
|
31
|
-
case 422: return 'Unprocessable Entity';
|
32
|
-
case 429: return 'Too Many Requests';
|
33
|
-
case 500: return 'Internal Server Error';
|
34
|
-
case 501: return 'Not Implemented';
|
35
|
-
case 502: return 'Bad Gateway';
|
36
|
-
case 503: return 'Service Unavailable';
|
37
|
-
case 504: return 'Gateway Timeout';
|
38
|
-
default: return 'Error';
|
39
|
-
}
|
40
|
-
}
|
41
|
-
}
|
42
|
-
exports.HttpException = HttpException;
|
43
|
-
/**
|
44
|
-
* 常用 HTTP 异常类
|
45
|
-
*/
|
46
|
-
class BadRequestException extends HttpException {
|
47
|
-
constructor(message, description) {
|
48
|
-
super(message || 'Bad Request', 400, { description });
|
49
|
-
}
|
50
|
-
}
|
51
|
-
exports.BadRequestException = BadRequestException;
|
52
|
-
class UnauthorizedException extends HttpException {
|
53
|
-
constructor(message, description) {
|
54
|
-
super(message || 'Unauthorized', 401, { description });
|
55
|
-
}
|
56
|
-
}
|
57
|
-
exports.UnauthorizedException = UnauthorizedException;
|
58
|
-
class ForbiddenException extends HttpException {
|
59
|
-
constructor(message, description) {
|
60
|
-
super(message || 'Forbidden', 403, { description });
|
61
|
-
}
|
62
|
-
}
|
63
|
-
exports.ForbiddenException = ForbiddenException;
|
64
|
-
class NotFoundException extends HttpException {
|
65
|
-
constructor(message, description) {
|
66
|
-
super(message || 'Not Found', 404, { description });
|
67
|
-
}
|
68
|
-
}
|
69
|
-
exports.NotFoundException = NotFoundException;
|
70
|
-
class ConflictException extends HttpException {
|
71
|
-
constructor(message, description) {
|
72
|
-
super(message || 'Conflict', 409, { description });
|
73
|
-
}
|
74
|
-
}
|
75
|
-
exports.ConflictException = ConflictException;
|
76
|
-
class UnprocessableEntityException extends HttpException {
|
77
|
-
constructor(message, description) {
|
78
|
-
super(message || 'Unprocessable Entity', 422, { description });
|
79
|
-
}
|
80
|
-
}
|
81
|
-
exports.UnprocessableEntityException = UnprocessableEntityException;
|
82
|
-
class InternalServerErrorException extends HttpException {
|
83
|
-
constructor(message, description) {
|
84
|
-
super(message || 'Internal Server Error', 500, { description });
|
85
|
-
}
|
86
|
-
}
|
87
|
-
exports.InternalServerErrorException = InternalServerErrorException;
|
88
|
-
//# sourceMappingURL=http-exception.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"http-exception.js","sourceRoot":"","sources":["../../src/exceptions/http-exception.ts"],"names":[],"mappings":"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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/exceptions/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC"}
|
package/dist/exceptions/index.js
DELETED
@@ -1,20 +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
|
-
__exportStar(require("./base-exception"), exports);
|
18
|
-
__exportStar(require("./http-exception"), exports);
|
19
|
-
__exportStar(require("./exception-filter"), exports);
|
20
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exceptions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,mDAAiC;AACjC,qDAAmC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interceptors/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
@@ -1,18 +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
|
-
__exportStar(require("./interceptor"), exports);
|
18
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interceptors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
|
@@ -1,82 +0,0 @@
|
|
1
|
-
import type { Context } from "hono";
|
2
|
-
/**
|
3
|
-
* 可观察对象接口(简化版)
|
4
|
-
*/
|
5
|
-
export interface Observable<T> {
|
6
|
-
subscribe(observer: (value: T) => void): void;
|
7
|
-
}
|
8
|
-
/**
|
9
|
-
* 执行上下文接口
|
10
|
-
*/
|
11
|
-
export interface ExecutionContext {
|
12
|
-
getClass(): any;
|
13
|
-
getHandler(): any;
|
14
|
-
getArgs(): any[];
|
15
|
-
getArgByIndex<T = any>(index: number): T;
|
16
|
-
switchToHttp(): HttpArgumentsHost;
|
17
|
-
}
|
18
|
-
/**
|
19
|
-
* HTTP 参数宿主接口
|
20
|
-
*/
|
21
|
-
export interface HttpArgumentsHost {
|
22
|
-
getRequest(): any;
|
23
|
-
getResponse(): any;
|
24
|
-
getNext?(): any;
|
25
|
-
}
|
26
|
-
/**
|
27
|
-
* 调用处理器接口
|
28
|
-
*/
|
29
|
-
export interface CallHandler<T = any> {
|
30
|
-
handle(): Observable<T> | Promise<T>;
|
31
|
-
}
|
32
|
-
/**
|
33
|
-
* 拦截器接口
|
34
|
-
*/
|
35
|
-
export interface Interceptor<T = any, R = any> {
|
36
|
-
intercept(context: ExecutionContext, next: CallHandler<T>): Observable<R> | Promise<Observable<R>> | Promise<R>;
|
37
|
-
}
|
38
|
-
/**
|
39
|
-
* 默认执行上下文实现
|
40
|
-
*/
|
41
|
-
export declare class DefaultExecutionContext implements ExecutionContext {
|
42
|
-
private readonly classRef;
|
43
|
-
private readonly handler;
|
44
|
-
private readonly args;
|
45
|
-
private readonly httpContext;
|
46
|
-
constructor(classRef: any, handler: any, args: any[], httpContext: Context);
|
47
|
-
getClass(): any;
|
48
|
-
getHandler(): any;
|
49
|
-
getArgs(): any[];
|
50
|
-
getArgByIndex<T = any>(index: number): T;
|
51
|
-
switchToHttp(): HttpArgumentsHost;
|
52
|
-
}
|
53
|
-
/**
|
54
|
-
* 默认调用处理器实现
|
55
|
-
*/
|
56
|
-
export declare class DefaultCallHandler<T = any> implements CallHandler<T> {
|
57
|
-
private readonly handler;
|
58
|
-
constructor(handler: () => Promise<T> | T);
|
59
|
-
handle(): Promise<T>;
|
60
|
-
}
|
61
|
-
/**
|
62
|
-
* 简单的 Observable 实现
|
63
|
-
*/
|
64
|
-
export declare class SimpleObservable<T> implements Observable<T> {
|
65
|
-
private readonly promise;
|
66
|
-
constructor(promise: Promise<T>);
|
67
|
-
subscribe(observer: (value: T) => void): void;
|
68
|
-
static from<T>(promise: Promise<T>): SimpleObservable<T>;
|
69
|
-
}
|
70
|
-
/**
|
71
|
-
* 响应拦截器示例
|
72
|
-
*/
|
73
|
-
export declare class ResponseInterceptor implements Interceptor {
|
74
|
-
intercept(context: ExecutionContext, next: CallHandler): Promise<any>;
|
75
|
-
}
|
76
|
-
/**
|
77
|
-
* 日志拦截器示例
|
78
|
-
*/
|
79
|
-
export declare class LoggingInterceptor implements Interceptor {
|
80
|
-
intercept(context: ExecutionContext, next: CallHandler): Promise<any>;
|
81
|
-
}
|
82
|
-
//# sourceMappingURL=interceptor.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../src/interceptors/interceptor.ts"],"names":[],"mappings":"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"}
|
@@ -1,120 +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.LoggingInterceptor = exports.ResponseInterceptor = exports.SimpleObservable = exports.DefaultCallHandler = exports.DefaultExecutionContext = void 0;
|
10
|
-
const logger_1 = require("@hestjs/logger");
|
11
|
-
const injectable_1 = require("../decorators/injectable");
|
12
|
-
const log = (0, logger_1.createLogger)("HestInterceptor");
|
13
|
-
/**
|
14
|
-
* 默认执行上下文实现
|
15
|
-
*/
|
16
|
-
class DefaultExecutionContext {
|
17
|
-
classRef;
|
18
|
-
handler;
|
19
|
-
args;
|
20
|
-
httpContext;
|
21
|
-
constructor(classRef, handler, args, httpContext) {
|
22
|
-
this.classRef = classRef;
|
23
|
-
this.handler = handler;
|
24
|
-
this.args = args;
|
25
|
-
this.httpContext = httpContext;
|
26
|
-
}
|
27
|
-
getClass() {
|
28
|
-
return this.classRef;
|
29
|
-
}
|
30
|
-
getHandler() {
|
31
|
-
return this.handler;
|
32
|
-
}
|
33
|
-
getArgs() {
|
34
|
-
return this.args;
|
35
|
-
}
|
36
|
-
getArgByIndex(index) {
|
37
|
-
return this.args[index];
|
38
|
-
}
|
39
|
-
switchToHttp() {
|
40
|
-
return {
|
41
|
-
getRequest: () => this.httpContext.req,
|
42
|
-
getResponse: () => this.httpContext,
|
43
|
-
};
|
44
|
-
}
|
45
|
-
}
|
46
|
-
exports.DefaultExecutionContext = DefaultExecutionContext;
|
47
|
-
/**
|
48
|
-
* 默认调用处理器实现
|
49
|
-
*/
|
50
|
-
class DefaultCallHandler {
|
51
|
-
handler;
|
52
|
-
constructor(handler) {
|
53
|
-
this.handler = handler;
|
54
|
-
}
|
55
|
-
async handle() {
|
56
|
-
return await this.handler();
|
57
|
-
}
|
58
|
-
}
|
59
|
-
exports.DefaultCallHandler = DefaultCallHandler;
|
60
|
-
/**
|
61
|
-
* 简单的 Observable 实现
|
62
|
-
*/
|
63
|
-
class SimpleObservable {
|
64
|
-
promise;
|
65
|
-
constructor(promise) {
|
66
|
-
this.promise = promise;
|
67
|
-
}
|
68
|
-
subscribe(observer) {
|
69
|
-
this.promise.then(observer).catch(console.error);
|
70
|
-
}
|
71
|
-
static from(promise) {
|
72
|
-
return new SimpleObservable(promise);
|
73
|
-
}
|
74
|
-
}
|
75
|
-
exports.SimpleObservable = SimpleObservable;
|
76
|
-
/**
|
77
|
-
* 响应拦截器示例
|
78
|
-
*/
|
79
|
-
let ResponseInterceptor = class ResponseInterceptor {
|
80
|
-
async intercept(context, next) {
|
81
|
-
const start = Date.now();
|
82
|
-
const result = await next.handle();
|
83
|
-
const duration = Date.now() - start;
|
84
|
-
// 包装响应
|
85
|
-
return {
|
86
|
-
success: true,
|
87
|
-
data: result,
|
88
|
-
timestamp: new Date().toISOString(),
|
89
|
-
duration: `${duration}ms`,
|
90
|
-
};
|
91
|
-
}
|
92
|
-
};
|
93
|
-
exports.ResponseInterceptor = ResponseInterceptor;
|
94
|
-
exports.ResponseInterceptor = ResponseInterceptor = __decorate([
|
95
|
-
(0, injectable_1.Injectable)()
|
96
|
-
], ResponseInterceptor);
|
97
|
-
/**
|
98
|
-
* 日志拦截器示例
|
99
|
-
*/
|
100
|
-
let LoggingInterceptor = class LoggingInterceptor {
|
101
|
-
async intercept(context, next) {
|
102
|
-
const request = context.switchToHttp().getRequest();
|
103
|
-
const startTime = Date.now();
|
104
|
-
try {
|
105
|
-
const result = await next.handle();
|
106
|
-
const duration = Date.now() - startTime;
|
107
|
-
return result;
|
108
|
-
}
|
109
|
-
catch (error) {
|
110
|
-
const duration = Date.now() - startTime;
|
111
|
-
log.error(`📝 [${new Date().toISOString()}] ${request.method} ${request.url} - ${duration}ms - ERROR:`, error);
|
112
|
-
throw error;
|
113
|
-
}
|
114
|
-
}
|
115
|
-
};
|
116
|
-
exports.LoggingInterceptor = LoggingInterceptor;
|
117
|
-
exports.LoggingInterceptor = LoggingInterceptor = __decorate([
|
118
|
-
(0, injectable_1.Injectable)()
|
119
|
-
], LoggingInterceptor);
|
120
|
-
//# sourceMappingURL=interceptor.js.map
|