@asapjs/router 1.0.0-alpha.3 → 1.0.0-alpha.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/decorator/index.d.ts +4 -2
  2. package/dist/decorator/index.d.ts.map +1 -1
  3. package/dist/decorator/index.js +1 -3
  4. package/dist/decorator/index.js.map +1 -1
  5. package/dist/express/router.d.ts +2 -3
  6. package/dist/express/router.d.ts.map +1 -1
  7. package/dist/express/router.js +55 -34
  8. package/dist/express/router.js.map +1 -1
  9. package/dist/index.d.ts +7 -5
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +15 -12
  12. package/dist/index.js.map +1 -1
  13. package/dist/middleware/errorHandler.d.ts +2 -2
  14. package/dist/middleware/errorHandler.d.ts.map +1 -1
  15. package/dist/middleware/errorHandler.js +11 -3
  16. package/dist/middleware/errorHandler.js.map +1 -1
  17. package/dist/plugin.d.ts +1 -1
  18. package/dist/plugin.d.ts.map +1 -1
  19. package/dist/plugin.js +18 -6
  20. package/dist/plugin.js.map +1 -1
  21. package/dist/router/index.d.ts.map +1 -1
  22. package/dist/router/index.js +17 -2
  23. package/dist/router/index.js.map +1 -1
  24. package/dist/swagger/index.d.ts.map +1 -1
  25. package/dist/swagger/index.js +57 -44
  26. package/dist/swagger/index.js.map +1 -1
  27. package/dist/utils/collectMiddlewareErrors.d.ts +14 -0
  28. package/dist/utils/collectMiddlewareErrors.d.ts.map +1 -0
  29. package/dist/utils/collectMiddlewareErrors.js +31 -0
  30. package/dist/utils/collectMiddlewareErrors.js.map +1 -0
  31. package/dist/utils/defineConfig.d.ts +46 -0
  32. package/dist/utils/defineConfig.d.ts.map +1 -0
  33. package/dist/utils/defineConfig.js +28 -0
  34. package/dist/utils/defineConfig.js.map +1 -0
  35. package/dist/utils/defineMiddleware.d.ts +6 -0
  36. package/dist/utils/defineMiddleware.d.ts.map +1 -0
  37. package/dist/utils/defineMiddleware.js +43 -0
  38. package/dist/utils/defineMiddleware.js.map +1 -0
  39. package/dist/utils/registeredMiddlewares.d.ts +4 -0
  40. package/dist/utils/registeredMiddlewares.d.ts.map +1 -0
  41. package/dist/utils/registeredMiddlewares.js +12 -0
  42. package/dist/utils/registeredMiddlewares.js.map +1 -0
  43. package/dist/utils/wrapper.d.ts +14 -6
  44. package/dist/utils/wrapper.d.ts.map +1 -1
  45. package/dist/utils/wrapper.js +22 -15
  46. package/dist/utils/wrapper.js.map +1 -1
  47. package/package.json +13 -12
  48. package/dist/middleware/jwtVerification.d.ts +0 -11
  49. package/dist/middleware/jwtVerification.d.ts.map +0 -1
  50. package/dist/middleware/jwtVerification.js +0 -38
  51. package/dist/middleware/jwtVerification.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/swagger/index.ts"],"names":[],"mappings":"AAiFA,eAAO,MAAQ,QAAQ,SAlEU,GAAG,oBAkEX,SAAS,SA9DA,GAAG,oBA8DD,cAAc,QARlB,GAAG;;QAQyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/swagger/index.ts"],"names":[],"mappings":"AA8FA,eAAO,MAAQ,QAAQ,SA/ES,GAAG,oBA+EV,SAAS,SA3ED,GAAG,oBA2EA,cAAc,QARnB,GAAG;;QAQ0C,CAAC"}
@@ -43,50 +43,63 @@ class DocsApplication {
43
43
  });
44
44
  this.generateSwaggerData = (req) => {
45
45
  var _a, _b, _c, _d, _e, _f, _g;
46
- const config = (0, common_1.getConfig)();
47
- this.swaggerData.info.title = ((_a = config === null || config === void 0 ? void 0 : config.swagger) === null || _a === void 0 ? void 0 : _a.name) || '';
48
- this.swaggerData.info.version = ((_b = config === null || config === void 0 ? void 0 : config.swagger) === null || _b === void 0 ? void 0 : _b.version) || '';
49
- this.swaggerData.info.description = ((_c = config === null || config === void 0 ? void 0 : config.swagger) === null || _c === void 0 ? void 0 : _c.description) || '';
50
- this.swaggerData.components.securitySchemes.OAuthLogin.flows.password.tokenUrl = ((_d = config === null || config === void 0 ? void 0 : config.swagger) === null || _d === void 0 ? void 0 : _d.auth_url) || '';
51
- this.swaggerData.servers = [
52
- {
53
- url: `${(_e = config === null || config === void 0 ? void 0 : config.swagger) === null || _e === void 0 ? void 0 : _e.scheme}://${req.headers.host}${(config === null || config === void 0 ? void 0 : config.basePath) ? `/${config === null || config === void 0 ? void 0 : config.basePath}` : ''}`,
54
- },
55
- {
56
- url: `${(_f = config === null || config === void 0 ? void 0 : config.swagger) === null || _f === void 0 ? void 0 : _f.scheme}://${(_g = config === null || config === void 0 ? void 0 : config.swagger) === null || _g === void 0 ? void 0 : _g.host}${(config === null || config === void 0 ? void 0 : config.basePath) ? `/${config === null || config === void 0 ? void 0 : config.basePath}` : ''}`,
57
- },
58
- ];
59
- this.swaggerPath.sort((a, b) => {
60
- var _a, _b, _c, _d;
61
- const ix1 = methods.indexOf(a.method.toLowerCase());
62
- const ix2 = methods.indexOf(b.method.toLowerCase());
63
- return (((_a = a.tags) === null || _a === void 0 ? void 0 : _a[0]) || 0) > (((_b = b.tags) === null || _b === void 0 ? void 0 : _b[0]) || 0)
64
- ? 1
65
- : (((_c = a.tags) === null || _c === void 0 ? void 0 : _c[0]) || 0) < (((_d = b.tags) === null || _d === void 0 ? void 0 : _d[0]) || 0)
66
- ? -1
67
- : a.path > b.path
68
- ? 1
69
- : a.path < b.path
70
- ? -1
71
- : ix1 > ix2
72
- ? 1
73
- : ix1 < ix2
74
- ? -1
75
- : 0;
76
- });
77
- this.swaggerPath.forEach((v) => {
78
- var _a;
79
- if (!this.swaggerData.paths[v.path])
80
- this.swaggerData.paths[v.path] = {};
81
- const { path: _, method: __ } = v, props = __rest(v, ["path", "method"]);
82
- this.swaggerData.paths[v.path][(_a = v.method) === null || _a === void 0 ? void 0 : _a.toLowerCase()] = props;
83
- });
84
- this.swaggerScheme.forEach((v) => {
85
- if (!this.swaggerData.components.schemas[v.name])
86
- this.swaggerData.components.schemas[v.name] = {};
87
- this.swaggerData.components.schemas[v.name] = v.data;
88
- });
89
- this.generatedSwaggerData = Object.assign({}, this.swaggerData);
46
+ try {
47
+ const config = (0, common_1.getConfig)();
48
+ this.swaggerData.info.title = ((_a = config === null || config === void 0 ? void 0 : config.swagger) === null || _a === void 0 ? void 0 : _a.name) || '';
49
+ this.swaggerData.info.version = ((_b = config === null || config === void 0 ? void 0 : config.swagger) === null || _b === void 0 ? void 0 : _b.version) || '';
50
+ this.swaggerData.info.description = ((_c = config === null || config === void 0 ? void 0 : config.swagger) === null || _c === void 0 ? void 0 : _c.description) || '';
51
+ this.swaggerData.components.securitySchemes.OAuthLogin.flows.password.tokenUrl =
52
+ ((_d = config === null || config === void 0 ? void 0 : config.swagger) === null || _d === void 0 ? void 0 : _d.auth_url) || '';
53
+ this.swaggerData.servers = [
54
+ {
55
+ url: `${(_e = config === null || config === void 0 ? void 0 : config.swagger) === null || _e === void 0 ? void 0 : _e.scheme}://${req.headers.host}${(config === null || config === void 0 ? void 0 : config.basePath) ? `/${config === null || config === void 0 ? void 0 : config.basePath}` : ''}`,
56
+ },
57
+ {
58
+ url: `${(_f = config === null || config === void 0 ? void 0 : config.swagger) === null || _f === void 0 ? void 0 : _f.scheme}://${(_g = config === null || config === void 0 ? void 0 : config.swagger) === null || _g === void 0 ? void 0 : _g.host}${(config === null || config === void 0 ? void 0 : config.basePath) ? `/${config === null || config === void 0 ? void 0 : config.basePath}` : ''}`,
59
+ },
60
+ ];
61
+ this.swaggerPath.sort((a, b) => {
62
+ var _a, _b, _c, _d;
63
+ const ix1 = methods.indexOf(a.method.toLowerCase());
64
+ const ix2 = methods.indexOf(b.method.toLowerCase());
65
+ return (((_a = a.tags) === null || _a === void 0 ? void 0 : _a[0]) || 0) > (((_b = b.tags) === null || _b === void 0 ? void 0 : _b[0]) || 0)
66
+ ? 1
67
+ : (((_c = a.tags) === null || _c === void 0 ? void 0 : _c[0]) || 0) < (((_d = b.tags) === null || _d === void 0 ? void 0 : _d[0]) || 0)
68
+ ? -1
69
+ : a.path > b.path
70
+ ? 1
71
+ : a.path < b.path
72
+ ? -1
73
+ : ix1 > ix2
74
+ ? 1
75
+ : ix1 < ix2
76
+ ? -1
77
+ : 0;
78
+ });
79
+ this.swaggerPath.forEach((v) => {
80
+ var _a;
81
+ if (!this.swaggerData.paths[v.path])
82
+ this.swaggerData.paths[v.path] = {};
83
+ const { path: _, method: __ } = v, props = __rest(v, ["path", "method"]);
84
+ this.swaggerData.paths[v.path][(_a = v.method) === null || _a === void 0 ? void 0 : _a.toLowerCase()] = props;
85
+ });
86
+ this.swaggerScheme.forEach((v) => {
87
+ if (!this.swaggerData.components.schemas[v.name])
88
+ this.swaggerData.components.schemas[v.name] = {};
89
+ this.swaggerData.components.schemas[v.name] = v.data;
90
+ });
91
+ this.generatedSwaggerData = Object.assign({}, this.swaggerData);
92
+ }
93
+ catch (err) {
94
+ common_1.logger.error('@router swagger.json generation failed', err, {
95
+ operation: 'generateSwaggerData',
96
+ context: {
97
+ pathCount: this.swaggerPath.length,
98
+ schemeCount: this.swaggerScheme.length,
99
+ },
100
+ });
101
+ throw err;
102
+ }
90
103
  };
91
104
  this.getSwaggerData = (req) => {
92
105
  if (this.generatedSwaggerData === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/swagger/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,2CAA2C;AAC3C,0FAA4D;AAE5D,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;AAEjD,MAAM,eAAe;IAArB;QACS,gBAAW,qBAAgC,8BAAc,EAAG;QAE3D,gBAAW,GAAG,EAAE,CAAC;QAEjB,kBAAa,GAAG,EAAE,CAAC;QAEnB,yBAAoB,GAAkC,IAAI,CAAC;QAE5D,aAAQ,GAAG,CAAO,IAAS,EAAE,EAAE;YACpC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAa,CAAC,CAAC;QACvC,CAAC,CAAA,CAAC;QAEK,cAAS,GAAG,CAAO,IAAS,EAAE,EAAE;YACrC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAa,CAAC,CAAC;QACzC,CAAC,CAAA,CAAC;QAEK,wBAAmB,GAAG,CAAC,GAAQ,EAAE,EAAE;;YACxC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;YAE3B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,IAAI,KAAI,EAAE,CAAC;YAC1D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,OAAO,KAAI,EAAE,CAAC;YAC/D,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,WAAW,KAAI,EAAE,CAAC;YAEvE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,QAAQ,KAAI,EAAE,CAAC;YAEjH,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG;gBACzB;oBACE,GAAG,EAAE,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAC,CAAC,CAAC,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBACzG;gBACD;oBACE,GAAG,EAAE,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,MAAM,MAAM,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,0CAAE,IAAI,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAC,CAAC,CAAC,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC9G;aACF,CAAC;YAEF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE;;gBACvC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBACpD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;gBACpD,OAAO,CAAC,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAG,CAAC,CAAC,KAAI,CAAC,CAAC,GAAG,CAAC,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAG,CAAC,CAAC,KAAI,CAAC,CAAC;oBAC5C,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,CAAC,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAG,CAAC,CAAC,KAAI,CAAC,CAAC,GAAG,CAAC,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAG,CAAC,CAAC,KAAI,CAAC,CAAC;wBACzC,CAAC,CAAC,CAAC,CAAC;wBACJ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;4BACjB,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;gCACjB,CAAC,CAAC,CAAC,CAAC;gCACJ,CAAC,CAAC,GAAG,GAAG,GAAG;oCACX,CAAC,CAAC,CAAC;oCACH,CAAC,CAAC,GAAG,GAAG,GAAG;wCACX,CAAC,CAAC,CAAC,CAAC;wCACJ,CAAC,CAAC,CAAC,CAAC;YACR,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;;gBAClC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAe,CAAC,EAAX,KAAK,UAAK,CAAC,EAArC,kBAAiC,CAAI,CAAC;gBAC5C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAA,CAAC,CAAC,MAAM,0CAAE,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;YAClE,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;oBAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACnG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,oBAAoB,qBAAQ,IAAI,CAAC,WAAW,CAAE,CAAC;QACtD,CAAC,CAAC;QAEK,mBAAc,GAAG,CAAC,GAAQ,EAAE,EAAE;YACnC,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;gBACvC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;QACnC,CAAC,CAAC;IACJ,CAAC;CAAA;AAEY,KAA0C,IAAI,eAAe,EAAE,EAA7D,gBAAQ,gBAAE,iBAAS,iBAAE,sBAAc,qBAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/swagger/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { ErrorCreator } from '@asapjs/error';
2
+ import type { TypedMiddleware } from '@asapjs/types';
3
+ /**
4
+ * 미들웨어 목록에서 현재 routeOptions 기준으로 포함할 에러들을 수집한다.
5
+ * - __errors가 배열이면 그대로 반환
6
+ * - __errors가 함수이면 routeOptions를 넘겨 호출한 결과를 반환
7
+ * - __errors가 없는 기존 미들웨어는 빈 배열 반환 (backward compatible)
8
+ */
9
+ export declare function collectMiddlewareErrors(middlewares: readonly TypedMiddleware<any, any>[], routeOptions: Record<string, any>): ErrorCreator[];
10
+ /**
11
+ * errorCode 기준으로 중복 에러를 제거한다.
12
+ */
13
+ export declare function deduplicateErrors(errors: ErrorCreator[]): ErrorCreator[];
14
+ //# sourceMappingURL=collectMiddlewareErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collectMiddlewareErrors.d.ts","sourceRoot":"","sources":["../../src/utils/collectMiddlewareErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,WAAW,EAAE,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EACjD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/B,YAAY,EAAE,CAUhB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAOxE"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.collectMiddlewareErrors = collectMiddlewareErrors;
4
+ exports.deduplicateErrors = deduplicateErrors;
5
+ /**
6
+ * 미들웨어 목록에서 현재 routeOptions 기준으로 포함할 에러들을 수집한다.
7
+ * - __errors가 배열이면 그대로 반환
8
+ * - __errors가 함수이면 routeOptions를 넘겨 호출한 결과를 반환
9
+ * - __errors가 없는 기존 미들웨어는 빈 배열 반환 (backward compatible)
10
+ */
11
+ function collectMiddlewareErrors(middlewares, routeOptions) {
12
+ return middlewares.flatMap((mw) => {
13
+ const errors = mw.__errors;
14
+ if (!errors)
15
+ return [];
16
+ return typeof errors === 'function' ? errors(routeOptions) : errors;
17
+ });
18
+ }
19
+ /**
20
+ * errorCode 기준으로 중복 에러를 제거한다.
21
+ */
22
+ function deduplicateErrors(errors) {
23
+ const seen = new Set();
24
+ return errors.filter((e) => {
25
+ if (seen.has(e._code))
26
+ return false;
27
+ seen.add(e._code);
28
+ return true;
29
+ });
30
+ }
31
+ //# sourceMappingURL=collectMiddlewareErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collectMiddlewareErrors.js","sourceRoot":"","sources":["../../src/utils/collectMiddlewareErrors.ts"],"names":[],"mappings":";;AASA,0DAaC;AAKD,8CAOC;AA/BD;;;;;GAKG;AACH,SAAgB,uBAAuB,CACtC,WAAiD,EACjD,YAAiC;IAEjC,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACjC,MAAM,MAAM,GAAI,EAAU,CAAC,QAGf,CAAC;QAEb,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,OAAO,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACrE,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,MAAsB;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IACb,CAAC,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { AsapJSConfig, InferMiddlewareContext, TypedMiddleware } from '@asapjs/types';
2
+ import type { ExecuteArgs } from './wrapper';
3
+ /**
4
+ * Defines the application config while preserving the exact tuple type of middleware[],
5
+ * enabling TypeScript to infer the merged context type from all registered middleware.
6
+ *
7
+ * @example
8
+ * import { defineConfig, createJwtMiddleware } from '@asapjs/router';
9
+ *
10
+ * export const config = defineConfig({
11
+ * port: 3000,
12
+ * middleware: [createJwtMiddleware(true)],
13
+ * ...
14
+ * });
15
+ *
16
+ * // Derive your app-specific ExecuteArgs:
17
+ * export type AppExecuteArgs<P = {}, Q = {}, B = {}> =
18
+ * CreateExecuteArgs<typeof config, P, Q, B>;
19
+ */
20
+ export declare function defineConfig<M extends readonly TypedMiddleware<any>[]>(config: Omit<AsapJSConfig, 'middleware'> & {
21
+ middleware?: M;
22
+ }): AsapJSConfig & {
23
+ middleware: M;
24
+ };
25
+ export declare function defineRouterConfig<M extends readonly TypedMiddleware<any>[]>(config: {
26
+ middleware?: M;
27
+ }): {
28
+ middleware: M;
29
+ };
30
+ /**
31
+ * Derives a typed ExecuteArgs from your app config, automatically including
32
+ * context fields contributed by each registered global middleware.
33
+ *
34
+ * @example
35
+ * export type AppExecuteArgs<P = {}, Q = {}, B = {}> =
36
+ * CreateExecuteArgs<typeof config, P, Q, B>;
37
+ *
38
+ * // In controller:
39
+ * public getList = async ({ user }: AppExecuteArgs<{}, QueryDto, {}>) => {
40
+ * // user is JwtUserPayload — not any!
41
+ * };
42
+ */
43
+ export type CreateExecuteArgs<Config extends {
44
+ middleware?: readonly any[];
45
+ }, P = {}, Q = {}, B = {}> = ExecuteArgs<P, Q, B, InferMiddlewareContext<NonNullable<Config['middleware']>>>;
46
+ //# sourceMappingURL=defineConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineConfig.d.ts","sourceRoot":"","sources":["../../src/utils/defineConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,SAAS,eAAe,CAAC,GAAG,CAAC,EAAE,EACrE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,CAAC,CAAA;CAAE,GAC3D,YAAY,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAElC;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,SAAS,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE;IACrF,UAAU,CAAC,EAAE,CAAC,CAAC;CACf,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAEpB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,iBAAiB,CAC5B,MAAM,SAAS;IAAE,UAAU,CAAC,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,EAC9C,CAAC,GAAG,EAAE,EACN,CAAC,GAAG,EAAE,EACN,CAAC,GAAG,EAAE,IACH,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,sBAAsB,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineConfig = defineConfig;
4
+ exports.defineRouterConfig = defineRouterConfig;
5
+ /**
6
+ * Defines the application config while preserving the exact tuple type of middleware[],
7
+ * enabling TypeScript to infer the merged context type from all registered middleware.
8
+ *
9
+ * @example
10
+ * import { defineConfig, createJwtMiddleware } from '@asapjs/router';
11
+ *
12
+ * export const config = defineConfig({
13
+ * port: 3000,
14
+ * middleware: [createJwtMiddleware(true)],
15
+ * ...
16
+ * });
17
+ *
18
+ * // Derive your app-specific ExecuteArgs:
19
+ * export type AppExecuteArgs<P = {}, Q = {}, B = {}> =
20
+ * CreateExecuteArgs<typeof config, P, Q, B>;
21
+ */
22
+ function defineConfig(config) {
23
+ return config;
24
+ }
25
+ function defineRouterConfig(config) {
26
+ return config;
27
+ }
28
+ //# sourceMappingURL=defineConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineConfig.js","sourceRoot":"","sources":["../../src/utils/defineConfig.ts"],"names":[],"mappings":";;AAoBA,oCAIC;AAED,gDAIC;AA3BD;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,YAAY,CAC3B,MAA6D;IAE7D,OAAO,MAA0C,CAAC;AACnD,CAAC;AAED,SAAgB,kBAAkB,CAA4C,MAE7E;IACA,OAAO,MAA2B,CAAC;AACpC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { ErrorCreator } from '@asapjs/error';
2
+ import type { TypedMiddleware } from '@asapjs/types';
3
+ export declare function defineMiddleware<RouteOptions extends Record<string, any> = {}, Context extends Record<string, any> = {}>(factory: (options: RouteOptions) => (req: any, res: any, next: any) => void, meta?: {
4
+ errors?: ErrorCreator[] | ((options: RouteOptions) => ErrorCreator[]);
5
+ }): TypedMiddleware<RouteOptions, Context>;
6
+ //# sourceMappingURL=defineMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineMiddleware.d.ts","sourceRoot":"","sources":["../../src/utils/defineMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAerD,wBAAgB,gBAAgB,CAC/B,YAAY,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EAC7C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EAExC,OAAO,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,EAC3E,IAAI,CAAC,EAAE;IACN,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,KAAK,YAAY,EAAE,CAAC,CAAC;CACtE,GACC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAuBxC"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineMiddleware = defineMiddleware;
4
+ const error_1 = require("@asapjs/error");
5
+ function respondWithError(err, res) {
6
+ if (err instanceof error_1.HttpError) {
7
+ res.status(err.status).json(err.toJSON());
8
+ }
9
+ else if (err && typeof err === 'object' && 'status' in err && 'message' in err) {
10
+ const { status, message } = err;
11
+ res.status(status).json(new error_1.HttpError(status, 'HTTP_EXCEPTION', String(message)).toJSON());
12
+ }
13
+ else {
14
+ const message = err instanceof Error ? err.message : '알 수 없는 서버 오류가 발생했습니다.';
15
+ res.status(500).json(new error_1.HttpError(500, 'INTERNAL_SERVER_ERROR', message).toJSON());
16
+ }
17
+ }
18
+ function defineMiddleware(factory, meta) {
19
+ var _a;
20
+ const wrappedFactory = (options) => {
21
+ const handler = factory(options);
22
+ return (req, res, next) => {
23
+ try {
24
+ const result = handler(req, res, next);
25
+ if (result instanceof Promise) {
26
+ result.catch((err) => respondWithError(err, res));
27
+ }
28
+ }
29
+ catch (err) {
30
+ respondWithError(err, res);
31
+ }
32
+ };
33
+ };
34
+ const middleware = wrappedFactory;
35
+ Object.defineProperty(middleware, '__errors', {
36
+ value: (_a = meta === null || meta === void 0 ? void 0 : meta.errors) !== null && _a !== void 0 ? _a : [],
37
+ writable: false,
38
+ enumerable: false,
39
+ configurable: false,
40
+ });
41
+ return middleware;
42
+ }
43
+ //# sourceMappingURL=defineMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defineMiddleware.js","sourceRoot":"","sources":["../../src/utils/defineMiddleware.ts"],"names":[],"mappings":";;AAiBA,4CA+BC;AA/CD,yCAA0C;AAI1C,SAAS,gBAAgB,CAAC,GAAY,EAAE,GAAa;IACpD,IAAI,GAAG,YAAY,iBAAS,EAAE,CAAC;QAC9B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;SAAM,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;QAClF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAA0C,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,iBAAS,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACP,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC;QAC7E,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,iBAAS,CAAC,GAAG,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;AACF,CAAC;AAED,SAAgB,gBAAgB,CAI/B,OAA2E,EAC3E,IAEC;;IAED,MAAM,cAAc,GAAG,CAAC,OAAqB,EAA6C,EAAE;QAC3F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,CAAC,GAAQ,EAAE,GAAa,EAAE,IAAS,EAAE,EAAE;YAC7C,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAY,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAChD,IAAI,MAAM,YAAY,OAAO,EAAE,CAAC;oBAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnD,CAAC;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,cAAwD,CAAC;IAC5E,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,EAAE;QAC7C,KAAK,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,mCAAI,EAAE;QACzB,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,KAAK;KACnB,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACnB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { TypedMiddleware } from '@asapjs/types';
2
+ export declare function setRegisteredMiddlewares(mws: readonly TypedMiddleware<any, any>[]): void;
3
+ export declare function getRegisteredMiddlewares(): readonly TypedMiddleware<any, any>[];
4
+ //# sourceMappingURL=registeredMiddlewares.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registeredMiddlewares.d.ts","sourceRoot":"","sources":["../../src/utils/registeredMiddlewares.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIrD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,CAExF;AAED,wBAAgB,wBAAwB,IAAI,SAAS,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAE/E"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setRegisteredMiddlewares = setRegisteredMiddlewares;
4
+ exports.getRegisteredMiddlewares = getRegisteredMiddlewares;
5
+ let middlewares = [];
6
+ function setRegisteredMiddlewares(mws) {
7
+ middlewares = mws;
8
+ }
9
+ function getRegisteredMiddlewares() {
10
+ return middlewares;
11
+ }
12
+ //# sourceMappingURL=registeredMiddlewares.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registeredMiddlewares.js","sourceRoot":"","sources":["../../src/utils/registeredMiddlewares.ts"],"names":[],"mappings":";;AAIA,4DAEC;AAED,4DAEC;AARD,IAAI,WAAW,GAAyC,EAAE,CAAC;AAE3D,SAAgB,wBAAwB,CAAC,GAAyC;IACjF,WAAW,GAAG,GAAG,CAAC;AACnB,CAAC;AAED,SAAgB,wBAAwB;IACvC,OAAO,WAAW,CAAC;AACpB,CAAC"}
@@ -1,7 +1,16 @@
1
- import { NextFunction, Request, Response } from 'express';
2
- import { PaginationQueryDto } from '@asapjs/types';
1
+ import type { PaginationQueryType } from '@asapjs/sequelize';
2
+ import type { NextFunction, Request, Response } from 'express';
3
3
  type Callback = (request: Request<any, any, any, any>, response: Response, next: NextFunction) => Promise<unknown>;
4
- export interface ExecuteArgs<P = {}, Q = {}, B = {}> {
4
+ declare global {
5
+ namespace Express {
6
+ interface Request {
7
+ user: any;
8
+ }
9
+ }
10
+ }
11
+ export interface GlobalMiddlewareContext {
12
+ }
13
+ export type ExecuteArgs<P = {}, Q = {}, B = {}, Context = GlobalMiddlewareContext> = {
5
14
  req: Request;
6
15
  res: Response;
7
16
  path?: P | {
@@ -16,9 +25,8 @@ export interface ExecuteArgs<P = {}, Q = {}, B = {}> {
16
25
  files?: {
17
26
  [key: string]: any;
18
27
  };
19
- user?: any;
20
- paging: PaginationQueryDto;
21
- }
28
+ paging: PaginationQueryType;
29
+ } & Context;
22
30
  export default function Wrapper(cb: (args: ExecuteArgs) => Promise<unknown>): Callback;
23
31
  export {};
24
32
  //# sourceMappingURL=wrapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../../src/utils/wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,KAAK,QAAQ,GAAG,CACf,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACpC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,KACd,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE;IAClD,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,CAAC,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAClC,KAAK,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAClC,IAAI,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IACjC,KAAK,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAC/B,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,kBAAkB,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,QAAQ,CAyCrF"}
1
+ {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../../src/utils/wrapper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,KAAK,QAAQ,GAAG,CACf,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACpC,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,KACd,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,OAAO,CAAC;QACjB,UAAU,OAAO;YAChB,IAAI,EAAE,GAAG,CAAC;SACV;KACD;CACD;AAGD,MAAM,WAAW,uBAAuB;CAAG;AAE3C,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,GAAG,uBAAuB,IAAI;IACpF,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,QAAQ,CAAC;IACd,IAAI,CAAC,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAClC,KAAK,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAClC,IAAI,EAAE,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IACjC,KAAK,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IAC/B,MAAM,EAAE,mBAAmB,CAAC;CAC5B,GAAG,OAAO,CAAC;AAEZ,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,QAAQ,CA6CrF"}
@@ -43,31 +43,28 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
43
43
  };
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
45
  exports.default = Wrapper;
46
- const Sentry = __importStar(require("@sentry/node"));
47
46
  const common_1 = require("@asapjs/common");
48
47
  const error_1 = require("@asapjs/error");
48
+ const Sentry = __importStar(require("@sentry/node"));
49
49
  function Wrapper(cb) {
50
- return function _Wrapper(req, res, next) {
50
+ return function _Wrapper(req, res, _next) {
51
51
  return __awaiter(this, void 0, void 0, function* () {
52
52
  try {
53
- const user = req.user;
54
53
  const { page: pageProp = 0, limit: limitProp = 20 } = req.query;
55
54
  const page = parseInt(String(pageProp), 10);
56
55
  const limit = parseInt(String(limitProp), 10);
57
56
  const paging = {
58
57
  page,
59
58
  limit,
60
- offset: page * limit,
61
- };
62
- const args = {
63
- req,
64
- res,
65
- query: req.query,
66
- path: req.params,
67
- body: req.body,
68
- user,
69
- paging,
70
59
  };
60
+ const base = { req, res, query: req.query, path: req.params, body: req.body, paging };
61
+ const args = new Proxy(base, {
62
+ get(target, prop) {
63
+ if (prop in target)
64
+ return target[prop];
65
+ return req[prop];
66
+ },
67
+ });
71
68
  const output = yield cb(args);
72
69
  if (output) {
73
70
  res.status(200).json(output);
@@ -80,11 +77,21 @@ function Wrapper(cb) {
80
77
  err.status === undefined;
81
78
  if (isServerError) {
82
79
  common_1.logger.error('[SERVER ERROR]', err);
83
- if ((0, common_1.getConfig)().sentry !== undefined) {
80
+ if ((0, common_1.hasConfig)() && (0, common_1.getConfig)().sentry !== undefined) {
84
81
  Sentry.captureException(err);
85
82
  }
86
83
  }
87
- (0, error_1.errorToResponse)(err, res);
84
+ if (err instanceof error_1.HttpError) {
85
+ res.status(err.status).json(err.toJSON());
86
+ }
87
+ else if (err && typeof err === 'object' && 'status' in err && 'message' in err) {
88
+ const { status, message } = err;
89
+ res.status(status).json(new error_1.HttpError(status, 'HTTP_EXCEPTION', String(message)).toJSON());
90
+ }
91
+ else {
92
+ const message = err instanceof Error ? err.message : '알 수 없는 서버 오류가 발생했습니다.';
93
+ res.status(500).json(new error_1.HttpError(500, 'INTERNAL_SERVER_ERROR', message).toJSON());
94
+ }
88
95
  }
89
96
  });
90
97
  };
@@ -1 +1 @@
1
- {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/utils/wrapper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,0BAyCC;AAhED,qDAAuC;AAEvC,2CAAmD;AACnD,yCAAgD;AAoBhD,SAAwB,OAAO,CAAC,EAA2C;IAC1E,OAAO,SAAe,QAAQ,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;;YAC7E,IAAI,CAAC;gBACJ,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC;gBAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9C,MAAM,MAAM,GAAuB;oBAClC,IAAI;oBACJ,KAAK;oBACL,MAAM,EAAE,IAAI,GAAG,KAAK;iBACpB,CAAC;gBACF,MAAM,IAAI,GAAgB;oBACzB,GAAG;oBACH,GAAG;oBACH,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,IAAI,EAAE,GAAG,CAAC,MAAM;oBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI;oBACJ,MAAM;iBACN,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;gBAC9B,IAAI,MAAM,EAAE,CAAC;oBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC9B,CAAC;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,MAAM,aAAa,GAClB,GAAG,IAAI,IAAI;oBACX,OAAO,GAAG,KAAK,QAAQ;oBACtB,GAA2B,CAAC,MAAM,KAAK,GAAG;oBAC1C,GAA2B,CAAC,MAAM,KAAK,SAAS,CAAC;gBAEnD,IAAI,aAAa,EAAE,CAAC;oBACnB,eAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;oBACpC,IAAK,IAAA,kBAAS,GAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC/C,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBAC9B,CAAC;gBACF,CAAC;gBACD,IAAA,uBAAe,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC3B,CAAC;QACF,CAAC;KAAA,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/utils/wrapper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@asapjs/router",
3
- "version": "1.0.0-alpha.3",
3
+ "version": "1.0.0-alpha.30",
4
4
  "description": "Router and API layer for AsapJS",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,24 +13,25 @@
13
13
  },
14
14
  "author": "",
15
15
  "license": "ISC",
16
+ "homepage": "https://www.asapjs.com",
16
17
  "publishConfig": {
17
18
  "access": "public"
18
19
  },
19
20
  "dependencies": {
20
- "@asapjs/common": "1.0.0-alpha.3",
21
- "@asapjs/error": "1.0.0-alpha.3",
22
- "@asapjs/sequelize": "1.0.0-alpha.3",
23
- "@asapjs/types": "1.0.0-alpha.3",
21
+ "@asapjs/common": "^1.0.0-alpha.30",
22
+ "@asapjs/error": "^1.0.0-alpha.30",
23
+ "@asapjs/sequelize": "^1.0.0-alpha.30",
24
+ "@asapjs/types": "^1.0.0-alpha.30",
24
25
  "@sentry/node": "^6.19.7",
25
- "body-parser": "^1.19.2",
26
+ "body-parser": "^1.20.3",
26
27
  "cors": "^2.8.5",
27
- "express": "^4.17.3",
28
+ "express": "^4.20.0",
28
29
  "express-basic-auth": "^1.2.1",
29
30
  "fs": "^0.0.1-security",
30
31
  "jsonwebtoken": "^9.0.3",
31
- "sequelize": "^6.17.0",
32
- "sequelize-typescript": "^2.1.3",
33
- "swagger-ui-express": "^4.3.0",
32
+ "sequelize": "^6.29.0",
33
+ "sequelize-typescript": "^2.1.6",
34
+ "swagger-ui-express": "^5.0.1",
34
35
  "winston": "^3.6.0"
35
36
  },
36
37
  "devDependencies": {
@@ -39,8 +40,8 @@
39
40
  "@types/express": "^4.17.13",
40
41
  "@types/jsonwebtoken": "^9.0.2",
41
42
  "@types/node": "^17.0.21",
42
- "@types/swagger-ui-express": "^4.1.3",
43
+ "@types/swagger-ui-express": "^4.1.8",
43
44
  "typescript": "^5.8.3"
44
45
  },
45
- "gitHead": "a5ddacd5a030d60c8141a84d8f4679ed4051aa7a"
46
+ "gitHead": "92f9d0a6ef735a1641a7b36a5b5989a34bbb5bc3"
46
47
  }
@@ -1,11 +0,0 @@
1
- import { Request, Response, NextFunction } from 'express';
2
- declare global {
3
- namespace Express {
4
- interface Request {
5
- user: any;
6
- }
7
- }
8
- }
9
- declare const jwtVerification: (auth?: boolean) => (req: Request, res: Response, next: NextFunction) => void;
10
- export default jwtVerification;
11
- //# sourceMappingURL=jwtVerification.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jwtVerification.d.ts","sourceRoot":"","sources":["../../src/middleware/jwtVerification.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAK1D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,OAAO,CAAC;QAChB,UAAU,OAAO;YACf,IAAI,EAAE,GAAG,CAAC;SACX;KACF;CACF;AAED,QAAA,MAAM,eAAe,GAClB,OAAM,OAAe,MACrB,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,SA2B/C,CAAC;AAEJ,eAAe,eAAe,CAAC"}