@spinajs/http 2.0.355 → 2.0.358
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/lib/cjs/controllers.d.ts +6 -4
- package/lib/cjs/controllers.d.ts.map +1 -1
- package/lib/cjs/controllers.js +78 -3
- package/lib/cjs/controllers.js.map +1 -1
- package/lib/cjs/route-args/ArgAsRequest.d.ts +1 -1
- package/lib/cjs/route-args/ArgAsRequest.d.ts.map +1 -1
- package/lib/cjs/route-args/ArgAsRequest.js +1 -1
- package/lib/cjs/route-args/ArgAsRequest.js.map +1 -1
- package/lib/cjs/route-args/ArgAsResponse.d.ts +1 -1
- package/lib/cjs/route-args/ArgAsResponse.d.ts.map +1 -1
- package/lib/cjs/route-args/ArgAsResponse.js +1 -1
- package/lib/cjs/route-args/ArgAsResponse.js.map +1 -1
- package/lib/cjs/route-args/FromBody.d.ts +1 -1
- package/lib/cjs/route-args/FromBody.d.ts.map +1 -1
- package/lib/cjs/route-args/FromBody.js +1 -1
- package/lib/cjs/route-args/FromBody.js.map +1 -1
- package/lib/cjs/route-args/FromCookie.d.ts +1 -1
- package/lib/cjs/route-args/FromCookie.d.ts.map +1 -1
- package/lib/cjs/route-args/FromCookie.js +1 -1
- package/lib/cjs/route-args/FromCookie.js.map +1 -1
- package/lib/cjs/route-args/FromDi.d.ts +1 -1
- package/lib/cjs/route-args/FromDi.d.ts.map +1 -1
- package/lib/cjs/route-args/FromDi.js +1 -1
- package/lib/cjs/route-args/FromDi.js.map +1 -1
- package/lib/cjs/route-args/FromForm.d.ts +6 -6
- package/lib/cjs/route-args/FromForm.d.ts.map +1 -1
- package/lib/cjs/route-args/FromForm.js +11 -11
- package/lib/cjs/route-args/FromForm.js.map +1 -1
- package/lib/cjs/route-args/FromHeaderArg.d.ts +1 -1
- package/lib/cjs/route-args/FromHeaderArg.d.ts.map +1 -1
- package/lib/cjs/route-args/FromHeaderArg.js +1 -1
- package/lib/cjs/route-args/FromHeaderArg.js.map +1 -1
- package/lib/cjs/route-args/FromParams.d.ts +1 -1
- package/lib/cjs/route-args/FromParams.d.ts.map +1 -1
- package/lib/cjs/route-args/FromParams.js +1 -1
- package/lib/cjs/route-args/FromParams.js.map +1 -1
- package/lib/cjs/route-args/FromQuery.d.ts +1 -1
- package/lib/cjs/route-args/FromQuery.d.ts.map +1 -1
- package/lib/cjs/route-args/FromQuery.js +1 -1
- package/lib/cjs/route-args/FromQuery.js.map +1 -1
- package/lib/cjs/route-args/RequestFields.d.ts +5 -5
- package/lib/cjs/route-args/RequestFields.d.ts.map +1 -1
- package/lib/cjs/route-args/RequestFields.js +5 -5
- package/lib/cjs/route-args/RequestFields.js.map +1 -1
- package/lib/cjs/route-args/RouteArgs.d.ts +2 -2
- package/lib/cjs/route-args/RouteArgs.d.ts.map +1 -1
- package/lib/cjs/server.d.ts +0 -8
- package/lib/cjs/server.d.ts.map +1 -1
- package/lib/cjs/server.js +0 -91
- package/lib/cjs/server.js.map +1 -1
- package/lib/mjs/controllers.d.ts +6 -4
- package/lib/mjs/controllers.d.ts.map +1 -1
- package/lib/mjs/controllers.js +80 -5
- package/lib/mjs/controllers.js.map +1 -1
- package/lib/mjs/route-args/ArgAsRequest.d.ts +1 -1
- package/lib/mjs/route-args/ArgAsRequest.d.ts.map +1 -1
- package/lib/mjs/route-args/ArgAsRequest.js +1 -1
- package/lib/mjs/route-args/ArgAsRequest.js.map +1 -1
- package/lib/mjs/route-args/ArgAsResponse.d.ts +1 -1
- package/lib/mjs/route-args/ArgAsResponse.d.ts.map +1 -1
- package/lib/mjs/route-args/ArgAsResponse.js +1 -1
- package/lib/mjs/route-args/ArgAsResponse.js.map +1 -1
- package/lib/mjs/route-args/FromBody.d.ts +1 -1
- package/lib/mjs/route-args/FromBody.d.ts.map +1 -1
- package/lib/mjs/route-args/FromBody.js +1 -1
- package/lib/mjs/route-args/FromBody.js.map +1 -1
- package/lib/mjs/route-args/FromCookie.d.ts +1 -1
- package/lib/mjs/route-args/FromCookie.d.ts.map +1 -1
- package/lib/mjs/route-args/FromCookie.js +1 -1
- package/lib/mjs/route-args/FromCookie.js.map +1 -1
- package/lib/mjs/route-args/FromDi.d.ts +1 -1
- package/lib/mjs/route-args/FromDi.d.ts.map +1 -1
- package/lib/mjs/route-args/FromDi.js +1 -1
- package/lib/mjs/route-args/FromDi.js.map +1 -1
- package/lib/mjs/route-args/FromForm.d.ts +6 -6
- package/lib/mjs/route-args/FromForm.d.ts.map +1 -1
- package/lib/mjs/route-args/FromForm.js +11 -11
- package/lib/mjs/route-args/FromForm.js.map +1 -1
- package/lib/mjs/route-args/FromHeaderArg.d.ts +1 -1
- package/lib/mjs/route-args/FromHeaderArg.d.ts.map +1 -1
- package/lib/mjs/route-args/FromHeaderArg.js +1 -1
- package/lib/mjs/route-args/FromHeaderArg.js.map +1 -1
- package/lib/mjs/route-args/FromParams.d.ts +1 -1
- package/lib/mjs/route-args/FromParams.d.ts.map +1 -1
- package/lib/mjs/route-args/FromParams.js +1 -1
- package/lib/mjs/route-args/FromParams.js.map +1 -1
- package/lib/mjs/route-args/FromQuery.d.ts +1 -1
- package/lib/mjs/route-args/FromQuery.d.ts.map +1 -1
- package/lib/mjs/route-args/FromQuery.js +1 -1
- package/lib/mjs/route-args/FromQuery.js.map +1 -1
- package/lib/mjs/route-args/RequestFields.d.ts +5 -5
- package/lib/mjs/route-args/RequestFields.d.ts.map +1 -1
- package/lib/mjs/route-args/RequestFields.js +5 -5
- package/lib/mjs/route-args/RequestFields.js.map +1 -1
- package/lib/mjs/route-args/RouteArgs.d.ts +2 -2
- package/lib/mjs/route-args/RouteArgs.d.ts.map +1 -1
- package/lib/mjs/server.d.ts +0 -8
- package/lib/mjs/server.d.ts.map +1 -1
- package/lib/mjs/server.js +1 -92
- package/lib/mjs/server.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +11 -11
|
@@ -4,7 +4,7 @@ import { IRouteParameter, ParameterType, IRouteCall, IRoute } from '../interface
|
|
|
4
4
|
import * as express from 'express';
|
|
5
5
|
export declare class FromParams extends RouteArgs {
|
|
6
6
|
get SupportedType(): ParameterType;
|
|
7
|
-
extract(callData: IRouteCall, param: IRouteParameter, req: express.Request, _res: express.Response, route: IRoute): Promise<{
|
|
7
|
+
extract(callData: IRouteCall, _args: unknown[], param: IRouteParameter, req: express.Request, _res: express.Response, route: IRoute): Promise<{
|
|
8
8
|
CallData: {
|
|
9
9
|
Payload: {
|
|
10
10
|
Param: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FromParams.d.ts","sourceRoot":"","sources":["../../../src/route-args/FromParams.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,qBACa,UAAW,SAAQ,SAAS;IACvC,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"FromParams.d.ts","sourceRoot":"","sources":["../../../src/route-args/FromParams.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,qBACa,UAAW,SAAQ,SAAS;IACvC,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAC,KAAK,EAAG,OAAO,EAAG,EAAG,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM;;;;;;;;;;;;CA0BnJ"}
|
|
@@ -14,7 +14,7 @@ let FromParams = class FromParams extends RouteArgs_js_1.RouteArgs {
|
|
|
14
14
|
get SupportedType() {
|
|
15
15
|
return interfaces_js_1.ParameterType.FromParams;
|
|
16
16
|
}
|
|
17
|
-
async extract(callData, param, req, _res, route) {
|
|
17
|
+
async extract(callData, _args, param, req, _res, route) {
|
|
18
18
|
('');
|
|
19
19
|
// some framework route-args functions use _ prefix to make linter happy
|
|
20
20
|
// eg. orm-http uses include param for automatic inlude relations with @FromModel() decorator
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FromParams.js","sourceRoot":"","sources":["../../../src/route-args/FromParams.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAA2C;AAC3C,oDAAsF;AAEtF,oCAAyC;AAGlC,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,wBAAS;IACvC,IAAW,aAAa;QACtB,OAAO,6BAAa,CAAC,UAAU,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,
|
|
1
|
+
{"version":3,"file":"FromParams.js","sourceRoot":"","sources":["../../../src/route-args/FromParams.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAA2C;AAC3C,oDAAsF;AAEtF,oCAAyC;AAGlC,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,wBAAS;IACvC,IAAW,aAAa;QACtB,OAAO,6BAAa,CAAC,UAAU,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,EAAC,KAAkB,EAAG,KAAsB,EAAE,GAAoB,EAAE,IAAsB,EAAE,KAAa;QAChJ,CAAC,EAAE,CAAC,CAAC;QAEL,wEAAwE;QACxE,6FAA6F;QAC7F,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACzI,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAEvB,OAAO;YACL,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBAEX,2CAA2C;gBAC3C,OAAO,EAAE;oBACP,KAAK,EAAE;wBACL,IAAI,EAAE,GAAG;qBACV;iBACF;aACF;YAED,uBAAuB;YACvB,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;CACF,CAAA;AA/BY,gCAAU;qBAAV,UAAU;IADtB,IAAA,eAAU,GAAE;GACA,UAAU,CA+BtB"}
|
|
@@ -4,7 +4,7 @@ import { IRouteParameter, ParameterType, IRouteCall, IRoute } from '../interface
|
|
|
4
4
|
import * as express from 'express';
|
|
5
5
|
export declare class FromQuery extends RouteArgs {
|
|
6
6
|
get SupportedType(): ParameterType;
|
|
7
|
-
extract(callData: IRouteCall, param: IRouteParameter, req: express.Request, _res: express.Response, route: IRoute): Promise<{
|
|
7
|
+
extract(callData: IRouteCall, _args: unknown[], param: IRouteParameter, req: express.Request, _res: express.Response, route: IRoute): Promise<{
|
|
8
8
|
CallData: {
|
|
9
9
|
Payload: {
|
|
10
10
|
Query: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FromQuery.d.ts","sourceRoot":"","sources":["../../../src/route-args/FromQuery.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,qBACa,SAAU,SAAQ,SAAS;IACtC,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"FromQuery.d.ts","sourceRoot":"","sources":["../../../src/route-args/FromQuery.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,qBACa,SAAU,SAAQ,SAAS;IACtC,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAC,KAAK,EAAG,OAAO,EAAG,EAAG,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM;;;;;;;;;;;;CAyBnJ"}
|
|
@@ -14,7 +14,7 @@ let FromQuery = class FromQuery extends RouteArgs_js_1.RouteArgs {
|
|
|
14
14
|
get SupportedType() {
|
|
15
15
|
return interfaces_js_1.ParameterType.FromQuery;
|
|
16
16
|
}
|
|
17
|
-
async extract(callData, param, req, _res, route) {
|
|
17
|
+
async extract(callData, _args, param, req, _res, route) {
|
|
18
18
|
// some framework route-args functions use _ prefix to make linter happy
|
|
19
19
|
// eg. orm-http uses include param for automatic inlude relations with @FromModel() decorator
|
|
20
20
|
const qArg = req.query[param.Name] ?? (param.Name.startsWith('_') ? req.query[param.Name.substring(1, param.Name.length)] : undefined);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FromQuery.js","sourceRoot":"","sources":["../../../src/route-args/FromQuery.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAA2C;AAC3C,oDAAsF;AAEtF,oCAAyC;AAIlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,wBAAS;IACtC,IAAW,aAAa;QACtB,OAAO,6BAAa,CAAC,SAAS,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,
|
|
1
|
+
{"version":3,"file":"FromQuery.js","sourceRoot":"","sources":["../../../src/route-args/FromQuery.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAA2C;AAC3C,oDAAsF;AAEtF,oCAAyC;AAIlC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,wBAAS;IACtC,IAAW,aAAa;QACtB,OAAO,6BAAa,CAAC,SAAS,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,EAAC,KAAkB,EAAG,KAAsB,EAAE,GAAoB,EAAE,IAAsB,EAAE,KAAa;QAChJ,wEAAwE;QACxE,6FAA6F;QAC7F,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACvI,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,IAAI,GAA2B,EAAE,CAAC;QAExC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAExB,OAAO;YACL,QAAQ,EAAE;gBACR,GAAG,QAAQ;gBAEX,2CAA2C;gBAC3C,OAAO,EAAE;oBACP,KAAK,EAAE;wBACL,IAAI,EAAE,IAAI;qBACX;iBACF;aACF;YAED,uBAAuB;YACvB,IAAI,EAAE,IAAI;SACX,CAAC;IACJ,CAAC;CACF,CAAA;AA9BY,8BAAS;oBAAT,SAAS;IADrB,IAAA,eAAU,GAAE;GACA,SAAS,CA8BrB"}
|
|
@@ -6,35 +6,35 @@ import { IRouteParameter, ParameterType, IRouteCall, IRoute, HttpAcceptHeaders }
|
|
|
6
6
|
import * as express from 'express';
|
|
7
7
|
export declare class BodyFieldRouteArgs extends RouteArgs {
|
|
8
8
|
get SupportedType(): ParameterType;
|
|
9
|
-
extract(callData: IRouteCall, _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
9
|
+
extract(callData: IRouteCall, _args: unknown[], _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
10
10
|
CallData: IRouteCall;
|
|
11
11
|
Args: any;
|
|
12
12
|
}>;
|
|
13
13
|
}
|
|
14
14
|
export declare class RequestTypeRouteArgs extends RouteArgs {
|
|
15
15
|
get SupportedType(): ParameterType;
|
|
16
|
-
extract(callData: IRouteCall, _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
16
|
+
extract(callData: IRouteCall, _args: unknown[], _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
17
17
|
CallData: IRouteCall;
|
|
18
18
|
Args: HttpAcceptHeaders.JSON | HttpAcceptHeaders.HTML | HttpAcceptHeaders.IMAGE | HttpAcceptHeaders.PDF | HttpAcceptHeaders.OTHER;
|
|
19
19
|
}>;
|
|
20
20
|
}
|
|
21
21
|
export declare class QueryFieldRouteArg extends RouteArgs {
|
|
22
22
|
get SupportedType(): ParameterType;
|
|
23
|
-
extract(callData: IRouteCall, _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
23
|
+
extract(callData: IRouteCall, _args: unknown[], _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
24
24
|
CallData: IRouteCall;
|
|
25
25
|
Args: import("qs").ParsedQs;
|
|
26
26
|
}>;
|
|
27
27
|
}
|
|
28
28
|
export declare class HeadersFieldRouteArg extends RouteArgs {
|
|
29
29
|
get SupportedType(): ParameterType;
|
|
30
|
-
extract(callData: IRouteCall, _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
30
|
+
extract(callData: IRouteCall, _args: unknown[], _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
31
31
|
CallData: IRouteCall;
|
|
32
32
|
Args: import("http").IncomingHttpHeaders;
|
|
33
33
|
}>;
|
|
34
34
|
}
|
|
35
35
|
export declare class ParamFieldRouteArg extends RouteArgs {
|
|
36
36
|
get SupportedType(): ParameterType;
|
|
37
|
-
extract(callData: IRouteCall, _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
37
|
+
extract(callData: IRouteCall, _args: unknown[], _param: IRouteParameter, req: express.Request, _res: express.Response, _route: IRoute): Promise<{
|
|
38
38
|
CallData: IRouteCall;
|
|
39
39
|
Args: import("express-serve-static-core").ParamsDictionary;
|
|
40
40
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestFields.d.ts","sourceRoot":"","sources":["../../../src/route-args/RequestFields.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,qBACa,kBAAmB,SAAQ,SAAS;IAC/C,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"RequestFields.d.ts","sourceRoot":"","sources":["../../../src/route-args/RequestFields.ts"],"names":[],"mappings":";;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzG,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC,qBACa,kBAAmB,SAAQ,SAAS;IAC/C,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAC,KAAK,EAAG,OAAO,EAAG,EAAG,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;CAMrJ;AAED,qBACa,oBAAqB,SAAQ,SAAS;IACjD,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAC,KAAK,EAAG,OAAO,EAAG,EAAG,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;CA+BrJ;AAED,qBACa,kBAAmB,SAAQ,SAAS;IAC/C,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAG,OAAO,EAAG,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;CAMrJ;AAED,qBACa,oBAAqB,SAAQ,SAAS;IACjD,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAC,KAAK,EAAG,OAAO,EAAG,EAAG,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;CAMrJ;AAED,qBACa,kBAAmB,SAAQ,SAAS;IAC/C,IAAW,aAAa,IAAI,aAAa,CAExC;IAEY,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAG,OAAO,EAAG,EAAG,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM;;;;CAMtJ"}
|
|
@@ -14,7 +14,7 @@ let BodyFieldRouteArgs = class BodyFieldRouteArgs extends RouteArgs_js_1.RouteAr
|
|
|
14
14
|
get SupportedType() {
|
|
15
15
|
return interfaces_js_1.ParameterType.BodyField;
|
|
16
16
|
}
|
|
17
|
-
async extract(callData, _param, req, _res, _route) {
|
|
17
|
+
async extract(callData, _args, _param, req, _res, _route) {
|
|
18
18
|
return {
|
|
19
19
|
CallData: callData,
|
|
20
20
|
Args: req.body,
|
|
@@ -29,7 +29,7 @@ let RequestTypeRouteArgs = class RequestTypeRouteArgs extends RouteArgs_js_1.Rou
|
|
|
29
29
|
get SupportedType() {
|
|
30
30
|
return interfaces_js_1.ParameterType.Other;
|
|
31
31
|
}
|
|
32
|
-
async extract(callData, _param, req, _res, _route) {
|
|
32
|
+
async extract(callData, _args, _param, req, _res, _route) {
|
|
33
33
|
let acceptHeader = interfaces_js_1.HttpAcceptHeaders.ALL;
|
|
34
34
|
switch (req.headers.accept.toLowerCase()) {
|
|
35
35
|
case 'text/*':
|
|
@@ -67,7 +67,7 @@ let QueryFieldRouteArg = class QueryFieldRouteArg extends RouteArgs_js_1.RouteAr
|
|
|
67
67
|
get SupportedType() {
|
|
68
68
|
return interfaces_js_1.ParameterType.QueryField;
|
|
69
69
|
}
|
|
70
|
-
async extract(callData, _param, req, _res, _route) {
|
|
70
|
+
async extract(callData, _args, _param, req, _res, _route) {
|
|
71
71
|
return {
|
|
72
72
|
CallData: callData,
|
|
73
73
|
Args: req.query,
|
|
@@ -82,7 +82,7 @@ let HeadersFieldRouteArg = class HeadersFieldRouteArg extends RouteArgs_js_1.Rou
|
|
|
82
82
|
get SupportedType() {
|
|
83
83
|
return interfaces_js_1.ParameterType.Headers;
|
|
84
84
|
}
|
|
85
|
-
async extract(callData, _param, req, _res, _route) {
|
|
85
|
+
async extract(callData, _args, _param, req, _res, _route) {
|
|
86
86
|
return {
|
|
87
87
|
CallData: callData,
|
|
88
88
|
Args: req.headers,
|
|
@@ -97,7 +97,7 @@ let ParamFieldRouteArg = class ParamFieldRouteArg extends RouteArgs_js_1.RouteAr
|
|
|
97
97
|
get SupportedType() {
|
|
98
98
|
return interfaces_js_1.ParameterType.ParamField;
|
|
99
99
|
}
|
|
100
|
-
async extract(callData, _param, req, _res, _route) {
|
|
100
|
+
async extract(callData, _args, _param, req, _res, _route) {
|
|
101
101
|
return {
|
|
102
102
|
CallData: callData,
|
|
103
103
|
Args: req.params,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RequestFields.js","sourceRoot":"","sources":["../../../src/route-args/RequestFields.ts"],"names":[],"mappings":";;;;;;;;;AAAA,iDAA2C;AAC3C,oDAAyG;AAEzG,oCAAyC;AAIlC,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,wBAAS;IAC/C,IAAW,aAAa;QACtB,OAAO,6BAAa,CAAC,SAAS,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,QAAoB,
|
|
1
|
+
{"version":3,"file":"RequestFields.js","sourceRoot":"","sources":["../../../src/route-args/RequestFields.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,12 @@ export interface IRouteArgsResult {
|
|
|
7
7
|
}
|
|
8
8
|
export interface IRouteArgs {
|
|
9
9
|
SupportedType: ParameterType | string;
|
|
10
|
-
extract(callData: IRouteCall, routeParameter: IRouteParameter, req: Request, res: express.Response, route?: IRoute): Promise<IRouteArgsResult>;
|
|
10
|
+
extract(callData: IRouteCall, callArgs: unknown[], routeParameter: IRouteParameter, req: Request, res: express.Response, route?: IRoute): Promise<IRouteArgsResult>;
|
|
11
11
|
}
|
|
12
12
|
export declare abstract class RouteArgs implements IRouteArgs {
|
|
13
13
|
protected Validator: DataValidator;
|
|
14
14
|
abstract get SupportedType(): ParameterType | string;
|
|
15
|
-
abstract extract(callData: IRouteCall, routeParameter: IRouteParameter, req: Request, res: express.Response, route?: IRoute): Promise<IRouteArgsResult>;
|
|
15
|
+
abstract extract(callData: IRouteCall, callArgs: unknown[], routeParameter: IRouteParameter, req: Request, res: express.Response, route?: IRoute): Promise<IRouteArgsResult>;
|
|
16
16
|
protected tryHydrateParam(arg: any, routeParameter: IRouteParameter, route: IRoute): Promise<any>;
|
|
17
17
|
protected tryHydrateObject(arg: any, route: IRouteParameter, hydrator: any): Promise<any>;
|
|
18
18
|
protected getHydrator(param: IRouteParameter): any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteArgs.d.ts","sourceRoot":"","sources":["../../../src/route-args/RouteArgs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;CACX;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,aAAa,GAAG,MAAM,CAAC;IAEtC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"RouteArgs.d.ts","sourceRoot":"","sources":["../../../src/route-args/RouteArgs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,UAAU,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;CACX;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,aAAa,GAAG,MAAM,CAAC;IAEtC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACrK;AAED,8BAAsB,SAAU,YAAW,UAAU;IAEnD,SAAS,CAAC,SAAS,EAAE,aAAa,CAAC;IAEnC,QAAQ,KAAK,aAAa,IAAI,aAAa,GAAG,MAAM,CAAC;aAErC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;cAEnK,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM;cAsCxE,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG;IAKhF,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,eAAe;IAW5C,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,eAAe;IAuB3D,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,eAAe;IAI9C,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG;CAoB3D"}
|
package/lib/cjs/server.d.ts
CHANGED
|
@@ -55,13 +55,5 @@ export declare class HttpServer extends AsyncService {
|
|
|
55
55
|
* @param middleware - middleware function
|
|
56
56
|
*/
|
|
57
57
|
use(middleware: RequestHandler): void;
|
|
58
|
-
/**
|
|
59
|
-
* Executes response
|
|
60
|
-
*/
|
|
61
|
-
protected handleResponse(): void;
|
|
62
|
-
/**
|
|
63
|
-
* Handles thrown exceptions in actions.
|
|
64
|
-
*/
|
|
65
|
-
protected handleErrors(): void;
|
|
66
58
|
}
|
|
67
59
|
//# sourceMappingURL=server.d.ts.map
|
package/lib/cjs/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAiD,MAAM,aAAa,CAAC;AACtG,OAAO,EAAU,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAoC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,MAAM,IAAI,KAAK,EAAqC,MAAM,OAAO,CAAC;AAG3E,OAAO,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIlD,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;AACjC,OAAO,6BAA6B,CAAC;AAErC,qBAEa,UAAW,SAAQ,YAAY;IAE1C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAGhC,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAG1C,SAAS,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAG/C,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAKhC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC;IAC5B,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IAE9B,IAAW,MAAM,IAAI,IAAI,GAAG,KAAK,CAEhC;IAED;;OAEG;IAEH,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;;IAMN,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwDrC;;OAEG;IACH,OAAO,CAAC,aAAa;IAuBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACI,KAAK;IAwBL,IAAI;IAMX;;;;OAIG;IACI,GAAG,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;CAG7C"}
|
package/lib/cjs/server.js
CHANGED
|
@@ -16,19 +16,16 @@ exports.HttpServer = void 0;
|
|
|
16
16
|
const di_1 = require("@spinajs/di");
|
|
17
17
|
const configuration_1 = require("@spinajs/configuration");
|
|
18
18
|
const log_1 = require("@spinajs/log");
|
|
19
|
-
const exceptions_1 = require("@spinajs/exceptions");
|
|
20
19
|
const templates_1 = require("@spinajs/templates");
|
|
21
20
|
require("@spinajs/templates-pug");
|
|
22
21
|
const http_1 = require("http");
|
|
23
22
|
const https_1 = require("https");
|
|
24
23
|
const fs_1 = require("fs");
|
|
25
24
|
const cors_1 = __importDefault(require("cors"));
|
|
26
|
-
const randomstring_1 = __importDefault(require("randomstring"));
|
|
27
25
|
const express_1 = __importDefault(require("express"));
|
|
28
26
|
const lodash_1 = __importDefault(require("lodash"));
|
|
29
27
|
const fs_2 = __importDefault(require("fs"));
|
|
30
28
|
const interfaces_js_1 = require("./interfaces.js");
|
|
31
|
-
const index_js_1 = require("./response-methods/index.js");
|
|
32
29
|
require("./transformers/index.js");
|
|
33
30
|
require("./middlewares/ResponseTime.js");
|
|
34
31
|
require("./middlewares/RequestId.js");
|
|
@@ -130,8 +127,6 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
130
127
|
*/
|
|
131
128
|
start() {
|
|
132
129
|
return new Promise((res, rej) => {
|
|
133
|
-
this.handleResponse();
|
|
134
|
-
this.handleErrors();
|
|
135
130
|
// add all middlewares to execute after
|
|
136
131
|
this.Middlewares.reverse().forEach((m) => {
|
|
137
132
|
const f = m.after();
|
|
@@ -164,92 +159,6 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
164
159
|
use(middleware) {
|
|
165
160
|
this.Express.use(middleware);
|
|
166
161
|
}
|
|
167
|
-
/**
|
|
168
|
-
* Executes response
|
|
169
|
-
*/
|
|
170
|
-
handleResponse() {
|
|
171
|
-
const wrapper = (req, res, next) => {
|
|
172
|
-
if (!res.locals.response) {
|
|
173
|
-
next(new exceptions_1.ResourceNotFound(`Resource not found ${req.method}:${req.originalUrl}`));
|
|
174
|
-
return;
|
|
175
|
-
}
|
|
176
|
-
res.locals.response
|
|
177
|
-
.execute(req, res)
|
|
178
|
-
.then((callback) => {
|
|
179
|
-
if (callback) {
|
|
180
|
-
return callback(req, res);
|
|
181
|
-
}
|
|
182
|
-
})
|
|
183
|
-
.catch((err) => {
|
|
184
|
-
next(err);
|
|
185
|
-
});
|
|
186
|
-
};
|
|
187
|
-
Object.defineProperty(wrapper, 'name', {
|
|
188
|
-
value: 'handleResponse',
|
|
189
|
-
writable: true,
|
|
190
|
-
});
|
|
191
|
-
this.Express.use(wrapper);
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* Handles thrown exceptions in actions.
|
|
195
|
-
*/
|
|
196
|
-
handleErrors() {
|
|
197
|
-
const wrapper = (err, req, res, next) => {
|
|
198
|
-
if (!err) {
|
|
199
|
-
return next();
|
|
200
|
-
}
|
|
201
|
-
this.Log.error(err, `Route error: ${err}, stack: ${err.stack}`);
|
|
202
|
-
const error = {
|
|
203
|
-
/**
|
|
204
|
-
* By default Error object dont copy values like message ( they are not enumerable )
|
|
205
|
-
* It only copies custom props added to Error ( via inheritance )
|
|
206
|
-
*/
|
|
207
|
-
...err,
|
|
208
|
-
// make sure error message is added
|
|
209
|
-
message: err.message,
|
|
210
|
-
stack: {},
|
|
211
|
-
};
|
|
212
|
-
// in dev mode add stack trace for debugging
|
|
213
|
-
if (this.AppEnv === 'development') {
|
|
214
|
-
error.stack = err.stack ? err.stack : err.parameter && err.parameter.stack;
|
|
215
|
-
}
|
|
216
|
-
let response = null;
|
|
217
|
-
const rMap = di_1.DI.get('__http_error_map__');
|
|
218
|
-
if (rMap.has(err.constructor.name)) {
|
|
219
|
-
const httpResponse = rMap.get(err.constructor.name);
|
|
220
|
-
response = new httpResponse(error);
|
|
221
|
-
}
|
|
222
|
-
else {
|
|
223
|
-
this.Log.warn(`Error type ${error.constructor} dont have assigned http response. Map error to response via _http_error_map__ in DI container`);
|
|
224
|
-
response = new index_js_1.ServerError(error);
|
|
225
|
-
}
|
|
226
|
-
response
|
|
227
|
-
.execute(req, res)
|
|
228
|
-
.then((callback) => {
|
|
229
|
-
if (callback) {
|
|
230
|
-
callback(req, res);
|
|
231
|
-
}
|
|
232
|
-
})
|
|
233
|
-
.catch((err) => {
|
|
234
|
-
// last resort error handling
|
|
235
|
-
this.Log.fatal(err, `Cannot send error response`);
|
|
236
|
-
res.status(interfaces_js_1.HTTP_STATUS_CODE.INTERNAL_ERROR);
|
|
237
|
-
if (req.accepts('html') && (this.HttpConfig.AcceptHeaders & interfaces_js_1.HttpAcceptHeaders.HTML) === interfaces_js_1.HttpAcceptHeaders.HTML) {
|
|
238
|
-
// final fallback rendering error fails, we render embedded html error page
|
|
239
|
-
const ticketNo = randomstring_1.default.generate(7);
|
|
240
|
-
res.send(this.HttpConfig.FatalTemplate.replace('{ticket}', ticketNo));
|
|
241
|
-
}
|
|
242
|
-
else {
|
|
243
|
-
res.json(error);
|
|
244
|
-
}
|
|
245
|
-
});
|
|
246
|
-
};
|
|
247
|
-
Object.defineProperty(wrapper, 'name', {
|
|
248
|
-
value: 'handleError',
|
|
249
|
-
writable: true,
|
|
250
|
-
});
|
|
251
|
-
this.Express.use(wrapper);
|
|
252
|
-
}
|
|
253
162
|
};
|
|
254
163
|
exports.HttpServer = HttpServer;
|
|
255
164
|
__decorate([
|
package/lib/cjs/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
package/lib/mjs/controllers.d.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
3
|
-
import
|
|
3
|
+
import Express from 'express';
|
|
4
4
|
import { AsyncService, IContainer, ClassInfo } from '@spinajs/di';
|
|
5
5
|
import { Log } from '@spinajs/log';
|
|
6
6
|
import { DataValidator } from '@spinajs/validation';
|
|
7
7
|
import { Configuration } from '@spinajs/configuration';
|
|
8
8
|
import { HttpServer } from './server.js';
|
|
9
|
-
import { IController, IControllerDescriptor, IActionLocalStoregeContext } from './interfaces.js';
|
|
9
|
+
import { Response, IController, IControllerDescriptor, IActionLocalStoregeContext, Request } from './interfaces.js';
|
|
10
10
|
import { DefaultControllerCache } from './cache.js';
|
|
11
11
|
export declare abstract class BaseController extends AsyncService implements IController {
|
|
12
12
|
/**
|
|
13
13
|
* Array index getter
|
|
14
14
|
*/
|
|
15
15
|
[action: string]: any;
|
|
16
|
-
protected _router:
|
|
16
|
+
protected _router: Express.Router;
|
|
17
17
|
protected _container: IContainer;
|
|
18
18
|
protected _validator: DataValidator;
|
|
19
19
|
protected _log: Log;
|
|
@@ -22,7 +22,7 @@ export declare abstract class BaseController extends AsyncService implements ICo
|
|
|
22
22
|
/**
|
|
23
23
|
* Express router with middleware stack
|
|
24
24
|
*/
|
|
25
|
-
get Router():
|
|
25
|
+
get Router(): Express.Router;
|
|
26
26
|
/**
|
|
27
27
|
* Controller descriptor
|
|
28
28
|
*/
|
|
@@ -33,6 +33,8 @@ export declare abstract class BaseController extends AsyncService implements ICo
|
|
|
33
33
|
* It can be defined via `@BasePath` decorator, defaults to controller name without `Controller` part.
|
|
34
34
|
*/
|
|
35
35
|
get BasePath(): string;
|
|
36
|
+
protected __handle_response__(): (req: Express.Request, res: Express.Response, next: Express.NextFunction) => void;
|
|
37
|
+
protected __handle_error__(): (err: any, req: Express.Request, res: Express.Response, next: Express.NextFunction) => void;
|
|
36
38
|
resolve(): Promise<void>;
|
|
37
39
|
}
|
|
38
40
|
export declare class Controllers extends AsyncService {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,OAAO,
|
|
1
|
+
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAKrD,OAAO,OAAO,MAAM,SAAS,CAAC;AAI9B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAkB,SAAS,EAA0B,MAAM,aAAa,CAAC;AAG1G,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAuB,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAgG,0BAA0B,EAAE,OAAO,EAAmF,MAAM,iBAAiB,CAAC;AAGxT,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAMpD,8BAAsB,cAAe,SAAQ,YAAa,YAAW,WAAW;IAC9E;;OAEG;IACH,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC;IAEtB,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC;IAGlC,SAAS,CAAC,UAAU,EAAE,UAAU,CAAC;IAGjC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC;IAGpC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC;IAGpB,SAAS,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;IAG7E,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC;IAE9B;;OAEG;IACH,IAAW,MAAM,IAAI,OAAO,CAAC,MAAM,CAElC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,qBAAqB,CAE7C;IAED;;;;OAIG;IACH,IAAW,QAAQ,IAAI,MAAM,CAE5B;IAED,SAAS,CAAC,mBAAmB,UACd,eAAe,OAAO,gBAAgB,QAAQ,QAAQ,YAAY;IAmBjF,SAAS,CAAC,gBAAgB,UACX,GAAG,OAAO,eAAe,OAAO,gBAAgB,QAAQ,QAAQ,YAAY;IA0D9E,OAAO;CAiMrB;AAED,qBAAa,WAAY,SAAQ,YAAY;IAC3C;;OAEG;IAEI,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAG9D,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;IAGnB,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAGhC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC;IAG7B,SAAS,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAEtC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAmB7B,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC;IA0B9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAMtC"}
|
package/lib/mjs/controllers.js
CHANGED
|
@@ -11,19 +11,21 @@ import { AsyncLocalStorage } from 'node:async_hooks';
|
|
|
11
11
|
import { isPromise } from 'node:util/types';
|
|
12
12
|
import { basename } from 'node:path';
|
|
13
13
|
import * as fs from 'node:fs';
|
|
14
|
-
import
|
|
14
|
+
import Express from 'express';
|
|
15
15
|
import _ from 'lodash';
|
|
16
16
|
import { AsyncService, Autoinject, DI, ClassInfo, Container } from '@spinajs/di';
|
|
17
|
-
import { UnexpectedServerError, IOFail } from '@spinajs/exceptions';
|
|
17
|
+
import { UnexpectedServerError, IOFail, ResourceNotFound } from '@spinajs/exceptions';
|
|
18
18
|
import { ResolveFromFiles } from '@spinajs/reflection';
|
|
19
19
|
import { Logger, Log } from '@spinajs/log';
|
|
20
20
|
import { DataValidator } from '@spinajs/validation';
|
|
21
21
|
import { Configuration } from '@spinajs/configuration';
|
|
22
22
|
import { HttpServer } from './server.js';
|
|
23
|
-
import { Response, BasePolicy } from './interfaces.js';
|
|
23
|
+
import { Response, BasePolicy, HTTP_STATUS_CODE, HttpAcceptHeaders } from './interfaces.js';
|
|
24
24
|
import { CONTROLLED_DESCRIPTOR_SYMBOL } from './decorators.js';
|
|
25
25
|
import { tryGetHash } from '@spinajs/util';
|
|
26
26
|
import { DefaultControllerCache } from './cache.js';
|
|
27
|
+
import { ServerError } from './response-methods/serverError.js';
|
|
28
|
+
import randomstring from 'randomstring';
|
|
27
29
|
export class BaseController extends AsyncService {
|
|
28
30
|
/**
|
|
29
31
|
* Express router with middleware stack
|
|
@@ -45,13 +47,84 @@ export class BaseController extends AsyncService {
|
|
|
45
47
|
get BasePath() {
|
|
46
48
|
return this.Descriptor.BasePath ? this.Descriptor.BasePath : this.constructor.name.toLowerCase();
|
|
47
49
|
}
|
|
50
|
+
__handle_response__() {
|
|
51
|
+
return (req, res, next) => {
|
|
52
|
+
if (!res.locals.response) {
|
|
53
|
+
next(new ResourceNotFound(`Resource not found ${req.method}:${req.originalUrl}`));
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
res.locals.response
|
|
57
|
+
.execute(req, res)
|
|
58
|
+
.then((callback) => {
|
|
59
|
+
if (callback) {
|
|
60
|
+
return callback(req, res);
|
|
61
|
+
}
|
|
62
|
+
})
|
|
63
|
+
.catch((err) => {
|
|
64
|
+
next(err);
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
__handle_error__() {
|
|
69
|
+
return (err, req, res, next) => {
|
|
70
|
+
if (!err) {
|
|
71
|
+
return next();
|
|
72
|
+
}
|
|
73
|
+
this._log.error(err, `Route error: ${err}, stack: ${err.stack}`);
|
|
74
|
+
const error = {
|
|
75
|
+
/**
|
|
76
|
+
* By default Error object dont copy values like message ( they are not enumerable )
|
|
77
|
+
* It only copies custom props added to Error ( via inheritance )
|
|
78
|
+
*/
|
|
79
|
+
...err,
|
|
80
|
+
// make sure error message is added
|
|
81
|
+
message: err.message,
|
|
82
|
+
stack: {},
|
|
83
|
+
};
|
|
84
|
+
// in dev mode add stack trace for debugging
|
|
85
|
+
if (this.AppEnv === 'development') {
|
|
86
|
+
error.stack = err.stack ? err.stack : err.parameter && err.parameter.stack;
|
|
87
|
+
}
|
|
88
|
+
let response = null;
|
|
89
|
+
const rMap = DI.get('__http_error_map__');
|
|
90
|
+
if (rMap.has(err.constructor.name)) {
|
|
91
|
+
const httpResponse = rMap.get(err.constructor.name);
|
|
92
|
+
response = new httpResponse(error);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
this._log.warn(`Error type ${error.constructor} dont have assigned http response. Map error to response via _http_error_map__ in DI container`);
|
|
96
|
+
response = new ServerError(error);
|
|
97
|
+
}
|
|
98
|
+
response
|
|
99
|
+
.execute(req, res)
|
|
100
|
+
.then((callback) => {
|
|
101
|
+
if (callback) {
|
|
102
|
+
callback(req, res);
|
|
103
|
+
}
|
|
104
|
+
})
|
|
105
|
+
.catch((err) => {
|
|
106
|
+
// last resort error handling
|
|
107
|
+
this._log.fatal(err, `Cannot send error response`);
|
|
108
|
+
res.status(HTTP_STATUS_CODE.INTERNAL_ERROR);
|
|
109
|
+
if (req.accepts('html') && (this.HttpConfig.AcceptHeaders & HttpAcceptHeaders.HTML) === HttpAcceptHeaders.HTML) {
|
|
110
|
+
// final fallback rendering error fails, we render embedded html error page
|
|
111
|
+
const ticketNo = randomstring.generate(7);
|
|
112
|
+
res.send(this.HttpConfig.FatalTemplate.replace('{ticket}', ticketNo));
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
res.json(error);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
;
|
|
48
121
|
async resolve() {
|
|
49
122
|
const self = this;
|
|
50
123
|
if (!this.Descriptor) {
|
|
51
124
|
this._log.warn(`Controller ${this.constructor.name} does not have descriptor. It its abstract or base class ignore this message.`);
|
|
52
125
|
return;
|
|
53
126
|
}
|
|
54
|
-
this._router =
|
|
127
|
+
this._router = Express.Router();
|
|
55
128
|
this._actionLocalStorage = DI.get((AsyncLocalStorage));
|
|
56
129
|
for (const [, route] of this.Descriptor.Routes) {
|
|
57
130
|
const handlers = [];
|
|
@@ -174,6 +247,8 @@ export class BaseController extends AsyncService {
|
|
|
174
247
|
this._log.warn(`Unknown route type for ${this.constructor.name}::${route.Method} at path ${path}`);
|
|
175
248
|
return;
|
|
176
249
|
}
|
|
250
|
+
handlers.push(this.__handle_response__());
|
|
251
|
+
handlers.push(this.__handle_error__());
|
|
177
252
|
this._router[route.InternalType](path, handlers);
|
|
178
253
|
}
|
|
179
254
|
function _invokeAction(source, action, route) {
|
|
@@ -205,7 +280,7 @@ export class BaseController extends AsyncService {
|
|
|
205
280
|
method: ${route.Method},
|
|
206
281
|
controller: ${self.constructor.name}`);
|
|
207
282
|
}
|
|
208
|
-
const { Args, CallData } = await routeArgsHandler.extract(callData, param, req, res, route);
|
|
283
|
+
const { Args, CallData } = await routeArgsHandler.extract(callData, callArgs, param, req, res, route);
|
|
209
284
|
callData = CallData;
|
|
210
285
|
callArgs[param.Index] = Args;
|
|
211
286
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"controllers.js","sourceRoot":"","sources":["../../src/controllers.ts"],"names":[],"mappings":"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"}
|