@asapjs/sequelize 0.10.44 → 1.0.0-20

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 (157) hide show
  1. package/dist/console/index.js +4 -4
  2. package/dist/console/index.js.map +1 -1
  3. package/dist/dbml/index.d.ts.map +1 -1
  4. package/dist/dbml/index.js +2 -2
  5. package/dist/dbml/index.js.map +1 -1
  6. package/dist/dto/ExtendableDto.d.ts +42 -3
  7. package/dist/dto/ExtendableDto.d.ts.map +1 -1
  8. package/dist/dto/ExtendableDto.js +62 -49
  9. package/dist/dto/ExtendableDto.js.map +1 -1
  10. package/dist/dto/PaginationQueryDto.d.ts +2 -0
  11. package/dist/dto/PaginationQueryDto.d.ts.map +1 -1
  12. package/dist/dto/PaginationQueryDto.js +5 -4
  13. package/dist/dto/PaginationQueryDto.js.map +1 -1
  14. package/dist/dto/index.d.ts +2 -2
  15. package/dist/dto/index.d.ts.map +1 -1
  16. package/dist/dto/index.js +2 -2
  17. package/dist/dto/index.js.map +1 -1
  18. package/dist/index.d.ts +8 -3
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +25 -4
  21. package/dist/index.js.map +1 -1
  22. package/dist/plugin.d.ts +8 -0
  23. package/dist/plugin.d.ts.map +1 -0
  24. package/dist/plugin.js +68 -0
  25. package/dist/plugin.js.map +1 -0
  26. package/dist/repository/index.d.ts +18 -9
  27. package/dist/repository/index.d.ts.map +1 -1
  28. package/dist/repository/index.js +27 -24
  29. package/dist/repository/index.js.map +1 -1
  30. package/dist/sequelize/index.d.ts.map +1 -1
  31. package/dist/sequelize/index.js +47 -21
  32. package/dist/sequelize/index.js.map +1 -1
  33. package/dist/table/index.d.ts.map +1 -1
  34. package/dist/table/index.js +17 -3
  35. package/dist/table/index.js.map +1 -1
  36. package/dist/types/belongsto.d.ts +1 -1
  37. package/dist/types/belongsto.d.ts.map +1 -1
  38. package/dist/types/belongsto.js +6 -2
  39. package/dist/types/belongsto.js.map +1 -1
  40. package/dist/types/decorators.d.ts +4 -0
  41. package/dist/types/decorators.d.ts.map +1 -0
  42. package/dist/types/decorators.js +56 -0
  43. package/dist/types/decorators.js.map +1 -0
  44. package/dist/types/foreignkey.d.ts +1 -1
  45. package/dist/types/foreignkey.d.ts.map +1 -1
  46. package/dist/types/foreignkey.js +12 -7
  47. package/dist/types/foreignkey.js.map +1 -1
  48. package/dist/types/generators/toSequelizeGenerator.d.ts +1 -1
  49. package/dist/types/generators/toSequelizeGenerator.d.ts.map +1 -1
  50. package/dist/types/generators/toSwaggerGenerator.d.ts +1 -1
  51. package/dist/types/generators/toSwaggerGenerator.d.ts.map +1 -1
  52. package/dist/types/generators/typeGenerator.d.ts +1 -1
  53. package/dist/types/generators/typeGenerator.d.ts.map +1 -1
  54. package/dist/types/generators/typeGenerator.js +27 -4
  55. package/dist/types/generators/typeGenerator.js.map +1 -1
  56. package/dist/types/index.d.ts +5 -23
  57. package/dist/types/index.d.ts.map +1 -1
  58. package/dist/types/index.js +4 -38
  59. package/dist/types/index.js.map +1 -1
  60. package/dist/types/paging.d.ts +1 -1
  61. package/dist/types/paging.d.ts.map +1 -1
  62. package/dist/types/paging.js +3 -3
  63. package/dist/types/paging.js.map +1 -1
  64. package/dist/types/query.d.ts +1 -1
  65. package/dist/types/query.d.ts.map +1 -1
  66. package/dist/types/query.js +2 -2
  67. package/dist/types/query.js.map +1 -1
  68. package/dist/types/register.d.ts +2 -0
  69. package/dist/types/register.d.ts.map +1 -0
  70. package/dist/types/register.js +53 -0
  71. package/dist/types/register.js.map +1 -0
  72. package/dist/types/schema-extensions.d.ts +116 -0
  73. package/dist/types/schema-extensions.d.ts.map +1 -0
  74. package/dist/types/schema-extensions.js +150 -0
  75. package/dist/types/schema-extensions.js.map +1 -0
  76. package/dist/utils/getUserIdInQuery.d.ts.map +1 -1
  77. package/dist/utils/isClass.d.ts.map +1 -1
  78. package/dist/utils/promiseTimeout.d.ts.map +1 -1
  79. package/dist/utils/swagger.d.ts +4 -0
  80. package/dist/utils/swagger.d.ts.map +1 -0
  81. package/dist/utils/swagger.js +26 -0
  82. package/dist/utils/swagger.js.map +1 -0
  83. package/package.json +44 -33
  84. package/.yarnrc.yml +0 -1
  85. package/dist/types/array.d.ts +0 -7
  86. package/dist/types/array.d.ts.map +0 -1
  87. package/dist/types/array.js +0 -58
  88. package/dist/types/array.js.map +0 -1
  89. package/dist/types/base64.d.ts +0 -10
  90. package/dist/types/base64.d.ts.map +0 -1
  91. package/dist/types/base64.js +0 -20
  92. package/dist/types/base64.js.map +0 -1
  93. package/dist/types/bigint.d.ts +0 -12
  94. package/dist/types/bigint.d.ts.map +0 -1
  95. package/dist/types/bigint.js +0 -27
  96. package/dist/types/bigint.js.map +0 -1
  97. package/dist/types/binary.d.ts +0 -10
  98. package/dist/types/binary.d.ts.map +0 -1
  99. package/dist/types/binary.js +0 -20
  100. package/dist/types/binary.js.map +0 -1
  101. package/dist/types/boolean.d.ts +0 -9
  102. package/dist/types/boolean.d.ts.map +0 -1
  103. package/dist/types/boolean.js +0 -27
  104. package/dist/types/boolean.js.map +0 -1
  105. package/dist/types/dateonly.d.ts +0 -8
  106. package/dist/types/dateonly.d.ts.map +0 -1
  107. package/dist/types/dateonly.js +0 -20
  108. package/dist/types/dateonly.js.map +0 -1
  109. package/dist/types/datetime.d.ts +0 -8
  110. package/dist/types/datetime.d.ts.map +0 -1
  111. package/dist/types/datetime.js +0 -20
  112. package/dist/types/datetime.js.map +0 -1
  113. package/dist/types/decemal.d.ts +0 -11
  114. package/dist/types/decemal.d.ts.map +0 -1
  115. package/dist/types/decemal.js +0 -30
  116. package/dist/types/decemal.js.map +0 -1
  117. package/dist/types/double.d.ts +0 -11
  118. package/dist/types/double.d.ts.map +0 -1
  119. package/dist/types/double.js +0 -27
  120. package/dist/types/double.js.map +0 -1
  121. package/dist/types/dto.d.ts +0 -10
  122. package/dist/types/dto.d.ts.map +0 -1
  123. package/dist/types/dto.js +0 -23
  124. package/dist/types/dto.js.map +0 -1
  125. package/dist/types/enum.d.ts +0 -9
  126. package/dist/types/enum.d.ts.map +0 -1
  127. package/dist/types/enum.js +0 -26
  128. package/dist/types/enum.js.map +0 -1
  129. package/dist/types/float.d.ts +0 -11
  130. package/dist/types/float.d.ts.map +0 -1
  131. package/dist/types/float.js +0 -27
  132. package/dist/types/float.js.map +0 -1
  133. package/dist/types/int.d.ts +0 -12
  134. package/dist/types/int.d.ts.map +0 -1
  135. package/dist/types/int.js +0 -27
  136. package/dist/types/int.js.map +0 -1
  137. package/dist/types/json.d.ts +0 -9
  138. package/dist/types/json.d.ts.map +0 -1
  139. package/dist/types/json.js +0 -31
  140. package/dist/types/json.js.map +0 -1
  141. package/dist/types/long.d.ts +0 -12
  142. package/dist/types/long.d.ts.map +0 -1
  143. package/dist/types/long.js +0 -27
  144. package/dist/types/long.js.map +0 -1
  145. package/dist/types/password.d.ts +0 -6
  146. package/dist/types/password.d.ts.map +0 -1
  147. package/dist/types/password.js +0 -20
  148. package/dist/types/password.js.map +0 -1
  149. package/dist/types/string.d.ts +0 -11
  150. package/dist/types/string.d.ts.map +0 -1
  151. package/dist/types/string.js +0 -26
  152. package/dist/types/string.js.map +0 -1
  153. package/dist/types/text.d.ts +0 -9
  154. package/dist/types/text.d.ts.map +0 -1
  155. package/dist/types/text.js +0 -16
  156. package/dist/types/text.js.map +0 -1
  157. package/tsconfig.json +0 -21
@@ -26,8 +26,8 @@ class ConsoleApplication {
26
26
  this.mapData = (info) => __awaiter(this, void 0, void 0, function* () {
27
27
  const filteredArray = Object.entries(info.types).filter(([key, v]) => v.__name !== 'belongsto');
28
28
  console.log(info.types);
29
- const columns = yield Promise.all(filteredArray.map(([key, v]) => __awaiter(this, void 0, void 0, function* () {
30
- var _a, _b, _c;
29
+ const columns = yield Promise.all(filteredArray.map((_a) => __awaiter(this, [_a], void 0, function* ([key, v]) {
30
+ var _b, _c, _d;
31
31
  if (v.__name === 'dto') {
32
32
  const dto = this.dtos.find((d) => { var _a, _b, _c; return d.name === ((_c = (_b = (_a = v.toSequelize) === null || _a === void 0 ? void 0 : _a.call(v)) === null || _b === void 0 ? void 0 : _b.dto) === null || _c === void 0 ? void 0 : _c.name); });
33
33
  if (dto) {
@@ -40,11 +40,11 @@ class ConsoleApplication {
40
40
  };
41
41
  }
42
42
  }
43
- const enumData = (_b = (_a = v.toSwagger) === null || _a === void 0 ? void 0 : _a.call(v)) === null || _b === void 0 ? void 0 : _b.enum;
43
+ const enumData = (_c = (_b = v.toSwagger) === null || _b === void 0 ? void 0 : _b.call(v)) === null || _c === void 0 ? void 0 : _c.enum;
44
44
  return {
45
45
  name: key,
46
46
  type: enumData ? 'enum' : v.__name,
47
- note: (_c = v.toSwagger) === null || _c === void 0 ? void 0 : _c.call(v).description,
47
+ note: (_d = v.toSwagger) === null || _d === void 0 ? void 0 : _d.call(v).description,
48
48
  enum: enumData,
49
49
  };
50
50
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/console/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/console/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dbml/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAuJtC,eAAO,MAAQ,QAAQ,SA/GU,MAAM,aAAa,MAAM;;qBA+GjC,WAAW,oBAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dbml/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAuJtC,eAAO,MAAQ,QAAQ,SA/GU,MAAM,aAAa,MAAM,QAAQ;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,oBA+GpE,WAAW,oBAA0B,CAAC"}
@@ -15,7 +15,7 @@ var _a;
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.getDBMLData = exports.addTable = void 0;
17
17
  /* eslint-disable no-nested-ternary */
18
- const core_1 = require("@asapjs/core");
18
+ const common_1 = require("@asapjs/common");
19
19
  const promises_1 = __importDefault(require("fs/promises"));
20
20
  const idColumnData = `id int PK`;
21
21
  class DBMLApplication {
@@ -33,7 +33,7 @@ class DBMLApplication {
33
33
  });
34
34
  this.generateProjectData = () => {
35
35
  var _a;
36
- const config = (0, core_1.getConfig)();
36
+ const config = (0, common_1.getConfig)();
37
37
  const projectName = config === null || config === void 0 ? void 0 : config.projectName;
38
38
  const databaseType = ((_a = config === null || config === void 0 ? void 0 : config.db) === null || _a === void 0 ? void 0 : _a.dialect) || 'MySQL';
39
39
  return `Project ${projectName} {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dbml/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dbml/index.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,56 @@
1
1
  import 'reflect-metadata';
2
2
  import { Model } from 'sequelize-typescript';
3
3
  import { Attributes, Includeable } from 'sequelize';
4
+ /** 페이징 응답 타입. pagingMap() 반환 타입으로 추론됩니다. */
5
+ export interface PagingResponse<T> {
6
+ data: T[];
7
+ page: number;
8
+ page_size: number;
9
+ max_page: number;
10
+ has_prev: boolean;
11
+ has_next: boolean;
12
+ total_elements: number;
13
+ }
14
+ /**
15
+ * DTO 클래스에서 ExtendableDto 메서드(init, map, pagingMap 등)를 제외한
16
+ * 실제 데이터 필드만 남긴 plain 타입. map() 결과·API 응답 타입에 사용.
17
+ */
18
+ export type DtoData<T extends ExtendableDto> = Omit<T, keyof ExtendableDto>;
19
+ /**
20
+ * map() 입력 타입.
21
+ * - DTO 클래스 필드 기반으로 키를 추론한다.
22
+ * - 값 타입은 런타임 parse/fixValue를 허용하기 위해 느슨하게(any) 유지한다.
23
+ * - sequelize raw 결과(dataValues) 형태도 허용한다.
24
+ */
25
+ export type DtoInput<T extends ExtendableDto> = Partial<{
26
+ [K in keyof DtoData<T>]: any;
27
+ }> | {
28
+ dataValues?: Partial<{
29
+ [K in keyof DtoData<T>]: any;
30
+ }>;
31
+ [key: string]: any;
32
+ };
4
33
  interface DtoMiddlewareReturn {
5
34
  as?: string;
6
35
  model: typeof Model;
7
36
  attributes: Attributes<Model>;
8
37
  include?: Includeable[];
9
38
  }
39
+ /**
40
+ * DTO 베이스 클래스.
41
+ * map() / pagingMap() 반환 타입은 DtoData<T> — 데이터 필드만 포함(init, map, pagingMap 등 메서드 제외).
42
+ */
10
43
  export default class ExtendableDto {
11
44
  static isInitlized: boolean;
12
45
  init: () => void;
13
- map: (data: any) => any;
14
- pagingMap: (data: any) => any;
46
+ /** 배열 입력 DtoData<T>[], 단일 객체 입력 시 DtoData<T> 로 반환됩니다. */
47
+ map<T extends ExtendableDto>(this: T, data: DtoInput<T>[]): DtoData<T>[];
48
+ map<T extends ExtendableDto>(this: T, data: DtoInput<T>): DtoData<T>;
49
+ /** 반환 타입은 PagingResponse<DtoData<T>> — 데이터 필드만 포함합니다. */
50
+ pagingMap<T extends ExtendableDto>(this: T, data: {
51
+ data: any[];
52
+ [key: string]: any;
53
+ }): PagingResponse<DtoData<T>>;
15
54
  middleware: (as?: string, user?: any, extraAs?: string[]) => DtoMiddlewareReturn;
16
55
  generateScheme: () => {
17
56
  type: string;
@@ -20,7 +59,7 @@ export default class ExtendableDto {
20
59
  };
21
60
  };
22
61
  swagger: () => {
23
- $ref: string;
62
+ $ref: any;
24
63
  };
25
64
  }
26
65
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendableDto.d.ts","sourceRoot":"","sources":["../../src/dto/ExtendableDto.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAW,MAAM,WAAW,CAAC;AAQ7D,UAAU,mBAAmB;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,MAAM,CAAC,WAAW,UAAS;IAEpB,IAAI,aAGT;IAEK,GAAG,SAAU,GAAG,KAAG,GAAG,CAsC3B;IAEK,SAAS,SAAU,GAAG,KAAG,GAAG,CAIjC;IAEK,UAAU,QAAS,MAAM,SAAS,GAAG,YAAY,MAAM,EAAE,yBAmF9D;IAEK,cAAc;;;;;MAsBnB;IAEK,OAAO;;MAKZ;CACH"}
1
+ {"version":3,"file":"ExtendableDto.d.ts","sourceRoot":"","sources":["../../src/dto/ExtendableDto.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAW,MAAM,WAAW,CAAC;AAQ7D,4CAA4C;AAC5C,MAAM,WAAW,cAAc,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,aAAa,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,aAAa,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,aAAa,IACzC,OAAO,CAAC;KAAG,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG;CAAE,CAAC,GACzC;IACA,UAAU,CAAC,EAAE,OAAO,CAAC;SAAG,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG;KAAE,CAAC,CAAC;IACvD,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CAClB,CAAC;AAEL,UAAU,mBAAmB;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,KAAK,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IACjC,MAAM,CAAC,WAAW,UAAS;IAEpB,IAAI,aAGT;IAEF,2DAA2D;IACpD,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE;IACxE,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IA6C3E,yDAAyD;IAClD,SAAS,CAAC,CAAC,SAAS,aAAa,EACvC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE;QAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GACvC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAMtB,UAAU,GAAI,KAAK,MAAM,EAAE,OAAO,GAAG,EAAE,UAAU,MAAM,EAAE,yBA6F9D;IAEK,cAAc;;;;;MAsBnB;IAEK,OAAO;;MAKZ;CACF"}
@@ -3,55 +3,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  require("reflect-metadata");
4
4
  const sequelize_1 = require("sequelize");
5
5
  const types_1 = require("../types");
6
- const core_1 = require("@asapjs/core");
7
- const router_1 = require("@asapjs/router");
6
+ const common_1 = require("@asapjs/common");
7
+ const swagger_1 = require("../utils/swagger");
8
+ /**
9
+ * DTO 베이스 클래스.
10
+ * map() / pagingMap() 반환 타입은 DtoData<T> — 데이터 필드만 포함(init, map, pagingMap 등 메서드 제외).
11
+ */
8
12
  class ExtendableDto {
9
13
  constructor() {
10
14
  this.init = () => {
11
15
  const dtoName = this.constructor.name;
12
- (0, router_1.addScheme)({ name: dtoName, data: this.generateScheme() });
13
- };
14
- this.map = (data) => {
15
- const types = (0, types_1.getTypesData)(this);
16
- const properties = Object.assign({}, types);
17
- const o = (data === null || data === void 0 ? void 0 : data.dataValues) || data;
18
- const isArray = Array.isArray(o);
19
- if (isArray) {
20
- return o.map((item) => this.map(item));
21
- }
22
- return Object.keys(properties).reduce((p, key) => {
23
- var _a, _b;
24
- const property = properties[key];
25
- if (property.__name === 'dto') {
26
- // DTO TYPE인데 toSequelize가 없을 경우
27
- if (!property.toSequelize) {
28
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에서 에러가 발생했습니다.`);
29
- process.exit(1);
30
- }
31
- const data = property.toSequelize();
32
- if (!data.dto) {
33
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에 dto가 전달되지 않았습니다..`);
34
- process.exit(1);
35
- }
36
- p[key] = !!(o === null || o === void 0 ? void 0 : o[key]) ? new data.dto().map(o === null || o === void 0 ? void 0 : o[key]) : null;
37
- }
38
- else if (property.__name === 'query') {
39
- p[key] = (_a = property === null || property === void 0 ? void 0 : property.fixValue) === null || _a === void 0 ? void 0 : _a.call(property, o === null || o === void 0 ? void 0 : o[key]);
40
- }
41
- else {
42
- p[key] = ((_b = property === null || property === void 0 ? void 0 : property.fixValue) === null || _b === void 0 ? void 0 : _b.call(property, o === null || o === void 0 ? void 0 : o[key])) || (o === null || o === void 0 ? void 0 : o[key]);
43
- }
44
- return p;
45
- }, {});
46
- };
47
- this.pagingMap = (data) => {
48
- const o = data.data;
49
- return Object.assign(Object.assign({}, data), { data: o.map((item) => this.map(item)) });
16
+ (0, swagger_1.addScheme)({ name: dtoName, data: this.generateScheme() });
50
17
  };
51
18
  this.middleware = (as, user, extraAs) => {
52
19
  const modelInfo = Reflect.getMetadata('sequelize::dtoInfo', this);
53
20
  const types = (0, types_1.getTypesData)(this);
54
- const extraAsData = extraAs ? [...extraAs, as].filter((v) => !!v) : as ? [as] : [];
21
+ const extraAsData = extraAs
22
+ ? [...extraAs, as].filter((v) => !!v)
23
+ : as
24
+ ? [as]
25
+ : [];
55
26
  const attributes = [];
56
27
  const include = [];
57
28
  if (types) {
@@ -68,14 +39,16 @@ class ExtendableDto {
68
39
  queryOptions.forEach(([key, v]) => {
69
40
  // QUERY TYPE인데 toSequelize가 없을 경우
70
41
  if (!v.toSequelize) {
71
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - ${key}에서 에러가 발생했습니다.`);
42
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - ${key}에서 에러가 발생했습니다.`);
72
43
  process.exit(1);
73
44
  }
74
45
  if (!v.toSequelize().query) {
75
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - ${key}에 query가 전달되지 않았습니다..`);
46
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - ${key}에 query가 전달되지 않았습니다..`);
76
47
  process.exit(1);
77
48
  }
78
- const association = extraAsData.length >= 2 ? '`' + `${extraAsData.join('->')}` + '`' : as || modelInfo.defineTable.name;
49
+ const association = extraAsData.length >= 2
50
+ ? '`' + `${extraAsData.join('->')}` + '`'
51
+ : as || modelInfo.defineTable.name;
79
52
  attributes.push([
80
53
  (0, sequelize_1.literal)(v.toSequelize().query({
81
54
  association: association,
@@ -91,12 +64,12 @@ class ExtendableDto {
91
64
  connectOptions.forEach(([key, v]) => {
92
65
  // DTO TYPE인데 toSequelize가 없을 경우
93
66
  if (!v.toSequelize) {
94
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에서 에러가 발생했습니다.`);
67
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에서 에러가 발생했습니다.`);
95
68
  process.exit(1);
96
69
  }
97
70
  const data = v.toSequelize();
98
71
  if (!data.dto) {
99
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에 dto가 전달되지 않았습니다..`);
72
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에 dto가 전달되지 않았습니다..`);
100
73
  process.exit(1);
101
74
  }
102
75
  include.push(new data.dto().middleware((data === null || data === void 0 ? void 0 : data.as) || key, user, extraAsData));
@@ -122,7 +95,7 @@ class ExtendableDto {
122
95
  p[key] = property.toSwagger() || null;
123
96
  }
124
97
  else {
125
- core_1.logger.warn(`@asapjs/sequelize :: TypeIs.${(_b = (_a = property === null || property === void 0 ? void 0 : property.__name) === null || _a === void 0 ? void 0 : _a.toUpperCase) === null || _b === void 0 ? void 0 : _b.call(_a)}에 toSwagger가 정의되지 않았습니다.`);
98
+ common_1.logger.warn(`@asapjs/sequelize :: TypeIs.${(_b = (_a = property === null || property === void 0 ? void 0 : property.__name) === null || _a === void 0 ? void 0 : _a.toUpperCase) === null || _b === void 0 ? void 0 : _b.call(_a)}에 toSwagger가 정의되지 않았습니다.`);
126
99
  p[key] = null;
127
100
  }
128
101
  return p;
@@ -135,11 +108,51 @@ class ExtendableDto {
135
108
  this.swagger = () => {
136
109
  const dtoName = this.constructor.name;
137
110
  return {
138
- $ref: (0, router_1.generateSchemeRefWithName)(dtoName),
111
+ $ref: (0, swagger_1.generateSchemeRefWithName)(dtoName),
139
112
  };
140
113
  };
141
114
  }
115
+ map(data) {
116
+ var _a;
117
+ const types = (0, types_1.getTypesData)(this);
118
+ const properties = Object.assign({}, types);
119
+ const rawInput = data;
120
+ const o = (_a = rawInput === null || rawInput === void 0 ? void 0 : rawInput.dataValues) !== null && _a !== void 0 ? _a : rawInput;
121
+ const isArray = Array.isArray(o);
122
+ if (isArray) {
123
+ return o.map((item) => this.map(item));
124
+ }
125
+ return Object.keys(properties).reduce((p, key) => {
126
+ var _a, _b;
127
+ const property = properties[key];
128
+ if (property.__name === 'dto') {
129
+ // DTO TYPE인데 toSequelize가 없을 경우
130
+ if (!property.toSequelize) {
131
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에서 에러가 발생했습니다.`);
132
+ process.exit(1);
133
+ }
134
+ const data = property.toSequelize();
135
+ if (!data.dto) {
136
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.DTO - ${key}에 dto가 전달되지 않았습니다..`);
137
+ process.exit(1);
138
+ }
139
+ p[key] = !!(o === null || o === void 0 ? void 0 : o[key]) ? new data.dto().map(o === null || o === void 0 ? void 0 : o[key]) : null;
140
+ }
141
+ else if (property.__name === 'query') {
142
+ p[key] = (_a = property === null || property === void 0 ? void 0 : property.fixValue) === null || _a === void 0 ? void 0 : _a.call(property, o === null || o === void 0 ? void 0 : o[key]);
143
+ }
144
+ else {
145
+ p[key] = ((_b = property === null || property === void 0 ? void 0 : property.fixValue) === null || _b === void 0 ? void 0 : _b.call(property, o === null || o === void 0 ? void 0 : o[key])) || (o === null || o === void 0 ? void 0 : o[key]);
146
+ }
147
+ return p;
148
+ }, {});
149
+ }
150
+ /** 반환 타입은 PagingResponse<DtoData<T>> — 데이터 필드만 포함합니다. */
151
+ pagingMap(data) {
152
+ const o = data.data;
153
+ return Object.assign(Object.assign({}, data), { data: o.map((item) => this.map(item)) });
154
+ }
142
155
  }
143
- exports.default = ExtendableDto;
144
156
  ExtendableDto.isInitlized = false;
157
+ exports.default = ExtendableDto;
145
158
  //# sourceMappingURL=ExtendableDto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendableDto.js","sourceRoot":"","sources":["../../src/dto/ExtendableDto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtendableDto.js","sourceRoot":"","sources":["../../src/dto/ExtendableDto.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAG1B,yCAA6D;AAE7D,oCAAwC;AACxC,2CAAwC;AAGxC,8CAAwE;AAuCxE;;;GAGG;AACH,MAAqB,aAAa;IAAlC;QAGQ,SAAI,GAAG,GAAG,EAAE;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACtC,IAAA,mBAAS,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC;QA2DK,eAAU,GAAG,CAAC,EAAW,EAAE,IAAU,EAAE,OAAkB,EAAE,EAAE;YACnE,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;YAClE,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,CAAC;YAEjC,MAAM,WAAW,GAAa,OAAO;gBACpC,CAAC,CAAE,CAAC,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAc;gBACnD,CAAC,CAAC,EAAE;oBACH,CAAC,CAAC,CAAC,EAAE,CAAC;oBACN,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,UAAU,GAAsB,EAAE,CAAC;YAEzC,MAAM,OAAO,GAAqB,EAAE,CAAC;YAErC,IAAI,KAAK,EAAE,CAAC;gBACX,2CAA2C;gBAC3C,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CACrD,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CACvD,CAAC;gBAEF,IAAI,iBAAiB,EAAE,CAAC;oBACvB,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE;wBAC3C,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;gBACJ,CAAC;gBAED,iBAAiB;gBACjB,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;gBAE3F,IAAI,YAAY,EAAE,CAAC;oBAClB,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE;wBACtC,kCAAkC;wBAClC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;4BACpB,eAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,gBAAgB,CAAC,CAAC;4BAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACjB,CAAC;wBAED,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC;4BAC5B,eAAM,CAAC,KAAK,CACX,wCAAwC,GAAG,uBAAuB,CAClE,CAAC;4BACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACjB,CAAC;wBAED,MAAM,WAAW,GAChB,WAAW,CAAC,MAAM,IAAI,CAAC;4BACtB,CAAC,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG;4BACzC,CAAC,CAAC,EAAE,IAAI,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;wBAErC,UAAU,CAAC,IAAI,CAAC;4BACf,IAAA,mBAAO,EACN,CAAC,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC;gCACrB,WAAW,EAAE,WAAW;gCACxB,IAAI;6BACJ,CAAC,CACF;4BACD,GAAG;yBACH,CAAC,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACJ,CAAC;gBAED,eAAe;gBACf,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;gBAE3F,IAAI,cAAc,EAAE,CAAC;oBACpB,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAM,EAAE,EAAE;wBACxC,gCAAgC;wBAChC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;4BACpB,eAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,gBAAgB,CAAC,CAAC;4BACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACjB,CAAC;wBACD,MAAM,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;wBAE7B,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BACf,eAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,qBAAqB,CAAC,CAAC;4BAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACjB,CAAC;wBAED,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,KAAI,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;oBAC7E,CAAC,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;YAED,MAAM,MAAM,GAAwB;gBACnC,KAAK,EAAE,SAAS,CAAC,WAAW;gBAC5B,UAAU;aACV,CAAC;YAEF,IAAI,EAAE;gBAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;YAEvB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;YAEjD,OAAO,MAAM,CAAC;QACf,CAAC,CAAC;QAEK,mBAAc,GAAG,GAAG,EAAE;YAC5B,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,CAAC;YAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAA6B,EAAE,GAAG,EAAE,EAAE;;gBAC7E,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBAE5B,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;oBACxB,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACP,eAAM,CAAC,IAAI,CACV,+BAA+B,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,0CAAE,WAAW,kDAAI,0BAA0B,CAC1F,CAAC;oBACF,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBACf,CAAC;gBAED,OAAO,CAAC,CAAC;YACV,CAAC,EAAE,EAAE,CAAC,CAAC;YAEP,OAAO;gBACN,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,IAAI;aAChB,CAAC;QACH,CAAC,CAAC;QAEK,YAAO,GAAG,GAAG,EAAE;YACrB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACtC,OAAO;gBACN,IAAI,EAAE,IAAA,mCAAyB,EAAC,OAAO,CAAC;aACxC,CAAC;QACH,CAAC,CAAC;IACH,CAAC;IAnLO,GAAG,CAET,IAAiC;;QAEjC,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,UAAU,qBAAgC,KAAK,CAAE,CAAC;QAExD,MAAM,QAAQ,GAAQ,IAAI,CAAC;QAC3B,MAAM,CAAC,GAAQ,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU,mCAAI,QAAQ,CAAC;QAEhD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEjC,IAAI,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAiB,CAAC;QAC7D,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAA6B,EAAE,GAAG,EAAE,EAAE;;YAC5E,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAEjC,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBAC/B,gCAAgC;gBAChC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;oBAC3B,eAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,gBAAgB,CAAC,CAAC;oBACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;gBAEpC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;oBACf,eAAM,CAAC,KAAK,CAAC,sCAAsC,GAAG,qBAAqB,CAAC,CAAC;oBAC7E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,CAAC;gBAED,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,GAAG,CAAC,CAAA,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3D,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBACxC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,yDAAG,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,GAAG,CAAC,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACP,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,yDAAG,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,GAAG,CAAC,CAAC,MAAI,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,GAAG,CAAC,CAAA,CAAC;YACrD,CAAC;YAED,OAAO,CAAC,CAAC;QACV,CAAC,EAAE,EAAE,CAA0B,CAAC;IACjC,CAAC;IAED,yDAAyD;IAClD,SAAS,CAEf,IAAyC;QAEzC,MAAM,CAAC,GAAQ,IAAI,CAAC,IAAI,CAAC;QAEzB,OAAO,gCAAK,IAAI,KAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAgC,CAAC;IAC9F,CAAC;;AA9DM,yBAAW,GAAG,KAAK,AAAR,CAAS;kBADP,aAAa"}
@@ -1,6 +1,8 @@
1
1
  import { ExtendableDto } from './index';
2
+ /** 페이지네이션 쿼리 DTO. 인자 타입은 PaginationQueryType 사용. */
2
3
  export default class PaginationQueryDto extends ExtendableDto {
3
4
  page: number;
4
5
  limit: number;
5
6
  }
7
+ export type PaginationQueryType = Pick<PaginationQueryDto, 'page' | 'limit'>;
6
8
  //# sourceMappingURL=PaginationQueryDto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationQueryDto.d.ts","sourceRoot":"","sources":["../../src/dto/PaginationQueryDto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,aAAa;IAE3D,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"PaginationQueryDto.d.ts","sourceRoot":"","sources":["../../src/dto/PaginationQueryDto.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,oDAAoD;AACpD,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,aAAa;IAE3D,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC"}
@@ -9,17 +9,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- const types_1 = require("../types");
12
+ const decorators_1 = require("../types/decorators");
13
13
  const index_1 = require("./index");
14
+ /** 페이지네이션 쿼리 DTO. 인자 타입은 PaginationQueryType 사용. */
14
15
  class PaginationQueryDto extends index_1.ExtendableDto {
15
16
  }
17
+ exports.default = PaginationQueryDto;
16
18
  __decorate([
17
- types_1.TypeIs.INT({ comment: '페이지' }),
19
+ decorators_1.TypeIsDecorators.INT({ comment: '페이지' }),
18
20
  __metadata("design:type", Number)
19
21
  ], PaginationQueryDto.prototype, "page", void 0);
20
22
  __decorate([
21
- types_1.TypeIs.INT({ comment: '한 페이지당 표시 개수' }),
23
+ decorators_1.TypeIsDecorators.INT({ comment: '한 페이지당 표시 개수' }),
22
24
  __metadata("design:type", Number)
23
25
  ], PaginationQueryDto.prototype, "limit", void 0);
24
- exports.default = PaginationQueryDto;
25
26
  //# sourceMappingURL=PaginationQueryDto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaginationQueryDto.js","sourceRoot":"","sources":["../../src/dto/PaginationQueryDto.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,oCAAkC;AAClC,mCAAwC;AAExC,MAAqB,kBAAmB,SAAQ,qBAAa;CAM5D;AALC;IAAC,cAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;gDAClB;AAEb;IAAC,cAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;;iDAC1B;AALhB,qCAMC"}
1
+ {"version":3,"file":"PaginationQueryDto.js","sourceRoot":"","sources":["../../src/dto/PaginationQueryDto.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,oDAAiE;AACjE,mCAAwC;AAExC,oDAAoD;AACpD,MAAqB,kBAAmB,SAAQ,qBAAa;CAM5D;AAND,qCAMC;AAJC;IADC,6BAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;gDAClB;AAGb;IADC,6BAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;;iDAC1B"}
@@ -5,6 +5,6 @@ export declare function Dto(info: {
5
5
  name?: string;
6
6
  defineTable: typeof Model;
7
7
  }): (target: any, options?: TableOptions) => void;
8
- export { default as ExtendableDto } from './ExtendableDto';
9
- export { default as PaginationQueryDto } from './PaginationQueryDto';
8
+ export { default as ExtendableDto, type PagingResponse, type DtoData, } from './ExtendableDto';
9
+ export { default as PaginationQueryDto, type PaginationQueryType } from './PaginationQueryDto';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI3D,wBAAgB,GAAG,CAAC,IAAI,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,KAAK,CAAA;CAAE,YACjE,GAAG,YAAW,YAAY,KAAQ,IAAI,CAWhE;AAED,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAI3D,wBAAgB,GAAG,CAAC,IAAI,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,KAAK,CAAA;CAAE,IACzE,QAAQ,GAAG,EAAE,UAAS,YAAiB,KAAG,IAAI,CAWhE;AAED,OAAO,EACL,OAAO,IAAI,aAAa,EACxB,KAAK,cAAc,EACnB,KAAK,OAAO,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/dto/index.js CHANGED
@@ -3,7 +3,8 @@ 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.PaginationQueryDto = exports.ExtendableDto = exports.Dto = void 0;
6
+ exports.PaginationQueryDto = exports.ExtendableDto = void 0;
7
+ exports.Dto = Dto;
7
8
  require("reflect-metadata");
8
9
  const console_1 = require("../console");
9
10
  const types_1 = require("../types");
@@ -15,7 +16,6 @@ function Dto(info) {
15
16
  (0, console_1.addDto)(target.name, target.name, types);
16
17
  };
17
18
  }
18
- exports.Dto = Dto;
19
19
  var ExtendableDto_1 = require("./ExtendableDto");
20
20
  Object.defineProperty(exports, "ExtendableDto", { enumerable: true, get: function () { return __importDefault(ExtendableDto_1).default; } });
21
21
  var PaginationQueryDto_1 = require("./PaginationQueryDto");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;AAAA,4BAA0B;AAG1B,wCAAoC;AACpC,oCAAwC;AAExC,SAAgB,GAAG,CAAC,IAAwE;IAC1F,OAAO,UAAU,MAAW,EAAE,UAAwB,EAAE;QACtD,MAAM,IAAI,mCACL,IAAI,KACP,UAAU,EAAE,IAAI,CAAC,UAAU,KAAK,SAAS,GAC1C,CAAC;QACF,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAErE,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC;QAEnC,IAAA,gBAAM,EAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAZD,kBAYC;AAED,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,2DAAqE;AAA5D,yIAAA,OAAO,OAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dto/index.ts"],"names":[],"mappings":";;;;;;AAMA,kBAYC;AAlBD,4BAA0B;AAG1B,wCAAoC;AACpC,oCAAwC;AAExC,SAAgB,GAAG,CAAC,IAAwE;IAC1F,OAAO,UAAU,MAAW,EAAE,UAAwB,EAAE;QACtD,MAAM,IAAI,mCACL,IAAI,KACP,UAAU,EAAE,IAAI,CAAC,UAAU,KAAK,SAAS,GAC1C,CAAC;QACF,OAAO,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAErE,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC;QAEnC,IAAA,gBAAM,EAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC,CAAC;AACJ,CAAC;AAED,iDAIyB;AAHvB,+HAAA,OAAO,OAAiB;AAI1B,2DAA+F;AAAtF,yIAAA,OAAO,OAAsB"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,14 @@
1
- export { ExtendableDto, PaginationQueryDto, Dto } from './dto';
2
- export { initSequelizeModule, getSequelize, modelsSync, generateDBML, healthCheck } from './sequelize';
1
+ export { SequelizePlugin } from './plugin';
2
+ export { ExtendableDto, PaginationQueryDto, type PaginationQueryType, type PagingResponse, type DtoData, Dto, } from './dto';
3
+ export { initSequelizeModule, getSequelize, modelsSync, generateDBML, healthCheck, } from './sequelize';
3
4
  export { default as Repository } from './repository';
4
5
  export { Table } from './table';
5
- export { TypeIs, DtoOrTypeIs, getData, TypeIsData } from './types';
6
6
  export { getUserIdInQuery } from './utils/getUserIdInQuery';
7
7
  export { getDBMLData } from './dbml';
8
8
  export { getConsoleData } from './console';
9
+ export { setSwaggerFunctions } from './utils/swagger';
10
+ export { getData, TypeIsData } from './types/generators/typeGenerator';
11
+ export { DtoOrTypeIs } from './types/type';
12
+ export { registerSequelizeTypes } from './types/register';
13
+ export * from './types/schema-extensions';
9
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACvG,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EACN,aAAa,EACb,kBAAkB,EAClB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,OAAO,EACZ,GAAG,GACH,MAAM,OAAO,CAAC;AACf,OAAO,EACN,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG1D,cAAc,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -1,9 +1,25 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
18
  };
5
19
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getConsoleData = exports.getDBMLData = exports.getUserIdInQuery = exports.getData = exports.TypeIs = exports.Table = exports.Repository = exports.healthCheck = exports.generateDBML = exports.modelsSync = exports.getSequelize = exports.initSequelizeModule = exports.Dto = exports.PaginationQueryDto = exports.ExtendableDto = void 0;
20
+ exports.registerSequelizeTypes = exports.getData = exports.setSwaggerFunctions = exports.getConsoleData = exports.getDBMLData = exports.getUserIdInQuery = exports.Table = exports.Repository = exports.healthCheck = exports.generateDBML = exports.modelsSync = exports.getSequelize = exports.initSequelizeModule = exports.Dto = exports.PaginationQueryDto = exports.ExtendableDto = exports.SequelizePlugin = void 0;
21
+ var plugin_1 = require("./plugin");
22
+ Object.defineProperty(exports, "SequelizePlugin", { enumerable: true, get: function () { return plugin_1.SequelizePlugin; } });
7
23
  var dto_1 = require("./dto");
8
24
  Object.defineProperty(exports, "ExtendableDto", { enumerable: true, get: function () { return dto_1.ExtendableDto; } });
9
25
  Object.defineProperty(exports, "PaginationQueryDto", { enumerable: true, get: function () { return dto_1.PaginationQueryDto; } });
@@ -18,13 +34,18 @@ var repository_1 = require("./repository");
18
34
  Object.defineProperty(exports, "Repository", { enumerable: true, get: function () { return __importDefault(repository_1).default; } });
19
35
  var table_1 = require("./table");
20
36
  Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return table_1.Table; } });
21
- var types_1 = require("./types");
22
- Object.defineProperty(exports, "TypeIs", { enumerable: true, get: function () { return types_1.TypeIs; } });
23
- Object.defineProperty(exports, "getData", { enumerable: true, get: function () { return types_1.getData; } });
24
37
  var getUserIdInQuery_1 = require("./utils/getUserIdInQuery");
25
38
  Object.defineProperty(exports, "getUserIdInQuery", { enumerable: true, get: function () { return getUserIdInQuery_1.getUserIdInQuery; } });
26
39
  var dbml_1 = require("./dbml");
27
40
  Object.defineProperty(exports, "getDBMLData", { enumerable: true, get: function () { return dbml_1.getDBMLData; } });
28
41
  var console_1 = require("./console");
29
42
  Object.defineProperty(exports, "getConsoleData", { enumerable: true, get: function () { return console_1.getConsoleData; } });
43
+ var swagger_1 = require("./utils/swagger");
44
+ Object.defineProperty(exports, "setSwaggerFunctions", { enumerable: true, get: function () { return swagger_1.setSwaggerFunctions; } });
45
+ var typeGenerator_1 = require("./types/generators/typeGenerator");
46
+ Object.defineProperty(exports, "getData", { enumerable: true, get: function () { return typeGenerator_1.getData; } });
47
+ var register_1 = require("./types/register");
48
+ Object.defineProperty(exports, "registerSequelizeTypes", { enumerable: true, get: function () { return register_1.registerSequelizeTypes; } });
49
+ // Sequelize 전용 타입 export
50
+ __exportStar(require("./types/schema-extensions"), exports);
30
51
  //# 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,6BAA+D;AAAtD,oGAAA,aAAa,OAAA;AAAE,yGAAA,kBAAkB,OAAA;AAAE,0FAAA,GAAG,OAAA;AAC/C,yCAAuG;AAA9F,gHAAA,mBAAmB,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,uGAAA,UAAU,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,wGAAA,WAAW,OAAA;AACjF,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,iCAAmE;AAA1D,+FAAA,MAAM,OAAA;AAAe,gGAAA,OAAO,OAAA;AACrC,6DAA4D;AAAnD,oHAAA,gBAAgB,OAAA;AACzB,+BAAqC;AAA5B,mGAAA,WAAW,OAAA;AACpB,qCAA2C;AAAlC,yGAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AACxB,6BAOe;AANd,oGAAA,aAAa,OAAA;AACb,yGAAA,kBAAkB,OAAA;AAIlB,0FAAA,GAAG,OAAA;AAEJ,yCAMqB;AALpB,gHAAA,mBAAmB,OAAA;AACnB,yGAAA,YAAY,OAAA;AACZ,uGAAA,UAAU,OAAA;AACV,yGAAA,YAAY,OAAA;AACZ,wGAAA,WAAW,OAAA;AAEZ,2CAAqD;AAA5C,yHAAA,OAAO,OAAc;AAC9B,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,6DAA4D;AAAnD,oHAAA,gBAAgB,OAAA;AACzB,+BAAqC;AAA5B,mGAAA,WAAW,OAAA;AACpB,qCAA2C;AAAlC,yGAAA,cAAc,OAAA;AACvB,2CAAsD;AAA7C,8GAAA,mBAAmB,OAAA;AAE5B,kEAAuE;AAA9D,wGAAA,OAAO,OAAA;AAEhB,6CAA0D;AAAjD,kHAAA,sBAAsB,OAAA;AAE/B,yBAAyB;AACzB,4DAA0C"}
@@ -0,0 +1,8 @@
1
+ import { AsapJSPlugin, AsapJSConfig, PluginContext } from '@asapjs/types';
2
+ import './types/schema-extensions';
3
+ export declare class SequelizePlugin implements AsapJSPlugin {
4
+ name: string;
5
+ init(config: AsapJSConfig, context: PluginContext): Promise<void>;
6
+ destroy(): Promise<void>;
7
+ }
8
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +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;AAK1E,OAAO,2BAA2B,CAAC;AAEnC,qBAAa,eAAgB,YAAW,YAAY;IAClD,IAAI,SAAuB;IAErB,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BjE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAa/B"}
package/dist/plugin.js ADDED
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SequelizePlugin = void 0;
13
+ const common_1 = require("@asapjs/common");
14
+ const sequelize_1 = require("./sequelize");
15
+ const schema_1 = require("@asapjs/schema");
16
+ const register_1 = require("./types/register");
17
+ require("./types/schema-extensions"); // 타입 확장 import
18
+ class SequelizePlugin {
19
+ constructor() {
20
+ this.name = '@asapjs/sequelize';
21
+ }
22
+ init(config, context) {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ common_1.logger.info(`Initializing ${this.name} plugin...`);
25
+ try {
26
+ // Register sequelize plugin for @asapjs/schema
27
+ if (!schema_1.registry.has('sequelize')) {
28
+ schema_1.registry.register(schema_1.sequelizePlugin);
29
+ }
30
+ // Register Sequelize-specific types
31
+ (0, register_1.registerSequelizeTypes)();
32
+ yield (0, sequelize_1.initSequelizeModule)(config.dirname);
33
+ common_1.logger.info(`${this.name} plugin initialized successfully`);
34
+ }
35
+ catch (error) {
36
+ const err = error;
37
+ common_1.logger.error(`Failed to initialize ${this.name} plugin`, {
38
+ err: error,
39
+ context: {
40
+ message: err === null || err === void 0 ? void 0 : err.message,
41
+ stack: err === null || err === void 0 ? void 0 : err.stack,
42
+ name: err === null || err === void 0 ? void 0 : err.name,
43
+ },
44
+ });
45
+ console.error(`[@asapjs/sequelize] Plugin initialization error (full stack):`, (err === null || err === void 0 ? void 0 : err.stack) || error);
46
+ throw error;
47
+ }
48
+ });
49
+ }
50
+ destroy() {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ // Close database connections if needed
53
+ try {
54
+ const { getSequelize } = require('./sequelize');
55
+ const sequelize = getSequelize();
56
+ if (sequelize) {
57
+ yield sequelize.close();
58
+ common_1.logger.info(`${this.name} plugin destroyed successfully`);
59
+ }
60
+ }
61
+ catch (error) {
62
+ common_1.logger.error(`Error destroying ${this.name} plugin`, error);
63
+ }
64
+ });
65
+ }
66
+ }
67
+ exports.SequelizePlugin = SequelizePlugin;
68
+ //# sourceMappingURL=plugin.js.map