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

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,6 +1,8 @@
1
- import RouterController, { IPreference } from '../express/router';
2
1
  import { ErrorCreator } from '@asapjs/error';
3
- export interface IOptions extends Omit<IPreference, 'path' | 'excute'> {
2
+ import RouterController, { IPreference } from '../express/router';
3
+ export interface GlobalRouteOptions {
4
+ }
5
+ export interface IOptions extends Omit<IPreference, 'path' | 'excute'>, GlobalRouteOptions {
4
6
  errors?: ErrorCreator[];
5
7
  }
6
8
  export declare function Get(path: string, options: IOptions): (target: InstanceType<typeof RouterController>, propertyKey: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,EAAE,EAAE,WAAW,EAAc,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC;IACpE,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CACzB;AAkBD,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAfxB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAiBpF;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAnBzB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAqBpF;AAED,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAvBxB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAyBpF;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YA3B3B,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UA6BpF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,gBAAgB,EAAE,EAAE,WAAW,EAAc,MAAM,mBAAmB,CAAC;AAG9E,MAAM,WAAW,kBAAkB;CAAG;AAEtC,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAAC,EAAE,kBAAkB;IACxF,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;CACzB;AAiBD,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAdxB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAgBpF;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAlBzB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAoBpF;AAED,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YAtBxB,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UAwBpF;AAED,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,YA1B3B,YAAY,CAAC,OAAO,gBAAgB,CAAC,eAAe,MAAM,UA4BpF"}
@@ -10,9 +10,7 @@ function Route(path, method, options) {
10
10
  target.routes = [];
11
11
  }
12
12
  target.routes.push(Object.assign(Object.assign({ method,
13
- path }, options), {
14
- // Don't try to access the method here. Just save the method name.
15
- methodName: propertyKey }));
13
+ path }, options), { methodName: propertyKey }));
16
14
  };
17
15
  }
18
16
  function Get(path, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":";;AAuBA,kBAEC;AAED,oBAEC;AAED,kBAEC;AAED,wBAEC;AA9BD,SAAS,KAAK,CAAC,IAAY,EAAE,MAAkB,EAAE,OAAiB;IAChE,OAAO,UAAU,MAA6C,EAAE,WAAmB;QACjF,IAAI,CAAE,MAAc,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAc,CAAC,MAAM,GAAG,EAAE,CAAC;QAC9B,CAAC;QAEA,MAAc,CAAC,MAAM,CAAC,IAAI,+BACzB,MAAM;YACN,IAAI,IACD,OAAO;YACV,kEAAkE;YAClE,UAAU,EAAE,WAAW,IACvB,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,GAAG,CAAC,IAAY,EAAE,OAAiB;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,IAAI,CAAC,IAAY,EAAE,OAAiB;IAClD,OAAO,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,SAAgB,GAAG,CAAC,IAAY,EAAE,OAAiB;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,MAAM,CAAC,IAAY,EAAE,OAAiB;IACpD,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":";;AAyBA,kBAEC;AAED,oBAEC;AAED,kBAEC;AAED,wBAEC;AA7BD,SAAS,KAAK,CAAC,IAAY,EAAE,MAAkB,EAAE,OAAiB;IAChE,OAAO,UAAU,MAA6C,EAAE,WAAmB;QACjF,IAAI,CAAE,MAAc,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAc,CAAC,MAAM,GAAG,EAAE,CAAC;QAC9B,CAAC;QAEA,MAAc,CAAC,MAAM,CAAC,IAAI,+BACzB,MAAM;YACN,IAAI,IACD,OAAO,KACV,UAAU,EAAE,WAAW,IACvB,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,GAAG,CAAC,IAAY,EAAE,OAAiB;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,IAAI,CAAC,IAAY,EAAE,OAAiB;IAClD,OAAO,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,SAAgB,GAAG,CAAC,IAAY,EAAE,OAAiB;IACjD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,SAAgB,MAAM,CAAC,IAAY,EAAE,OAAiB;IACpD,OAAO,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC"}
@@ -1,6 +1,6 @@
1
+ import { type ErrorCreator } from '@asapjs/error';
2
+ import { type DtoOrTypeIs } from '@asapjs/types';
1
3
  import { Router as ExpressRouter } from 'express';
2
- import { DtoOrTypeIs } from '@asapjs/types';
3
- import { ErrorCreator } from '@asapjs/error';
4
4
  type BodyContentType = 'application/json' | 'multipart/form-data';
5
5
  export interface IPreference {
6
6
  path: string;
@@ -8,7 +8,6 @@ export interface IPreference {
8
8
  description?: string;
9
9
  deprecated?: boolean;
10
10
  summary?: string;
11
- auth?: boolean;
12
11
  body?: DtoOrTypeIs;
13
12
  bodyContentType?: BodyContentType;
14
13
  query?: DtoOrTypeIs;
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/express/router.ts"],"names":[],"mappings":"AAAA,OAAU,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAkB,MAAM,eAAe,CAAC;AAS7D,KAAK,eAAe,GAAG,kBAAkB,GAAG,qBAAqB,CAAC;AAClE,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;IACnB,MAAM,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACnB;AAUD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAC7B,QAAQ,SAAO;IAEf,aAAa,EAAE,aAAa,CAAC;;IAMpC,SAAS,CAAC,cAAc;IAaxB,OAAO,CAAC,mBAAmB,CAOxB;IAEH,OAAO,CAAC,oBAAoB,CASzB;IAEH,OAAO,CAAC,iBAAiB,CAmBvB;IAEF,OAAO,CAAC,kBAAkB,CAkBxB;IAEF,OAAO,CAAC,oBAAoB,CAuE1B;IAEF,OAAO,CAAC,0BAA0B,CA2IhC;IAEK,MAAM,GAAI,QAAQ,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,MAAM,SAAS,WAAW,UA+BlF;IAEK,MAAM;uBAjC4D,WAAW;wBAAX,WAAW;uBAAX,WAAW;0BAAX,WAAW;MAsClF;CACF;AAED,UAAU,aAAa,CAAC,CAAC;IACxB,QAAQ,CAAC,CAAC;CACV;AAED,KAAK,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9C,KAAK,oBAAoB,GACtB;IACA,IAAI,EAAE,qBAAqB,CAAC;IAC5B,IAAI,EAAE,GAAG,CAAC;CACT,GACD,SAAS,GACT,IAAI,CAAC;AAER,KAAK,cAAc,GAAG,MAAM,oBAAoB,CAAC;AAyBjD,eAAO,MAAM,WAAW,QApBlB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,cAClB,qBAAqB,YACvB,OAAO,KACb,cAiB2C,CAAC;AACjD,eAAO,MAAM,YAAY,QArBnB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,cAClB,qBAAqB,YACvB,OAAO,KACb,cAkB6C,CAAC"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/express/router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAkB,MAAM,eAAe,CAAC;AAClE,OAAO,EAAE,KAAK,WAAW,EAAqD,MAAM,eAAe,CAAC;AACpG,OAAU,EAAE,MAAM,IAAI,aAAa,EAAE,MAAM,SAAS,CAAC;AASrD,KAAK,eAAe,GAAG,kBAAkB,GAAG,qBAAqB,CAAC;AAClE,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;IACnB,MAAM,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACnB;AAUD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAC7B,QAAQ,SAAO;IAEf,aAAa,EAAE,aAAa,CAAC;;IAMpC,SAAS,CAAC,cAAc;IAaxB,OAAO,CAAC,mBAAmB,CAOxB;IAEH,OAAO,CAAC,oBAAoB,CASzB;IAEH,OAAO,CAAC,iBAAiB,CAmBvB;IAEF,OAAO,CAAC,kBAAkB,CAkBxB;IAEF,OAAO,CAAC,oBAAoB,CA8E1B;IAEF,OAAO,CAAC,0BAA0B,CA2IhC;IAEK,MAAM,GAAI,QAAQ,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,MAAM,SAAS,WAAW,UA+ClF;IAEK,MAAM;uBAjD4D,WAAW;wBAAX,WAAW;uBAAX,WAAW;0BAAX,WAAW;MAsDlF;CACF;AAED,UAAU,aAAa,CAAC,CAAC;IACxB,QAAQ,CAAC,CAAC;CACV;AAED,KAAK,qBAAqB,GAAG,MAAM,GAAG,OAAO,CAAC;AAE9C,KAAK,oBAAoB,GACtB;IACA,IAAI,EAAE,qBAAqB,CAAC;IAC5B,IAAI,EAAE,GAAG,CAAC;CACT,GACD,SAAS,GACT,IAAI,CAAC;AAER,KAAK,cAAc,GAAG,MAAM,oBAAoB,CAAC;AAyBjD,eAAO,MAAM,WAAW,QApBlB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,cAClB,qBAAqB,YACvB,OAAO,KACb,cAiB2C,CAAC;AACjD,eAAO,MAAM,YAAY,QArBnB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,cAClB,qBAAqB,YACvB,OAAO,KACb,cAkB6C,CAAC"}
@@ -4,14 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.responseType = exports.requestType = void 0;
7
- const express_1 = require("express");
8
7
  const error_1 = require("@asapjs/error");
8
+ const express_1 = require("express");
9
9
  const swagger_1 = require("../swagger");
10
- const jwtVerification_1 = __importDefault(require("../middleware/jwtVerification"));
11
- const wrapper_1 = __importDefault(require("../utils/wrapper"));
12
- const isClass_1 = __importDefault(require("../utils/isClass"));
13
- const getSchemeNameFromRef_1 = __importDefault(require("../utils/getSchemeNameFromRef"));
10
+ const collectMiddlewareErrors_1 = require("../utils/collectMiddlewareErrors");
14
11
  const generateSchemeRefWithName_1 = __importDefault(require("../utils/generateSchemeRefWithName"));
12
+ const getSchemeNameFromRef_1 = __importDefault(require("../utils/getSchemeNameFromRef"));
13
+ const isClass_1 = __importDefault(require("../utils/isClass"));
14
+ const registeredMiddlewares_1 = require("../utils/registeredMiddlewares");
15
+ const wrapper_1 = __importDefault(require("../utils/wrapper"));
15
16
  class RouterController {
16
17
  constructor() {
17
18
  this.basePath = '/';
@@ -72,13 +73,12 @@ class RouterController {
72
73
  this.generateErrorSchemes = (errors) => {
73
74
  if (!errors || errors.length === 0)
74
75
  return {};
75
- const errorResponses = {};
76
+ const byStatus = new Map();
76
77
  errors.forEach((errorCreator) => {
77
78
  const status = errorCreator._status;
78
79
  const code = errorCreator._code;
79
80
  const message = errorCreator._message;
80
81
  const schema = errorCreator._schema;
81
- // 에러 스키마를 직접 등록
82
82
  const swaggerSchema = {
83
83
  type: 'object',
84
84
  properties: {
@@ -88,9 +88,7 @@ class RouterController {
88
88
  data: {
89
89
  type: 'object',
90
90
  properties: Object.entries(schema).reduce((acc, [key, typeIs]) => {
91
- // TypeIs 스키마 변환
92
91
  if (typeIs && typeof typeIs === 'function') {
93
- // TypeIs 함수인 경우 호출하여 TypeIs 데이터 객체 가져오기
94
92
  try {
95
93
  const typeData = typeIs();
96
94
  if (typeData && typeData.toSwagger) {
@@ -102,7 +100,6 @@ class RouterController {
102
100
  }
103
101
  }
104
102
  else if (typeIs && typeof typeIs === 'object' && typeIs.toSwagger) {
105
- // TypeIs 객체인 경우 toSwagger 메서드 호출
106
103
  try {
107
104
  acc[key] = typeIs.toSwagger();
108
105
  }
@@ -111,7 +108,6 @@ class RouterController {
111
108
  }
112
109
  }
113
110
  else if (typeIs && typeof typeIs === 'object') {
114
- // 이미 swagger 스키마 객체인 경우
115
111
  acc[key] = typeIs;
116
112
  }
117
113
  return acc;
@@ -120,20 +116,32 @@ class RouterController {
120
116
  },
121
117
  required: ['status', 'errorCode', 'message'],
122
118
  };
123
- (0, swagger_1.addScheme)({
124
- name: code,
125
- data: swaggerSchema,
126
- });
127
- errorResponses[status.toString()] = {
128
- description: `${code} - ${message}`,
129
- content: {
130
- 'application/json': {
131
- schema: {
132
- $ref: (0, generateSchemeRefWithName_1.default)(code),
119
+ (0, swagger_1.addScheme)({ name: code, data: swaggerSchema });
120
+ const key = status.toString();
121
+ if (!byStatus.has(key))
122
+ byStatus.set(key, []);
123
+ byStatus.get(key).push(code);
124
+ });
125
+ const errorResponses = {};
126
+ byStatus.forEach((codes, status) => {
127
+ errorResponses[status] =
128
+ codes.length === 1
129
+ ? {
130
+ description: codes[0],
131
+ content: {
132
+ 'application/json': {
133
+ schema: { $ref: (0, generateSchemeRefWithName_1.default)(codes[0]) },
134
+ },
133
135
  },
134
- },
135
- },
136
- };
136
+ }
137
+ : {
138
+ description: codes.join(' | '),
139
+ content: {
140
+ 'application/json': {
141
+ schema: { oneOf: codes.map((c) => ({ $ref: (0, generateSchemeRefWithName_1.default)(c) })) },
142
+ },
143
+ },
144
+ };
137
145
  });
138
146
  return errorResponses;
139
147
  };
@@ -147,13 +155,16 @@ class RouterController {
147
155
  .join('/')
148
156
  : swaggerPath;
149
157
  const parameters = [];
150
- swaggerPath.split('/').forEach((v) => v.includes(':') &&
151
- parameters.push({
152
- in: 'path',
153
- name: v.replace(':', ''),
154
- required: true,
155
- schema: { type: 'string' },
156
- }));
158
+ swaggerPath.split('/').forEach((v) => {
159
+ if (v.includes(':')) {
160
+ parameters.push({
161
+ in: 'path',
162
+ name: v.replace(':', ''),
163
+ required: true,
164
+ schema: { type: 'string' },
165
+ });
166
+ }
167
+ });
157
168
  const result = {
158
169
  operationId: `${method}:${realPath}`,
159
170
  path: realPath,
@@ -250,10 +261,20 @@ class RouterController {
250
261
  return result;
251
262
  };
252
263
  this.excute = (method) => (options) => {
253
- const { path, middleware = [], auth = false, excute, title, description, deprecated = false, body, bodyContentType = 'application/json', query, response, errors, } = options;
254
- const swaggerPathInfo = this.generateSwaggerDefaultsSet(this, title || '', description || '', deprecated, path, method, body, bodyContentType, query, response, errors);
264
+ const { path, middleware = [], excute, title, description, deprecated = false, body, bodyContentType = 'application/json', query, response, errors, } = options;
265
+ const routeOptions = options;
266
+ const registeredMiddlewares = (0, registeredMiddlewares_1.getRegisteredMiddlewares)();
267
+ const globalMiddlewareErrors = (0, collectMiddlewareErrors_1.collectMiddlewareErrors)(registeredMiddlewares, routeOptions);
268
+ const routeMiddlewareErrors = (0, collectMiddlewareErrors_1.collectMiddlewareErrors)((middleware !== null && middleware !== void 0 ? middleware : []), routeOptions);
269
+ const allErrors = (0, collectMiddlewareErrors_1.deduplicateErrors)([
270
+ ...(errors !== null && errors !== void 0 ? errors : []),
271
+ ...globalMiddlewareErrors,
272
+ ...routeMiddlewareErrors,
273
+ ]);
274
+ const swaggerPathInfo = this.generateSwaggerDefaultsSet(this, title || '', description || '', deprecated, path, method, body, bodyContentType, query, response, allErrors);
255
275
  (0, swagger_1.addPaths)(swaggerPathInfo);
256
- this.expressRouter[method](path, (0, jwtVerification_1.default)(auth), ...middleware, (0, wrapper_1.default)(excute));
276
+ const factoryMiddlewares = registeredMiddlewares.map((factory) => factory(routeOptions));
277
+ this.expressRouter[method](path, ...factoryMiddlewares, ...middleware, (0, wrapper_1.default)(excute));
257
278
  };
258
279
  this.router = {
259
280
  get: this.excute('get'),
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/express/router.ts"],"names":[],"mappings":";;;;;;AAAA,qCAAqD;AAErD,yCAA6D;AAE7D,wCAAiD;AACjD,oFAA4D;AAC5D,+DAAuC;AACvC,+DAAuC;AACvC,yFAAiE;AACjE,mGAA2E;AAkC3E,MAAqB,gBAAgB;IAKpC;QAJO,aAAQ,GAAG,GAAG,CAAC;QAqBd,wBAAmB,GAAG,CAAC,GAAQ,EAAE,eAAgC,EAAE,EAAE,CAAC,CAAC;YAC9E,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE;gBACR,CAAC,eAAe,CAAC,EAAE;oBAClB,MAAM,EAAE,GAAG;iBACX;aACD;SACD,CAAC,CAAC;QAEK,yBAAoB,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC;YAC7C,KAAK,EAAE;gBACN,WAAW,EAAE,EAAE;gBACf,OAAO,EAAE;oBACR,kBAAkB,EAAE;wBACnB,MAAM,EAAE,GAAG;qBACX;iBACD;aACD;SACD,CAAC,CAAC;QAEK,sBAAiB,GAAG,CAAC,GAAQ,EAAE,MAAc,EAAE,EAAE;YACxD,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,GAAG,IAAA,8BAAoB,EAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC;gBAC3D,IAAA,mBAAS,EAAC;oBACT,IAAI;oBACJ,IAAI,EACH,MAAM,KAAK,MAAM;wBAChB,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC;4BACA,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACX,MAAM,EAAE,GAAG;6BACX;yBACD;iBACJ,CAAC,CAAC;gBACH,OAAO;oBACN,IAAI,EAAE,IAAA,mCAAyB,EAAC,IAAI,CAAC;iBACrC,CAAC;YACH,CAAC;QACF,CAAC,CAAC;QAEM,uBAAkB,GAAG,CAAC,OAAyB,EAAE,MAAc,EAAE,EAAE;;YAC1E,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;YAEvB,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;YAE3D,IAAA,mBAAS,EAAC;gBACT,IAAI;gBACJ,IAAI,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACX,MAAM,EAAE,MAAA,IAAI,CAAC,SAAS,oDAAI;qBAC1B;iBACD;aACD,CAAC,CAAC;YAEH,OAAO;gBACN,IAAI,EAAE,IAAA,mCAAyB,EAAC,IAAI,CAAC;aACrC,CAAC;QACH,CAAC,CAAC;QAEM,yBAAoB,GAAG,CAAC,MAAkC,EAAE,EAAE;YACrE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAE9C,MAAM,cAAc,GAA2B,EAAE,CAAC;YAElD,MAAM,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;gBAC/B,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;gBACpC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC;gBAChC,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC;gBACtC,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;gBAEpC,gBAAgB;gBAChB,MAAM,aAAa,GAAG;oBACrB,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACX,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE;wBAC3C,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;wBAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;wBAC7C,IAAI,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE;gCACtB,gBAAgB;gCAChB,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;oCAC5C,wCAAwC;oCACxC,IAAI,CAAC;wCACJ,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC;wCAC1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;4CACpC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;wCACjC,CAAC;oCACF,CAAC;oCAAC,OAAO,CAAC,EAAE,CAAC;wCACZ,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,cAAc,EAAE,CAAC,CAAC,CAAC;oCACzD,CAAC;gCACF,CAAC;qCAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oCACrE,iCAAiC;oCACjC,IAAI,CAAC;wCACJ,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;oCAC/B,CAAC;oCAAC,OAAO,CAAC,EAAE,CAAC;wCACZ,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,cAAc,EAAE,CAAC,CAAC,CAAC;oCACzD,CAAC;gCACF,CAAC;qCAAM,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;oCACjD,wBAAwB;oCACxB,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;gCACnB,CAAC;gCACD,OAAO,GAAG,CAAC;4BACZ,CAAC,EACD,EAAyB,CACzB;yBACD;qBACD;oBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC;iBAC5C,CAAC;gBAEF,IAAA,mBAAS,EAAC;oBACT,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,aAAa;iBACnB,CAAC,CAAC;gBAEH,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG;oBACnC,WAAW,EAAE,GAAG,IAAI,MAAM,OAAO,EAAE;oBACnC,OAAO,EAAE;wBACR,kBAAkB,EAAE;4BACnB,MAAM,EAAE;gCACP,IAAI,EAAE,IAAA,mCAAyB,EAAC,IAAI,CAAC;6BACrC;yBACD;qBACD;iBACD,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,cAAc,CAAC;QACvB,CAAC,CAAC;QAEM,+BAA0B,GAAG,CACpC,MAAW,EACX,KAAa,EACb,WAAmB,EACnB,UAAmB,EACnB,IAAY,EACZ,MAAc,EACd,IAAS,EACT,eAAgC,EAChC,KAAU,EACV,QAAa,EACb,MAAkC,EACjC,EAAE;;YACH,MAAM,WAAW,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC5E,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACzC,CAAC,CAAC,WAAW;qBACV,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBACrE,IAAI,CAAC,GAAG,CAAC;gBACZ,CAAC,CAAC,WAAW,CAAC;YAEf,MAAM,UAAU,GAAwB,EAAE,CAAC;YAE3C,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAC7B,CAAC,CAAS,EAAE,EAAE,CACb,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACf,UAAU,CAAC,IAAI,CAAC;oBACf,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;oBACxB,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAA2B;gBACtC,WAAW,EAAE,GAAG,MAAM,IAAI,QAAQ,EAAE;gBACpC,IAAI,EAAE,QAAQ;gBACd,MAAM;gBACN,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;gBAClB,OAAO,EAAE,KAAK;gBACd,WAAW,EAAE,WAAW;gBACxB,UAAU;aACV,CAAC;YAEF,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACJ,IAAI,IAAA,iBAAO,EAAC,IAAI,CAAC,EAAE,CAAC;wBACnB,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;wBAC5B,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;4BAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;4BAChC,uDAAuD;4BACvD,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,KAAI,OAAO,QAAQ,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gCACjE,MAAM,QAAQ,GAAG,IAAA,8BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCACjD,IAAA,mBAAS,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;4BAChE,CAAC;4BACD,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAC5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,EACpC,eAAe,CACf,CAAC;wBACH,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,MAAM,IAAI,GAAG,IAAI,EAAE,CAAC;wBACpB,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE,CAAC;4BAChD,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAC5C,IAAI,CAAC,iBAAiB,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,oDAAI,EAAE,MAAM,CAAC,EACnD,eAAe,CACf,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACP,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAC5C,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,EACrC,eAAe,CACf,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;gBACvD,CAAC;YACF,CAAC;YAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,CAAC;oBACJ,MAAM,QAAQ,GAAG,IAAI,KAAK,EAAE,CAAC;oBAC7B,IAAI,OAAO,QAAQ,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;wBACnD,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;wBACvC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;4BAC5C,UAAU,CAAC,IAAI,CAAC;gCACf,EAAE,EAAE,OAAO;gCACX,IAAI,EAAE,GAAG;gCACT,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gCAC5B,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,WAAW;6BAC7C,CAAC,CAAC;wBACJ,CAAC,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;gBACxD,CAAC;YACF,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACJ,IAAI,IAAA,iBAAO,EAAC,QAAQ,CAAC,EAAE,CAAC;wBACvB,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;wBAChC,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;4BAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;4BAChC,uDAAuD;4BACvD,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,KAAI,OAAO,QAAQ,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;gCACjE,MAAM,QAAQ,GAAG,IAAA,8BAAoB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCACjD,IAAA,mBAAS,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;4BAChE,CAAC;4BACD,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;wBACxF,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC;wBACxB,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE,CAAC;4BAChD,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAC3C,IAAI,CAAC,iBAAiB,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,oDAAI,EAAE,UAAU,CAAC,CACvD,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACP,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAC3C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAC7C,CAAC;wBACH,CAAC;oBACF,CAAC;gBACF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;oBAC1D,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;gBACvB,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;YACvB,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YACzD,MAAM,CAAC,SAAS,mCAAQ,MAAM,CAAC,SAAS,GAAK,cAAc,CAAE,CAAC;YAE9D,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;YAChC,CAAC;YAED,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;QAEK,WAAM,GAAG,CAAC,MAAyC,EAAE,EAAE,CAAC,CAAC,OAAoB,EAAE,EAAE;YACvF,MAAM,EACL,IAAI,EACJ,UAAU,GAAG,EAAE,EACf,IAAI,GAAG,KAAK,EACZ,MAAM,EACN,KAAK,EACL,WAAW,EACX,UAAU,GAAG,KAAK,EAClB,IAAI,EACJ,eAAe,GAAG,kBAAkB,EACpC,KAAK,EACL,QAAQ,EACR,MAAM,GACN,GAAgB,OAAO,CAAC;YAEzB,MAAM,eAAe,GAAG,IAAI,CAAC,0BAA0B,CACtD,IAAI,EACJ,KAAK,IAAI,EAAE,EACX,WAAW,IAAI,EAAE,EACjB,UAAU,EACV,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,eAAe,EACf,KAAK,EACL,QAAQ,EACR,MAAM,CACN,CAAC;YACF,IAAA,kBAAQ,EAAC,eAAe,CAAC,CAAC;YAC1B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAA,yBAAe,EAAC,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,IAAA,iBAAO,EAAC,MAAM,CAAC,CAAC,CAAC;QACzF,CAAC,CAAC;QAEK,WAAM,GAAG;YACf,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACzB,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;SAC7B,CAAC;QAzUD,IAAI,CAAC,aAAa,GAAG,IAAA,gBAAa,GAAE,CAAC;IACtC,CAAC;IAES,cAAc;QACvB,MAAM,MAAM,GAA4B,IAAY,CAAC,MAAM,CAAC;QAC5D,IAAI,MAAM,EAAE,CAAC;YACZ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,iCACrB,KAAK;oBACR,2EAA2E;oBAC3E,MAAM,EAAE,IAAA,sBAAc,EAAE,IAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IACjE,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;CA4TD;AAhVD,mCAgVC;AA0BD,MAAM,UAAU,GACf,CAAC,IAAI,EAAE,EAAE,CACT,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE,CAC7C,GAAG,EAAE;IACJ,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,OAAO;QACnB,CAAC,CAAC;YACA,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,GAAG;SACV;QACF,CAAC,CAAC,GAAG,CAAC;IACP,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAClC,CAAC,CAAC;AACU,QAAA,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC;AACpC,QAAA,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/express/router.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,11 +1,13 @@
1
- export { RouterPlugin } from './plugin';
2
- export { default as RouterModule } from './router/index';
1
+ export type { InferMiddlewareRouteOptions } from '@asapjs/types';
2
+ export { Delete, Get, GlobalRouteOptions, IOptions, Post, Put } from './decorator';
3
3
  export { default as RouterController, requestType, responseType } from './express/router';
4
- export { default as jwtVerification } from './middleware/jwtVerification';
5
4
  export { HttpException } from './middleware/errorHandler';
6
- export { ExecuteArgs } from './utils/wrapper';
5
+ export { RouterPlugin } from './plugin';
6
+ export { default as RouterModule } from './router/index';
7
7
  export { addPaths, addScheme, getSwaggerData } from './swagger';
8
+ export { CreateExecuteArgs, defineConfig, defineRouterConfig } from './utils/defineConfig';
9
+ export { defineMiddleware } from './utils/defineMiddleware';
8
10
  export { default as generateSchemeRefWithName } from './utils/generateSchemeRefWithName';
9
11
  export { default as getSchemeNameFromRef } from './utils/getSchemeNameFromRef';
10
- export { Get, Post, Put, Delete } from './decorator';
12
+ export { ExecuteArgs, GlobalMiddlewareContext } from './utils/wrapper';
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -3,30 +3,33 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Delete = exports.Put = exports.Post = exports.Get = exports.getSchemeNameFromRef = exports.generateSchemeRefWithName = exports.getSwaggerData = exports.addScheme = exports.addPaths = exports.HttpException = exports.jwtVerification = exports.responseType = exports.requestType = exports.RouterController = exports.RouterModule = exports.RouterPlugin = void 0;
7
- var plugin_1 = require("./plugin");
8
- Object.defineProperty(exports, "RouterPlugin", { enumerable: true, get: function () { return plugin_1.RouterPlugin; } });
9
- var index_1 = require("./router/index"); // Deprecated - for backward compatibility
10
- Object.defineProperty(exports, "RouterModule", { enumerable: true, get: function () { return __importDefault(index_1).default; } });
6
+ exports.getSchemeNameFromRef = exports.generateSchemeRefWithName = exports.defineMiddleware = exports.defineRouterConfig = exports.defineConfig = exports.getSwaggerData = exports.addScheme = exports.addPaths = exports.RouterModule = exports.RouterPlugin = exports.HttpException = exports.responseType = exports.requestType = exports.RouterController = exports.Put = exports.Post = exports.Get = exports.Delete = void 0;
7
+ var decorator_1 = require("./decorator");
8
+ Object.defineProperty(exports, "Delete", { enumerable: true, get: function () { return decorator_1.Delete; } });
9
+ Object.defineProperty(exports, "Get", { enumerable: true, get: function () { return decorator_1.Get; } });
10
+ Object.defineProperty(exports, "Post", { enumerable: true, get: function () { return decorator_1.Post; } });
11
+ Object.defineProperty(exports, "Put", { enumerable: true, get: function () { return decorator_1.Put; } });
11
12
  var router_1 = require("./express/router");
12
13
  Object.defineProperty(exports, "RouterController", { enumerable: true, get: function () { return __importDefault(router_1).default; } });
13
14
  Object.defineProperty(exports, "requestType", { enumerable: true, get: function () { return router_1.requestType; } });
14
15
  Object.defineProperty(exports, "responseType", { enumerable: true, get: function () { return router_1.responseType; } });
15
- var jwtVerification_1 = require("./middleware/jwtVerification");
16
- Object.defineProperty(exports, "jwtVerification", { enumerable: true, get: function () { return __importDefault(jwtVerification_1).default; } });
17
16
  var errorHandler_1 = require("./middleware/errorHandler");
18
17
  Object.defineProperty(exports, "HttpException", { enumerable: true, get: function () { return errorHandler_1.HttpException; } });
18
+ var plugin_1 = require("./plugin");
19
+ Object.defineProperty(exports, "RouterPlugin", { enumerable: true, get: function () { return plugin_1.RouterPlugin; } });
20
+ var index_1 = require("./router/index"); // Deprecated - for backward compatibility
21
+ Object.defineProperty(exports, "RouterModule", { enumerable: true, get: function () { return __importDefault(index_1).default; } });
19
22
  var swagger_1 = require("./swagger");
20
23
  Object.defineProperty(exports, "addPaths", { enumerable: true, get: function () { return swagger_1.addPaths; } });
21
24
  Object.defineProperty(exports, "addScheme", { enumerable: true, get: function () { return swagger_1.addScheme; } });
22
25
  Object.defineProperty(exports, "getSwaggerData", { enumerable: true, get: function () { return swagger_1.getSwaggerData; } });
26
+ var defineConfig_1 = require("./utils/defineConfig");
27
+ Object.defineProperty(exports, "defineConfig", { enumerable: true, get: function () { return defineConfig_1.defineConfig; } });
28
+ Object.defineProperty(exports, "defineRouterConfig", { enumerable: true, get: function () { return defineConfig_1.defineRouterConfig; } });
29
+ var defineMiddleware_1 = require("./utils/defineMiddleware");
30
+ Object.defineProperty(exports, "defineMiddleware", { enumerable: true, get: function () { return defineMiddleware_1.defineMiddleware; } });
23
31
  var generateSchemeRefWithName_1 = require("./utils/generateSchemeRefWithName");
24
32
  Object.defineProperty(exports, "generateSchemeRefWithName", { enumerable: true, get: function () { return __importDefault(generateSchemeRefWithName_1).default; } });
25
33
  var getSchemeNameFromRef_1 = require("./utils/getSchemeNameFromRef");
26
34
  Object.defineProperty(exports, "getSchemeNameFromRef", { enumerable: true, get: function () { return __importDefault(getSchemeNameFromRef_1).default; } });
27
- var decorator_1 = require("./decorator");
28
- Object.defineProperty(exports, "Get", { enumerable: true, get: function () { return decorator_1.Get; } });
29
- Object.defineProperty(exports, "Post", { enumerable: true, get: function () { return decorator_1.Post; } });
30
- Object.defineProperty(exports, "Put", { enumerable: true, get: function () { return decorator_1.Put; } });
31
- Object.defineProperty(exports, "Delete", { enumerable: true, get: function () { return decorator_1.Delete; } });
32
35
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAwC;AAA/B,sGAAA,YAAY,OAAA;AACrB,wCAAyD,CAAC,0CAA0C;AAA3F,sHAAA,OAAO,OAAgB;AAChC,2CAA0F;AAAjF,2HAAA,OAAO,OAAoB;AAAE,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAC/D,gEAA0E;AAAjE,mIAAA,OAAO,OAAmB;AACnC,0DAA0D;AAAjD,6GAAA,aAAa,OAAA;AAEtB,qCAAgE;AAAvD,mGAAA,QAAQ,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,yGAAA,cAAc,OAAA;AAC5C,+EAAyF;AAAhF,uJAAA,OAAO,OAA6B;AAC7C,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,yCAAqD;AAA5C,gGAAA,GAAG,OAAA;AAAE,iGAAA,IAAI,OAAA;AAAE,gGAAA,GAAG,OAAA;AAAE,mGAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,yCAAmF;AAA1E,mGAAA,MAAM,OAAA;AAAE,gGAAA,GAAG,OAAA;AAAgC,iGAAA,IAAI,OAAA;AAAE,gGAAA,GAAG,OAAA;AAC7D,2CAA0F;AAAjF,2HAAA,OAAO,OAAoB;AAAE,qGAAA,WAAW,OAAA;AAAE,sGAAA,YAAY,OAAA;AAC/D,0DAA0D;AAAjD,6GAAA,aAAa,OAAA;AACtB,mCAAwC;AAA/B,sGAAA,YAAY,OAAA;AACrB,wCAAyD,CAAC,0CAA0C;AAA3F,sHAAA,OAAO,OAAgB;AAChC,qCAAgE;AAAvD,mGAAA,QAAQ,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,yGAAA,cAAc,OAAA;AAC5C,qDAA2F;AAA/D,4GAAA,YAAY,OAAA;AAAE,kHAAA,kBAAkB,OAAA;AAC5D,6DAA4D;AAAnD,oHAAA,gBAAgB,OAAA;AACzB,+EAAyF;AAAhF,uJAAA,OAAO,OAA6B;AAC7C,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB"}
@@ -1,9 +1,9 @@
1
- import { NextFunction, Request, Response } from 'express';
1
+ import type { NextFunction, Request, Response } from 'express';
2
2
  export declare class HttpException extends Error {
3
3
  status: number;
4
4
  message: string;
5
5
  constructor(status?: number, message?: string);
6
6
  }
7
- declare const errorHandler: (error: HttpException, req: Request, res: Response, next: NextFunction) => void;
7
+ declare const errorHandler: (error: unknown, _req: Request, res: Response, _next: NextFunction) => Response<any, Record<string, any>> | undefined;
8
8
  export default errorHandler;
9
9
  //# sourceMappingURL=errorHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../src/middleware/errorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE1D,qBAAa,aAAc,SAAQ,KAAK;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,OAAO,EAAE,MAAM,CAAC;gBAEX,MAAM,GAAE,MAAY,EAAE,OAAO,GAAE,MAAgC;CAK5E;AAED,QAAA,MAAM,YAAY,GAAI,OAAO,aAAa,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,SAG1F,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"errorHandler.d.ts","sourceRoot":"","sources":["../../src/middleware/errorHandler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/D,qBAAa,aAAc,SAAQ,KAAK;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;gBAEX,MAAM,GAAE,MAAY,EAAE,OAAO,GAAE,MAAgC;CAK3E;AAED,QAAA,MAAM,YAAY,GAAI,OAAO,OAAO,EAAE,MAAM,OAAO,EAAE,KAAK,QAAQ,EAAE,OAAO,YAAY,mDAUtF,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HttpException = void 0;
4
+ const error_1 = require("@asapjs/error");
4
5
  class HttpException extends Error {
5
6
  constructor(status = 500, message = '알 수 없는 서버 오류가 발생했습니다.') {
6
7
  super(message);
@@ -9,9 +10,16 @@ class HttpException extends Error {
9
10
  }
10
11
  }
11
12
  exports.HttpException = HttpException;
12
- const errorHandler = (error, req, res, next) => {
13
- const { status = 500, message } = error;
14
- res.status(status).json({ status, message });
13
+ const errorHandler = (error, _req, res, _next) => {
14
+ if (error instanceof error_1.HttpError) {
15
+ return res.status(error.status).json(error.toJSON());
16
+ }
17
+ if (error && typeof error === 'object' && 'status' in error && 'message' in error) {
18
+ const { status, message } = error;
19
+ return res.status(status).json(new error_1.HttpError(status, 'HTTP_EXCEPTION', String(message)).toJSON());
20
+ }
21
+ const message = error instanceof Error ? error.message : '알 수 없는 서버 오류가 발생했습니다.';
22
+ res.status(500).json(new error_1.HttpError(500, 'INTERNAL_SERVER_ERROR', message).toJSON());
15
23
  };
16
24
  exports.default = errorHandler;
17
25
  //# sourceMappingURL=errorHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errorHandler.js","sourceRoot":"","sources":["../../src/middleware/errorHandler.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAc,SAAQ,KAAK;IAKtC,YAAY,SAAiB,GAAG,EAAE,UAAkB,uBAAuB;QACzE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AAVD,sCAUC;AAED,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;IAC7F,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACxC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"errorHandler.js","sourceRoot":"","sources":["../../src/middleware/errorHandler.ts"],"names":[],"mappings":";;;AAAA,yCAA0C;AAG1C,MAAa,aAAc,SAAQ,KAAK;IAIvC,YAAY,SAAiB,GAAG,EAAE,UAAkB,uBAAuB;QAC1E,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;CACD;AATD,sCASC;AAED,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,IAAa,EAAE,GAAa,EAAE,KAAmB,EAAE,EAAE;IAC1F,IAAI,KAAK,YAAY,iBAAS,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACnF,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAA4C,CAAC;QACzE,OAAO,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;IACnG,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC;IACjF,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,iBAAS,CAAC,GAAG,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACrF,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
package/dist/plugin.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { AsapJSPlugin, AsapJSConfig, PluginContext } from '@asapjs/types';
1
+ import type { AsapJSConfig, AsapJSPlugin, PluginContext } from '@asapjs/types';
2
2
  export declare class RouterPlugin implements AsapJSPlugin {
3
3
  name: string;
4
4
  private config;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAa1E,qBAAa,YAAa,YAAW,YAAY;IAC/C,IAAI,SAAoB;IACxB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,GAAG,CAAsB;IAE3B,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;YAmCzD,UAAU;IAmCxB,OAAO,CAAC,YAAY;IAsCpB,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,eAAe;CAYxB"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAY/E,qBAAa,YAAa,YAAW,YAAY;IAChD,IAAI,SAAoB;IACxB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,GAAG,CAAsB;IAE3B,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;YAuCzD,UAAU;IAmCxB,OAAO,CAAC,YAAY;IA0CpB,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,eAAe;CAevB"}
package/dist/plugin.js CHANGED
@@ -14,15 +14,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.RouterPlugin = void 0;
16
16
  const common_1 = require("@asapjs/common");
17
- const express_1 = __importDefault(require("express"));
17
+ const schema_1 = require("@asapjs/schema");
18
18
  const body_parser_1 = __importDefault(require("body-parser"));
19
19
  const cors_1 = __importDefault(require("cors"));
20
- const swagger_ui_express_1 = __importDefault(require("swagger-ui-express"));
20
+ const express_1 = __importDefault(require("express"));
21
21
  const express_basic_auth_1 = __importDefault(require("express-basic-auth"));
22
+ const swagger_ui_express_1 = __importDefault(require("swagger-ui-express"));
22
23
  const errorHandler_1 = __importDefault(require("./middleware/errorHandler"));
23
- const wrapper_1 = __importDefault(require("./utils/wrapper"));
24
24
  const swagger_1 = require("./swagger");
25
25
  const generateSchemeRefWithName_1 = __importDefault(require("./utils/generateSchemeRefWithName"));
26
+ const registeredMiddlewares_1 = require("./utils/registeredMiddlewares");
27
+ const wrapper_1 = __importDefault(require("./utils/wrapper"));
26
28
  class RouterPlugin {
27
29
  constructor() {
28
30
  this.name = '@asapjs/router';
@@ -34,7 +36,11 @@ class RouterPlugin {
34
36
  // Inject swagger functions into sequelize if available
35
37
  if (config.extensions.includes('@asapjs/sequelize')) {
36
38
  try {
37
- const { setSwaggerFunctions } = require('@asapjs/sequelize');
39
+ const { setSwaggerFunctions, registerSequelizeTypes } = require('@asapjs/sequelize');
40
+ if (!schema_1.registry.has('sequelize')) {
41
+ schema_1.registry.register(schema_1.sequelizePlugin);
42
+ }
43
+ registerSequelizeTypes();
38
44
  setSwaggerFunctions(swagger_1.addScheme, generateSchemeRefWithName_1.default);
39
45
  }
40
46
  catch (error) {
@@ -93,6 +99,8 @@ class RouterPlugin {
93
99
  }
94
100
  setupSwagger() {
95
101
  var _a, _b;
102
+ const swaggerUiPath = `${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`;
103
+ const swaggerUiPaths = [swaggerUiPath, `${swaggerUiPath}/`];
96
104
  const options = {
97
105
  swaggerOptions: {
98
106
  url: `${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger.json`,
@@ -101,7 +109,7 @@ class RouterPlugin {
101
109
  };
102
110
  if (((_a = this.config.swagger) === null || _a === void 0 ? void 0 : _a.useAuth) && ((_b = this.config.swagger) === null || _b === void 0 ? void 0 : _b.userObject)) {
103
111
  common_1.logger.info('@router SWAGGER useAuth is Active');
104
- this.app.use(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`, (0, express_basic_auth_1.default)({
112
+ this.app.use(swaggerUiPaths, (0, express_basic_auth_1.default)({
105
113
  users: this.config.swagger.userObject,
106
114
  challenge: true,
107
115
  realm: 'Developer',
@@ -109,7 +117,7 @@ class RouterPlugin {
109
117
  }
110
118
  else {
111
119
  common_1.logger.warn('@router SWAGGER useAuth is disabled! Please add config.swagger.useAuth & config.swagger.userObject');
112
- this.app.use(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`, swagger_ui_express_1.default.serveFiles(undefined, options), swagger_ui_express_1.default.setup(undefined, options));
120
+ this.app.use(swaggerUiPaths, swagger_ui_express_1.default.serveFiles(undefined, options), swagger_ui_express_1.default.setup(undefined, options));
113
121
  }
114
122
  this.app.get(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger.json`, (0, wrapper_1.default)((_a) => __awaiter(this, [_a], void 0, function* ({ req }) {
115
123
  const swaggerData = (0, swagger_1.getSwaggerData)(req);
@@ -141,6 +149,7 @@ class RouterPlugin {
141
149
  }
142
150
  }
143
151
  initMiddlewares() {
152
+ var _a;
144
153
  this.app.use((0, cors_1.default)());
145
154
  this.app.use(body_parser_1.default.json({ limit: '200mb' }));
146
155
  this.app.use(body_parser_1.default.urlencoded({ limit: '200mb', extended: true }));
@@ -151,6 +160,9 @@ class RouterPlugin {
151
160
  this.app.use(middleware);
152
161
  });
153
162
  }
163
+ if ((_a = this.config.router) === null || _a === void 0 ? void 0 : _a.middleware) {
164
+ (0, registeredMiddlewares_1.setRegisteredMiddlewares)(this.config.router.middleware);
165
+ }
154
166
  }
155
167
  }
156
168
  exports.RouterPlugin = RouterPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,SAAS,CAAC;AAU9B,MAAM,CAAC,OAAO,OAAO,YAAY;IAC/B,OAAO,CAAC,MAAM,CAAM;IAEb,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;gBAEpB,OAAO,EAAE,MAAM;IAQ3B,OAAO,CAAC,UAAU;IAwGlB,OAAO,CAAC,eAAe;CAYxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/router/index.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,SAAS,CAAC;AAW9B,MAAM,CAAC,OAAO,OAAO,YAAY;IAC/B,OAAO,CAAC,MAAM,CAAM;IAEb,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;gBAEpB,OAAO,EAAE,MAAM;IAqB3B,OAAO,CAAC,UAAU;IA0GlB,OAAO,CAAC,eAAe;CAYxB"}
@@ -21,11 +21,24 @@ const swagger_ui_express_1 = __importDefault(require("swagger-ui-express"));
21
21
  const errorHandler_1 = __importDefault(require("../middleware/errorHandler"));
22
22
  const wrapper_1 = __importDefault(require("../utils/wrapper"));
23
23
  const swagger_1 = require("../swagger");
24
+ const schema_1 = require("@asapjs/schema");
24
25
  // Sequelize imports will be dynamically loaded when needed
25
26
  class RouterModule {
26
27
  constructor(dirname) {
27
28
  this.config = (0, common_1.getConfig)();
28
29
  this.app = (0, express_1.default)();
30
+ if (this.config.extensions.includes('@asapjs/sequelize')) {
31
+ try {
32
+ const { registerSequelizeTypes } = require('@asapjs/sequelize');
33
+ if (!schema_1.registry.has('sequelize')) {
34
+ schema_1.registry.register(schema_1.sequelizePlugin);
35
+ }
36
+ registerSequelizeTypes();
37
+ }
38
+ catch (error) {
39
+ common_1.logger.error('Failed to pre-register sequelize schema types in router module', error);
40
+ }
41
+ }
29
42
  this.initMiddlewares();
30
43
  this.initRouter(dirname);
31
44
  this.app.use(errorHandler_1.default);
@@ -60,11 +73,13 @@ class RouterModule {
60
73
  persistAuthorization: true,
61
74
  },
62
75
  };
76
+ const swaggerUiPath = `${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`;
77
+ const swaggerUiPaths = [swaggerUiPath, `${swaggerUiPath}/`];
63
78
  // conditional Swagger UI password setup logic
64
79
  const config = (0, common_1.getConfig)();
65
80
  if (((_a = config === null || config === void 0 ? void 0 : config.swagger) === null || _a === void 0 ? void 0 : _a.useAuth) && ((_b = config === null || config === void 0 ? void 0 : config.swagger) === null || _b === void 0 ? void 0 : _b.userObject)) {
66
81
  common_1.logger.info('@router SWAGGER useAuth is Active');
67
- this.app.use(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`, (0, express_basic_auth_1.default)({
82
+ this.app.use(swaggerUiPaths, (0, express_basic_auth_1.default)({
68
83
  users: (_c = config === null || config === void 0 ? void 0 : config.swagger) === null || _c === void 0 ? void 0 : _c.userObject,
69
84
  challenge: true,
70
85
  realm: 'Developer',
@@ -78,7 +93,7 @@ class RouterModule {
78
93
  }
79
94
  else {
80
95
  common_1.logger.warn('@router SWAGGER useAuth is disabled! Please add config.swagger.useAuth & config.swagger.userObject');
81
- this.app.use(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger-ui.html`, swagger_ui_express_1.default.serveFiles(undefined, options), swagger_ui_express_1.default.setup(undefined, options));
96
+ this.app.use(swaggerUiPaths, swagger_ui_express_1.default.serveFiles(undefined, options), swagger_ui_express_1.default.setup(undefined, options));
82
97
  this.app.get(`${this.config.basePath ? `/${this.config.basePath}` : ''}/docs/swagger.json`, (0, wrapper_1.default)((_a) => __awaiter(this, [_a], void 0, function* ({ req }) {
83
98
  const swaggerData = (0, swagger_1.getSwaggerData)(req);
84
99
  return swaggerData;