@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
@@ -1 +1 @@
1
- {"version":3,"file":"toSwaggerGenerator.d.ts","sourceRoot":"","sources":["../../../src/types/generators/toSwaggerGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,kBAAkB,mHAAiE,YAAY,uGAAZ,YACrF,CAAC"}
1
+ {"version":3,"file":"toSwaggerGenerator.d.ts","sourceRoot":"","sources":["../../../src/types/generators/toSwaggerGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,2BAA2B,KAAK,YAAY,gBAAhD,CAAC,GAAG,2BAA2B,KAAK,YACrF,CAAC"}
@@ -14,5 +14,5 @@ export declare const getTypesData: (target: any) => {
14
14
  export declare const saveNewTypesData: (attributes: any, target: any) => void;
15
15
  export declare const saveTypesData: (target: any, propertyName: any, value: any) => void;
16
16
  export type TypeGeneratorPropsGenerator<T> = T & ModelAttributeColumnOptions;
17
- export declare const typeGenerator: <T>(data: (...args: TypeGeneratorPropsGenerator<T>[]) => TypeIsData) => (...options: (ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | T)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & TypeIsData;
17
+ export declare const typeGenerator: <T>(data: (...args: TypeGeneratorPropsGenerator<T>[]) => TypeIsData) => (...options: (T | ModelAttributeColumnOptions)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & TypeIsData;
18
18
  //# sourceMappingURL=typeGenerator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"typeGenerator.d.ts","sourceRoot":"","sources":["../../../src/types/generators/typeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACpC,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;CAC5B,CAAC;AAIF,eAAO,MAAM,OAAO;;CAEnB,CAAC;AAEF,eAAO,MAAM,YAAY,WAAY,GAAG;;CAIvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,eAAgB,GAAG,UAAU,GAAG,SAE5D,CAAC;AAEF,eAAO,MAAM,aAAa,WAAY,GAAG,gBAAgB,GAAG,SAAS,GAAG,SAMvE,CAAC;AAEF,MAAM,MAAM,2BAA2B,CAAC,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC;AAE7E,eAAO,MAAM,aAAa,2DACiC,UAAU,yGAEhD,GAAG,iBAAiB,MAAM,uBAAuB,kBAAkB,KAAG,IAAI,GAAG,UAa/F,CAAC"}
1
+ {"version":3,"file":"typeGenerator.d.ts","sourceRoot":"","sources":["../../../src/types/generators/typeGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAGxD,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACpC,WAAW,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG,CAAC;CAC5B,CAAC;AAIF,eAAO,MAAM,OAAO;;CAEnB,CAAC;AA6BF,eAAO,MAAM,YAAY,GAAI,QAAQ,GAAG,KAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;CAIrE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,YAAY,GAAG,EAAE,QAAQ,GAAG,SAE5D,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,GAAG,EAAE,cAAc,GAAG,EAAE,OAAO,GAAG,SAMvE,CAAC;AAEF,MAAM,MAAM,2BAA2B,CAAC,CAAC,IAAI,CAAC,GAAG,2BAA2B,CAAC;AAE7E,eAAO,MAAM,aAAa,GACvB,CAAC,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE,2BAA2B,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,MAClE,GAAG,SAAS,CAAC,CAAC,GAAG,2BAA2B,CAAC,EAAE,MACtC,SAAS,GAAG,EAAE,eAAe,MAAM,EAAE,qBAAqB,kBAAkB,KAAG,IAAI,GAAG,UAa/F,CAAC"}
@@ -1,17 +1,40 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.typeGenerator = exports.saveTypesData = exports.saveNewTypesData = exports.getTypesData = exports.getData = void 0;
4
+ const schema_1 = require("@asapjs/schema");
4
5
  const data = {};
5
6
  const getData = () => {
6
7
  return data;
7
8
  };
8
9
  exports.getData = getData;
10
+ const getPrototypeTarget = (target) => {
11
+ if (!target)
12
+ return null;
13
+ if (typeof target === 'function' && target.prototype) {
14
+ return target.prototype;
15
+ }
16
+ if (target.constructor && target.constructor.prototype) {
17
+ return target.constructor.prototype;
18
+ }
19
+ return target;
20
+ };
21
+ const getSchemaDecoratorTypesData = (target) => {
22
+ const prototypeTarget = getPrototypeTarget(target);
23
+ if (!prototypeTarget)
24
+ return {};
25
+ const reflect = Reflect;
26
+ if (typeof (reflect === null || reflect === void 0 ? void 0 : reflect.getMetadata) !== 'function')
27
+ return {};
28
+ const metadata = reflect.getMetadata(schema_1.SCHEMA_TYPES_METADATA_KEY, prototypeTarget);
29
+ if (!metadata || typeof metadata !== 'object')
30
+ return {};
31
+ return metadata;
32
+ };
9
33
  const getTypesData = (target) => {
10
34
  var _a;
11
- const values = data[(target === null || target === void 0 ? void 0 : target.name) || ((_a = target === null || target === void 0 ? void 0 : target.constructor) === null || _a === void 0 ? void 0 : _a.name)];
12
- if (!values)
13
- return {};
14
- return values;
35
+ const legacyValues = data[(target === null || target === void 0 ? void 0 : target.name) || ((_a = target === null || target === void 0 ? void 0 : target.constructor) === null || _a === void 0 ? void 0 : _a.name)] || {};
36
+ const schemaValues = getSchemaDecoratorTypesData(target);
37
+ return Object.assign(Object.assign({}, schemaValues), legacyValues);
15
38
  };
16
39
  exports.getTypesData = getTypesData;
17
40
  const saveNewTypesData = (attributes, target) => {
@@ -1 +1 @@
1
- {"version":3,"file":"typeGenerator.js","sourceRoot":"","sources":["../../../src/types/generators/typeGenerator.ts"],"names":[],"mappings":";;;AASA,MAAM,IAAI,GAA2B,EAAE,CAAC;AAEjC,MAAM,OAAO,GAAG,GAAG,EAAE;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AAEK,MAAM,YAAY,GAAG,CAAC,MAAW,EAAiC,EAAE;;IACzE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,MAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,0CAAE,IAAI,CAAA,CAAC,CAAC;IAC/D,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAJW,QAAA,YAAY,gBAIvB;AAEK,MAAM,gBAAgB,GAAG,CAAC,UAAe,EAAE,MAAW,EAAE,EAAE;IAC/D,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;AAC7C,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AAEK,MAAM,aAAa,GAAG,CAAC,MAAW,EAAE,YAAiB,EAAE,KAAU,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC;IAEnC,KAAK,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;IAE5B,IAAA,wBAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC,CAAC;AANW,QAAA,aAAa,iBAMxB;AAIK,MAAM,aAAa,GACxB,CAAI,IAA+D,EAAE,EAAE,CACvE,CAAC,GAAG,OAA4C,EAAE,EAAE;IAClD,OAAO,CAAC,MAAY,EAAE,YAAqB,EAAE,kBAAuC,EAAqB,EAAE;QACzG,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAI,OAA4C,CAAC,CAAC;YAEpE,IAAA,qBAAa,EAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAE1C,IAAI,kBAAkB,EAAE;gBACtB,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;aACjC;SACF;aAAM;YACL,OAAO,IAAI,CAAC,GAAI,OAA4C,CAAQ,CAAC;SACtE;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAhBS,QAAA,aAAa,iBAgBtB"}
1
+ {"version":3,"file":"typeGenerator.js","sourceRoot":"","sources":["../../../src/types/generators/typeGenerator.ts"],"names":[],"mappings":";;;AACA,2CAA2D;AAS3D,MAAM,IAAI,GAA2B,EAAE,CAAC;AAEjC,MAAM,OAAO,GAAG,GAAG,EAAE;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AAEF,MAAM,kBAAkB,GAAG,CAAC,MAAW,EAAE,EAAE;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,IAAI,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrD,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;IACtC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,MAAW,EAAiC,EAAE;IACjF,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,CAAC;IAEhC,MAAM,OAAO,GAAG,OAAc,CAAC;IAC/B,IAAI,OAAO,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAA,KAAK,UAAU;QAAE,OAAO,EAAE,CAAC;IAE1D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,kCAAyB,EAAE,eAAe,CAAC,CAAC;IACjF,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEzD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEK,MAAM,YAAY,GAAG,CAAC,MAAW,EAAiC,EAAE;;IACzE,MAAM,YAAY,GAAG,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,MAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,0CAAE,IAAI,CAAA,CAAC,IAAI,EAAE,CAAC;IAC3E,MAAM,YAAY,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACzD,uCAAY,YAAY,GAAK,YAAY,EAAG;AAC9C,CAAC,CAAC;AAJW,QAAA,YAAY,gBAIvB;AAEK,MAAM,gBAAgB,GAAG,CAAC,UAAe,EAAE,MAAW,EAAE,EAAE;IAC/D,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;AAC7C,CAAC,CAAC;AAFW,QAAA,gBAAgB,oBAE3B;AAEK,MAAM,aAAa,GAAG,CAAC,MAAW,EAAE,YAAiB,EAAE,KAAU,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,MAAM,CAAC,CAAC;IAEnC,KAAK,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;IAE5B,IAAA,wBAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC,CAAC;AANW,QAAA,aAAa,iBAMxB;AAIK,MAAM,aAAa,GACxB,CAAI,IAA+D,EAAE,EAAE,CACvE,CAAC,GAAG,OAA4C,EAAE,EAAE;IAClD,OAAO,CAAC,MAAY,EAAE,YAAqB,EAAE,kBAAuC,EAAqB,EAAE;QACzG,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAI,OAA4C,CAAC,CAAC;YAEpE,IAAA,qBAAa,EAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YAE1C,IAAI,kBAAkB,EAAE,CAAC;gBACvB,kBAAkB,CAAC,KAAK,GAAG,IAAI,CAAC;YAClC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,GAAI,OAA4C,CAAQ,CAAC;QACvE,CAAC;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AAhBS,QAAA,aAAa,iBAgBtB"}
@@ -1,26 +1,8 @@
1
- export declare const TypeIs: {
2
- INT: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./int").TypeIsIntOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
3
- BIGINT: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./bigint").TypeIsBigIntOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
4
- LONG: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./long").TypeIsLongOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
5
- FLOAT: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./float").TypeIsFloatOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
6
- DECIMAL: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./decemal").TypeIsDecemalOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
7
- DOUBLE: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./double").TypeIsDoubleOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
8
- STRING: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./string").TypeIsStringOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
9
- TEXT: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./text").TypeIsTextOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
10
- PASSWORD: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./string").TypeIsStringOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
11
- ENUM: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./enum").TypeIsEnumOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
12
- JSON: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./json").TypeIsJsonOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
13
- BASE64: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./base64").TypeIsBase64Option)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
14
- BINARY: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./binary").TypeIsBinaryOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
15
- BOOLEAN: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./boolean").TypeIsBooleanOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
16
- DATEONLY: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./dateonly").TypeIsDateOnlyOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
17
- DATETIME: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./datetime").TypeIsDateTimeOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
18
- FOREIGNKEY: (...options: any[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
19
- BELONGSTO: (...options: any[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
20
- DTO: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./dto").TypeIsDtoOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
21
- QUERY: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./query").TypeIsQueryOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
22
- ARRAY: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./type").DtoOrTypeIs)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
23
- PAGING: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./type").DtoOrTypeIs)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & import("./generators/typeGenerator").TypeIsData;
1
+ export declare const LegacyTypeIs: {
2
+ FOREIGNKEY: (...options: any[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & import("./generators/typeGenerator").TypeIsData;
3
+ BELONGSTO: (...options: any[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & import("./generators/typeGenerator").TypeIsData;
4
+ QUERY: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./query").TypeIsQueryOption)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & import("./generators/typeGenerator").TypeIsData;
5
+ PAGING: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | import("./type").DtoOrTypeIs)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & import("./generators/typeGenerator").TypeIsData;
24
6
  };
25
7
  export { DtoOrTypeIs, ClassType } from './type';
26
8
  export { TypeIsData, getTypesData, getData } from './generators/typeGenerator';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAuBA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;CAuBlB,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;wCASm4C,YAAY,EAAC,qBAAsB,EAAC,uCAAwC;uCAA5E,YAAY,EAAC,qBAAsB,EAAC,uCAAwC;4JAA5E,YAAY,EAAC,qBAAsB,EAAC,uCAAwC;sJAA5E,YAAY,EAAC,qBAAsB,EAAC,uCAAwC;CAJv+C,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
@@ -3,51 +3,17 @@ 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.getData = exports.getTypesData = exports.TypeIs = void 0;
7
- const int_1 = __importDefault(require("./int"));
8
- const bigint_1 = __importDefault(require("./bigint"));
9
- const long_1 = __importDefault(require("./long"));
10
- const float_1 = __importDefault(require("./float"));
11
- const decemal_1 = __importDefault(require("./decemal"));
12
- const double_1 = __importDefault(require("./double"));
13
- const string_1 = __importDefault(require("./string"));
14
- const text_1 = __importDefault(require("./text"));
15
- const password_1 = __importDefault(require("./password"));
16
- const enum_1 = __importDefault(require("./enum"));
17
- const json_1 = __importDefault(require("./json"));
18
- const base64_1 = __importDefault(require("./base64"));
19
- const binary_1 = __importDefault(require("./binary"));
20
- const boolean_1 = __importDefault(require("./boolean"));
21
- const dateonly_1 = __importDefault(require("./dateonly"));
22
- const datetime_1 = __importDefault(require("./datetime"));
6
+ exports.getData = exports.getTypesData = exports.LegacyTypeIs = void 0;
7
+ // Sequelize 전용 타입들만 import
23
8
  const foreignkey_1 = __importDefault(require("./foreignkey"));
24
9
  const belongsto_1 = __importDefault(require("./belongsto"));
25
- const dto_1 = __importDefault(require("./dto"));
26
10
  const query_1 = __importDefault(require("./query"));
27
- const array_1 = __importDefault(require("./array"));
28
11
  const paging_1 = __importDefault(require("./paging"));
29
- exports.TypeIs = {
30
- INT: int_1.default,
31
- BIGINT: bigint_1.default,
32
- LONG: long_1.default,
33
- FLOAT: float_1.default,
34
- DECIMAL: decemal_1.default,
35
- DOUBLE: double_1.default,
36
- STRING: string_1.default,
37
- TEXT: text_1.default,
38
- PASSWORD: password_1.default,
39
- ENUM: enum_1.default,
40
- JSON: json_1.default,
41
- BASE64: base64_1.default,
42
- BINARY: binary_1.default,
43
- BOOLEAN: boolean_1.default,
44
- DATEONLY: dateonly_1.default,
45
- DATETIME: datetime_1.default,
12
+ // 레거시 코드를 위한 export - 사용하지 말 것
13
+ exports.LegacyTypeIs = {
46
14
  FOREIGNKEY: foreignkey_1.default,
47
15
  BELONGSTO: belongsto_1.default,
48
- DTO: dto_1.default,
49
16
  QUERY: query_1.default,
50
- ARRAY: array_1.default,
51
17
  PAGING: paging_1.default,
52
18
  };
53
19
  var typeGenerator_1 = require("./generators/typeGenerator");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;AAAA,gDAA8B;AAC9B,sDAAoC;AACpC,kDAAgC;AAChC,oDAAkC;AAClC,wDAAsC;AACtC,sDAAoC;AACpC,sDAAoC;AACpC,kDAAgC;AAChC,0DAAwC;AACxC,kDAAgC;AAChC,kDAAgC;AAChC,sDAAoC;AACpC,sDAAoC;AACpC,wDAAsC;AACtC,0DAAwC;AACxC,0DAAwC;AACxC,8DAA4C;AAC5C,4DAA0C;AAC1C,gDAA8B;AAC9B,oDAAkC;AAClC,oDAAkC;AAClC,sDAAoC;AAEvB,QAAA,MAAM,GAAG;IACpB,GAAG,EAAE,aAAS;IACd,MAAM,EAAE,gBAAY;IACpB,IAAI,EAAE,cAAU;IAChB,KAAK,EAAE,eAAW;IAClB,OAAO,EAAE,iBAAa;IACtB,MAAM,EAAE,gBAAY;IACpB,MAAM,EAAE,gBAAY;IACpB,IAAI,EAAE,cAAU;IAChB,QAAQ,EAAE,kBAAc;IACxB,IAAI,EAAE,cAAU;IAChB,IAAI,EAAE,cAAU;IAChB,MAAM,EAAE,gBAAY;IACpB,MAAM,EAAE,gBAAY;IACpB,OAAO,EAAE,iBAAa;IACtB,QAAQ,EAAE,kBAAc;IACxB,QAAQ,EAAE,kBAAc;IACxB,UAAU,EAAE,oBAAgB;IAC5B,SAAS,EAAE,mBAAe;IAC1B,GAAG,EAAE,aAAS;IACd,KAAK,EAAE,eAAW;IAClB,KAAK,EAAE,eAAW;IAClB,MAAM,EAAE,gBAAY;CACrB,CAAC;AAGF,4DAA+E;AAA1D,6GAAA,YAAY,OAAA;AAAE,wGAAA,OAAO,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA2B;AAC3B,8DAA4C;AAC5C,4DAA0C;AAC1C,oDAAkC;AAClC,sDAAoC;AAEpC,+BAA+B;AAClB,QAAA,YAAY,GAAG;IAC1B,UAAU,EAAE,oBAAgB;IAC5B,SAAS,EAAE,mBAAe;IAC1B,KAAK,EAAE,eAAW;IAClB,MAAM,EAAE,gBAAY;CACrB,CAAC;AAGF,4DAA+E;AAA1D,6GAAA,YAAY,OAAA;AAAE,wGAAA,OAAO,OAAA"}
@@ -1,6 +1,6 @@
1
1
  import { DtoOrTypeIs } from './index';
2
2
  import { TypeIsData } from './generators/typeGenerator';
3
3
  export declare const TypeIsPagingToSwagger: (options?: (DtoOrTypeIs & import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>>) | undefined) => import("./generators/toSwaggerGenerator").ISwaggerData;
4
- declare const TypeIsPaging: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | DtoOrTypeIs)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & TypeIsData;
4
+ declare const TypeIsPaging: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | DtoOrTypeIs)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & TypeIsData;
5
5
  export default TypeIsPaging;
6
6
  //# sourceMappingURL=paging.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"paging.d.ts","sourceRoot":"","sources":["../../src/types/paging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAiB,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAMvE,eAAO,MAAM,qBAAqB,wLAkEhC,CAAC;AAEH,QAAA,MAAM,YAAY,qPAGf,CAAC;AAEJ,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"paging.d.ts","sourceRoot":"","sources":["../../src/types/paging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAiB,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAMvE,eAAO,MAAM,qBAAqB,wLAkEhC,CAAC;AAEH,QAAA,MAAM,YAAY,2HAE0B,YAE5C,EACA,qBAAsB,EAAC,uCACW,sBAH/B,CAAC;AAEJ,eAAe,YAAY,CAAC"}
@@ -7,7 +7,7 @@ exports.TypeIsPagingToSwagger = void 0;
7
7
  const typeGenerator_1 = require("./generators/typeGenerator");
8
8
  const isClass_1 = __importDefault(require("../utils/isClass"));
9
9
  const toSwaggerGenerator_1 = require("./generators/toSwaggerGenerator");
10
- const router_1 = require("@asapjs/router");
10
+ const swagger_1 = require("../utils/swagger");
11
11
  exports.TypeIsPagingToSwagger = (0, toSwaggerGenerator_1.toSwaggerGenerator)((options) => {
12
12
  var _a;
13
13
  const isDto = (0, isClass_1.default)(options);
@@ -53,7 +53,7 @@ exports.TypeIsPagingToSwagger = (0, toSwaggerGenerator_1.toSwaggerGenerator)((op
53
53
  if (isDto) {
54
54
  const dto = new options();
55
55
  const name = `${dto.constructor.name}_PAGING`;
56
- (0, router_1.addScheme)({
56
+ (0, swagger_1.addScheme)({
57
57
  name,
58
58
  data: generateScheme(dto.swagger()),
59
59
  });
@@ -64,7 +64,7 @@ exports.TypeIsPagingToSwagger = (0, toSwaggerGenerator_1.toSwaggerGenerator)((op
64
64
  else {
65
65
  const type = options();
66
66
  const name = `TYPE_${type.__name.toUpperCase()}_PAGING`;
67
- (0, router_1.addScheme)({
67
+ (0, swagger_1.addScheme)({
68
68
  name,
69
69
  data: generateScheme((_a = type.toSwagger) === null || _a === void 0 ? void 0 : _a.call(type)),
70
70
  });
@@ -1 +1 @@
1
- {"version":3,"file":"paging.js","sourceRoot":"","sources":["../../src/types/paging.ts"],"names":[],"mappings":";;;;;;AACA,8DAAuE;AACvE,+DAAuC;AAEvC,wEAAqE;AACrE,2CAA2C;AAE9B,QAAA,qBAAqB,GAAG,IAAA,uCAAkB,EAAc,CAAC,OAAO,EAAE,EAAE;;IAC/E,MAAM,KAAK,GAAG,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC;IAE/B,MAAM,cAAc,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK;aACN;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,QAAQ;aACtB;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,YAAY;aAC1B;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,QAAQ;aACtB;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,YAAY;aAC1B;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,YAAY;aAC1B;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,WAAW;aACzB;SACF;KACF,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE;QACT,MAAM,GAAG,GAAG,IAAK,OAAgC,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;QAC9C,IAAA,kBAAS,EAAC;YACR,IAAI;YACJ,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACpC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,wBAAwB,IAAI,EAAE;SACrC,CAAC;KACH;SAAM;QACL,MAAM,IAAI,GAAI,OAA4B,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;QACxD,IAAA,kBAAS,EAAC;YACR,IAAI;YACJ,IAAI,EAAE,cAAc,CAAC,MAAA,IAAI,CAAC,SAAS,oDAAI,CAAC;SACzC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,wBAAwB,IAAI,EAAE;SACrC,CAAC;KACH;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,IAAA,6BAAa,EAAc,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,GAAG,EAAE,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC;CAChD,CAAC,CAAC,CAAC;AAEJ,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"paging.js","sourceRoot":"","sources":["../../src/types/paging.ts"],"names":[],"mappings":";;;;;;AACA,8DAAuE;AACvE,+DAAuC;AAEvC,wEAAqE;AACrE,8CAA6C;AAEhC,QAAA,qBAAqB,GAAG,IAAA,uCAAkB,EAAc,CAAC,OAAO,EAAE,EAAE;;IAC/E,MAAM,KAAK,GAAG,IAAA,iBAAO,EAAC,OAAO,CAAC,CAAC;IAE/B,MAAM,cAAc,GAAG,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,OAAO;gBACb,KAAK;aACN;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,QAAQ;aACtB;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,YAAY;aAC1B;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,QAAQ;aACtB;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,YAAY;aAC1B;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,WAAW,EAAE,YAAY;aAC1B;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,WAAW;aACzB;SACF;KACF,CAAC,CAAC;IAEH,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,GAAG,GAAG,IAAK,OAAgC,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC;QAC9C,IAAA,mBAAS,EAAC;YACR,IAAI;YACJ,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;SACpC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,wBAAwB,IAAI,EAAE;SACrC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,GAAI,OAA4B,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,QAAQ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC;QACxD,IAAA,mBAAS,EAAC;YACR,IAAI;YACJ,IAAI,EAAE,cAAc,CAAC,MAAA,IAAI,CAAC,SAAS,oDAAI,CAAC;SACzC,CAAC,CAAC;QAEH,OAAO;YACL,IAAI,EAAE,wBAAwB,IAAI,EAAE;SACrC,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,IAAA,6BAAa,EAAc,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,GAAG,EAAE,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC;CAChD,CAAC,CAAC,CAAC;AAEJ,kBAAe,YAAY,CAAC"}
@@ -15,6 +15,6 @@ export declare const TypeIsQueryToSequelize: (options?: TypeIsQueryOption) => {
15
15
  type: (() => TypeIsData) | undefined;
16
16
  };
17
17
  export declare const TypeIsQueryFixValue: (options: TypeIsQueryOption) => (o: any) => any;
18
- declare const TypeIsQuery: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | TypeIsQueryOption)[]) => (target?: any, propertyName?: string | undefined, propertyDescriptor?: PropertyDescriptor | undefined) => void & TypeIsData;
18
+ declare const TypeIsQuery: (...options: (import("sequelize").ModelAttributeColumnOptions<import("sequelize").Model<any, any>> | TypeIsQueryOption)[]) => (target?: any, propertyName?: string, propertyDescriptor?: PropertyDescriptor) => void & TypeIsData;
19
19
  export default TypeIsQuery;
20
20
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/types/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;IAC/D,IAAI,EAAE,MAAM,UAAU,CAAC;CACxB;AAED,eAAO,MAAM,oBAAoB,8LAM/B,CAAC;AAEH,eAAO,MAAM,sBAAsB,aAAc,iBAAiB;mBACjD;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;iBAZvC,UAAU;CActB,CAAC;AAEH,eAAO,MAAM,mBAAmB,YAAa,iBAAiB,SAAS,GAAG,QAEzE,CAAC;AAEF,QAAA,MAAM,WAAW,2PAKd,CAAC;AAEJ,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/types/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEvE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;IAC/D,IAAI,EAAE,MAAM,UAAU,CAAC;CACxB;AAED,eAAO,MAAM,oBAAoB,8LAM/B,CAAC;AAEH,eAAO,MAAM,sBAAsB,GAAI,UAAU,iBAAiB;mBACjD;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;iBAZvC,UAAU;CActB,CAAC;AAEH,eAAO,MAAM,mBAAmB,GAAI,SAAS,iBAAiB,MAAM,GAAG,GAAG,QAEzE,CAAC;AAEF,QAAA,MAAM,WAAW,iIAQ4vB,YAAY,EAAC,qBAAsB,EAAC,uCAAwC,sBAHt1B,CAAC;AAEJ,eAAe,WAAW,CAAC"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeIsQueryFixValue = exports.TypeIsQueryToSequelize = exports.TypeIsQueryToSwagger = void 0;
4
- const core_1 = require("@asapjs/core");
4
+ const common_1 = require("@asapjs/common");
5
5
  const toSwaggerGenerator_1 = require("./generators/toSwaggerGenerator");
6
6
  const typeGenerator_1 = require("./generators/typeGenerator");
7
7
  exports.TypeIsQueryToSwagger = (0, toSwaggerGenerator_1.toSwaggerGenerator)((options) => {
8
8
  var _a, _b;
9
9
  if (!options) {
10
- core_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - options가 전달되지 않았습니다..`);
10
+ common_1.logger.error(`@asapjs/sequelize :: @TypeIs.QUERY - options가 전달되지 않았습니다..`);
11
11
  process.exit(1);
12
12
  }
13
13
  return (_b = (_a = options.type()).toSwagger) === null || _b === void 0 ? void 0 : _b.call(_a);
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/types/query.ts"],"names":[],"mappings":";;;AAAA,uCAAsC;AACtC,wEAAqE;AACrE,8DAAuE;AAO1D,QAAA,oBAAoB,GAAG,IAAA,uCAAkB,EAAoB,CAAC,OAAO,EAAE,EAAE;;IACpF,IAAI,CAAC,OAAO,EAAE;QACZ,aAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IACD,OAAO,MAAA,MAAA,OAAO,CAAC,IAAI,EAAE,EAAC,SAAS,kDAAI,CAAC;AACtC,CAAC,CAAC,CAAC;AAEI,MAAM,sBAAsB,GAAG,CAAC,OAA2B,EAAE,EAAE,CAAC,CAAC;IACtE,KAAK,EAAE,CAAC,KAA2C,EAAE,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,KAAK,CAAC;IAC7E,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;CACpB,CAAC,CAAC;AAHU,QAAA,sBAAsB,0BAGhC;AAEI,MAAM,mBAAmB,GAAG,CAAC,OAA0B,EAAE,EAAE,CAAC,CAAC,CAAM,EAAE,EAAE;;IAC5E,OAAO,MAAA,MAAA,OAAO,CAAC,IAAI,EAAE,EAAC,QAAQ,mDAAG,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAEF,MAAM,WAAW,GAAG,IAAA,6BAAa,EAAoB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,OAAO;IACf,WAAW,EAAE,GAAG,EAAE,CAAC,IAAA,8BAAsB,EAAC,OAAO,CAAC;IAClD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAA,4BAAoB,EAAC,OAAO,CAAC;IAC9C,QAAQ,EAAE,IAAA,2BAAmB,EAAC,OAAO,CAAC;CACvC,CAAC,CAAC,CAAC;AAEJ,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/types/query.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,wEAAqE;AACrE,8DAAuE;AAO1D,QAAA,oBAAoB,GAAG,IAAA,uCAAkB,EAAoB,CAAC,OAAO,EAAE,EAAE;;IACpF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,eAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,MAAA,MAAA,OAAO,CAAC,IAAI,EAAE,EAAC,SAAS,kDAAI,CAAC;AACtC,CAAC,CAAC,CAAC;AAEI,MAAM,sBAAsB,GAAG,CAAC,OAA2B,EAAE,EAAE,CAAC,CAAC;IACtE,KAAK,EAAE,CAAC,KAA2C,EAAE,EAAE,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,KAAK,CAAC;IAC7E,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI;CACpB,CAAC,CAAC;AAHU,QAAA,sBAAsB,0BAGhC;AAEI,MAAM,mBAAmB,GAAG,CAAC,OAA0B,EAAE,EAAE,CAAC,CAAC,CAAM,EAAE,EAAE;;IAC5E,OAAO,MAAA,MAAA,OAAO,CAAC,IAAI,EAAE,EAAC,QAAQ,mDAAG,CAAC,CAAC,CAAC;AACtC,CAAC,CAAC;AAFW,QAAA,mBAAmB,uBAE9B;AAEF,MAAM,WAAW,GAAG,IAAA,6BAAa,EAAoB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,EAAE,OAAO;IACf,WAAW,EAAE,GAAG,EAAE,CAAC,IAAA,8BAAsB,EAAC,OAAO,CAAC;IAClD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAA,4BAAoB,EAAC,OAAO,CAAC;IAC9C,QAAQ,EAAE,IAAA,2BAAmB,EAAC,OAAO,CAAC;CACvC,CAAC,CAAC,CAAC;AAEJ,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function registerSequelizeTypes(): void;
2
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/types/register.ts"],"names":[],"mappings":"AAyDA,wBAAgB,sBAAsB,SAQrC"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.registerSequelizeTypes = registerSequelizeTypes;
7
+ const schema_1 = require("@asapjs/schema");
8
+ const schema_extensions_1 = require("./schema-extensions");
9
+ const paging_1 = __importDefault(require("./paging"));
10
+ // 타입 팩토리 생성
11
+ function createQueryFactory() {
12
+ return (options) => new schema_extensions_1.QueryType(options);
13
+ }
14
+ function createForeignKeyFactory() {
15
+ return (relatedClassGetterOrOptions, extraData) => {
16
+ if (typeof relatedClassGetterOrOptions === 'function') {
17
+ // 레거시 시그니처: TypeIs.FOREIGNKEY(() => Model, extraData?)
18
+ return new schema_extensions_1.ForeignKeyType({
19
+ table: relatedClassGetterOrOptions,
20
+ extraData,
21
+ });
22
+ }
23
+ // 신 시그니처: TypeIs.FOREIGNKEY({ references: ... })
24
+ return new schema_extensions_1.ForeignKeyType(relatedClassGetterOrOptions);
25
+ };
26
+ }
27
+ function createBelongsToFactory() {
28
+ return (associatedClassGetterOrOptions, optionsOrForeignKey) => {
29
+ if (typeof associatedClassGetterOrOptions === 'function') {
30
+ // 레거시 시그니처: TypeIs.BELONGSTO(() => Model, 'foreign_key' | { ... })
31
+ return new schema_extensions_1.BelongsToType({
32
+ associatedClassGetter: associatedClassGetterOrOptions,
33
+ optionsOrForeignKey,
34
+ });
35
+ }
36
+ // 신 시그니처: TypeIs.BELONGSTO({ target, foreignKey, as })
37
+ return new schema_extensions_1.BelongsToType(associatedClassGetterOrOptions);
38
+ };
39
+ }
40
+ function createPagingFactory() {
41
+ return paging_1.default;
42
+ }
43
+ // Sequelize 타입 등록
44
+ function registerSequelizeTypes() {
45
+ // TypeIs 객체에 Sequelize 전용 타입 추가
46
+ (0, schema_1.extendTypeIs)({
47
+ QUERY: createQueryFactory(),
48
+ FOREIGNKEY: createForeignKeyFactory(),
49
+ BELONGSTO: createBelongsToFactory(),
50
+ PAGING: createPagingFactory(),
51
+ });
52
+ }
53
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/types/register.ts"],"names":[],"mappings":";;;;;AAyDA,wDAQC;AAjED,2CAAsD;AACtD,2DAO6B;AAC7B,sDAAoC;AAEpC,YAAY;AACZ,SAAS,kBAAkB;IACzB,OAAO,CAAC,OAAqB,EAAE,EAAE,CAAC,IAAI,6BAAS,CAAC,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,CACL,2BAA4D,EAC5D,SAA+B,EAC/B,EAAE;QACF,IAAI,OAAO,2BAA2B,KAAK,UAAU,EAAE,CAAC;YACtD,uDAAuD;YACvD,OAAO,IAAI,kCAAc,CAAC;gBACxB,KAAK,EAAE,2BAA2B;gBAClC,SAAS;aACV,CAAC,CAAC;QACL,CAAC;QAED,iDAAiD;QACjD,OAAO,IAAI,kCAAc,CAAC,2BAA2B,CAAC,CAAC;IACzD,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO,CACL,8BAA8D,EAC9D,mBAAmE,EACnE,EAAE;QACF,IAAI,OAAO,8BAA8B,KAAK,UAAU,EAAE,CAAC;YACzD,mEAAmE;YACnE,OAAO,IAAI,iCAAa,CAAC;gBACvB,qBAAqB,EAAE,8BAA8B;gBACrD,mBAAmB;aACpB,CAAC,CAAC;QACL,CAAC;QAED,uDAAuD;QACvD,OAAO,IAAI,iCAAa,CAAC,8BAA8B,CAAC,CAAC;IAC3D,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO,gBAAY,CAAC;AACtB,CAAC;AAED,kBAAkB;AAClB,SAAgB,sBAAsB;IACpC,gCAAgC;IAChC,IAAA,qBAAY,EAAC;QACX,KAAK,EAAE,kBAAkB,EAAE;QAC3B,UAAU,EAAE,uBAAuB,EAAE;QACrC,SAAS,EAAE,sBAAsB,EAAE;QACnC,MAAM,EAAE,mBAAmB,EAAE;KAC9B,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,116 @@
1
+ import { SchemaFactory, SchemaOptions, DecoratableSchemaType, BaseSchemaType } from '@asapjs/schema';
2
+ import { DtoOrTypeIs } from './type';
3
+ export interface QueryOptions extends SchemaOptions {
4
+ /** SQL 서브쿼리. association은 현재 테이블 별칭(예: `ticket_transaction`), `${association}.id` 등으로 참조 */
5
+ query: (props: {
6
+ association?: string;
7
+ user?: any;
8
+ }) => string;
9
+ /** 결과 타입 (toSwagger / fixValue에 사용). TypeIs.JSON() 등 반환값 또는 () => TypeIs.JSON() getter */
10
+ type?: (() => any) | any;
11
+ }
12
+ export interface ForeignKeyOptions extends SchemaOptions {
13
+ table?: () => any;
14
+ extraData?: Record<string, any>;
15
+ references?: {
16
+ model: string;
17
+ key: string;
18
+ };
19
+ onDelete?: 'CASCADE' | 'SET NULL' | 'NO ACTION' | 'RESTRICT';
20
+ onUpdate?: 'CASCADE' | 'SET NULL' | 'NO ACTION' | 'RESTRICT';
21
+ }
22
+ export interface BelongsToOptions extends SchemaOptions {
23
+ associatedClassGetter?: () => any;
24
+ optionsOrForeignKey?: string | {
25
+ foreignKey?: string;
26
+ as?: string;
27
+ };
28
+ target?: any;
29
+ foreignKey?: string;
30
+ as?: string;
31
+ }
32
+ declare module '@asapjs/schema' {
33
+ interface TypeIsInterface {
34
+ QUERY: SchemaFactory<QueryOptions>;
35
+ FOREIGNKEY: (relatedClassGetterOrOptions: (() => any) | ForeignKeyOptions, extraData?: Record<string, any>) => DecoratableSchemaType<number | string>;
36
+ BELONGSTO: (associatedClassGetterOrOptions: (() => any) | BelongsToOptions, optionsOrForeignKey?: string | {
37
+ foreignKey?: string;
38
+ as?: string;
39
+ }) => DecoratableSchemaType<any>;
40
+ PAGING: (options: DtoOrTypeIs) => any;
41
+ }
42
+ }
43
+ export declare class QueryType extends BaseSchemaType<any> {
44
+ __name: string;
45
+ private queryFn;
46
+ private typeOption?;
47
+ constructor(options: QueryOptions);
48
+ validate(value: any): boolean;
49
+ parse(value: any): any;
50
+ /** 내부 타입 반환 (type이 getter면 호출, 아니면 그대로 반환) */
51
+ getType(): any;
52
+ getQuery(props: {
53
+ association?: string;
54
+ user?: any;
55
+ }): string;
56
+ toSwagger(): any;
57
+ fixValue(o: any): any;
58
+ /**
59
+ * 레거시 TypeIsQueryToSequelize와 동일한 형식.
60
+ * schema의 sequelize 플러그인은 'query'를 처리하지 않으므로 직접 반환.
61
+ */
62
+ toSequelize(): {
63
+ query: (props: {
64
+ user?: any;
65
+ association?: string;
66
+ }) => string;
67
+ type?: () => any;
68
+ };
69
+ }
70
+ export declare class ForeignKeyType extends BaseSchemaType<number | string> {
71
+ __name: string;
72
+ references?: {
73
+ model: string;
74
+ key: string;
75
+ };
76
+ private table?;
77
+ private extraData?;
78
+ constructor(options: ForeignKeyOptions);
79
+ validate(value: any): boolean;
80
+ parse(value: any): number | string;
81
+ /**
82
+ * BaseSchemaType.toSequelize()는 plugin.transform()을 호출하는데,
83
+ * schema의 sequelize 플러그인은 'foreignkey'를 처리하지 않음.
84
+ * TypeIsForienKeyAddColumn이 기대하는 { table, extraData } 형식을 직접 반환..
85
+ */
86
+ toSequelize(): {
87
+ table: any;
88
+ extraData?: {
89
+ type?: () => any;
90
+ } & Record<string, any>;
91
+ };
92
+ }
93
+ export declare class BelongsToType extends BaseSchemaType<any> {
94
+ __name: string;
95
+ target: any;
96
+ foreignKey?: string;
97
+ as?: string;
98
+ private associatedClassGetter?;
99
+ private preparedOptionsOrForeignKey?;
100
+ constructor(options: BelongsToOptions);
101
+ validate(value: any): boolean;
102
+ parse(value: any): any;
103
+ /**
104
+ * BaseSchemaType.toSequelize()는 plugin.transform()을 호출하는데,
105
+ * schema의 sequelize 플러그인은 'belongsto'를 처리하지 않음.
106
+ * TypeIsBelongsToAddColumn이 기대하는 { associatedClassGetter, optionsOrForeignKey } 형식을 직접 반환.
107
+ */
108
+ toSequelize(): {
109
+ associatedClassGetter: () => any;
110
+ optionsOrForeignKey?: string | {
111
+ foreignKey?: string;
112
+ as?: string;
113
+ };
114
+ };
115
+ }
116
+ //# sourceMappingURL=schema-extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-extensions.d.ts","sourceRoot":"","sources":["../../src/types/schema-extensions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.BelongsToType = exports.ForeignKeyType = exports.QueryType = void 0;
15
+ const schema_1 = require("@asapjs/schema");
16
+ // QUERY 타입 구현
17
+ class QueryType extends schema_1.BaseSchemaType {
18
+ constructor(options) {
19
+ super(options);
20
+ this.__name = 'query';
21
+ this.queryFn = options.query;
22
+ this.typeOption = options.type;
23
+ }
24
+ validate(value) {
25
+ // QUERY는 실행 결과를 검증
26
+ return true;
27
+ }
28
+ parse(value) {
29
+ return value;
30
+ }
31
+ /** 내부 타입 반환 (type이 getter면 호출, 아니면 그대로 반환) */
32
+ getType() {
33
+ if (this.typeOption == null)
34
+ return undefined;
35
+ return typeof this.typeOption === 'function' ? this.typeOption() : this.typeOption;
36
+ }
37
+ getQuery(props) {
38
+ return this.queryFn(props);
39
+ }
40
+ toSwagger() {
41
+ var _a, _b;
42
+ const inner = this.getType();
43
+ return (_b = (_a = inner === null || inner === void 0 ? void 0 : inner.toSwagger) === null || _a === void 0 ? void 0 : _a.call(inner)) !== null && _b !== void 0 ? _b : null;
44
+ }
45
+ fixValue(o) {
46
+ var _a, _b;
47
+ const inner = this.getType();
48
+ return (_b = (_a = inner === null || inner === void 0 ? void 0 : inner.fixValue) === null || _a === void 0 ? void 0 : _a.call(inner, o)) !== null && _b !== void 0 ? _b : o;
49
+ }
50
+ /**
51
+ * 레거시 TypeIsQueryToSequelize와 동일한 형식.
52
+ * schema의 sequelize 플러그인은 'query'를 처리하지 않으므로 직접 반환.
53
+ */
54
+ toSequelize() {
55
+ return {
56
+ query: (props) => this.queryFn(props),
57
+ type: () => this.getType(),
58
+ };
59
+ }
60
+ }
61
+ exports.QueryType = QueryType;
62
+ // FOREIGNKEY 타입 구현
63
+ class ForeignKeyType extends schema_1.BaseSchemaType {
64
+ constructor(options) {
65
+ var _a;
66
+ super(options);
67
+ this.__name = 'foreignkey';
68
+ this.references = options.references;
69
+ this.table = options.table;
70
+ if (options.extraData) {
71
+ this.extraData = options.extraData;
72
+ }
73
+ else {
74
+ const _b = options, { references, table } = _b, rest = __rest(_b, ["references", "table"]);
75
+ this.extraData = rest;
76
+ }
77
+ if (!((_a = this.extraData) === null || _a === void 0 ? void 0 : _a.type)) {
78
+ this.extraData = Object.assign(Object.assign({}, this.extraData), { type: schema_1.TypeIs.INT });
79
+ }
80
+ }
81
+ validate(value) {
82
+ return typeof value === 'number' || typeof value === 'string';
83
+ }
84
+ parse(value) {
85
+ return value;
86
+ }
87
+ /**
88
+ * BaseSchemaType.toSequelize()는 plugin.transform()을 호출하는데,
89
+ * schema의 sequelize 플러그인은 'foreignkey'를 처리하지 않음.
90
+ * TypeIsForienKeyAddColumn이 기대하는 { table, extraData } 형식을 직접 반환..
91
+ */
92
+ toSequelize() {
93
+ if (this.table) {
94
+ return {
95
+ table: this.table,
96
+ extraData: this.extraData,
97
+ };
98
+ }
99
+ return {
100
+ table: this.references,
101
+ extraData: this.extraData,
102
+ };
103
+ }
104
+ }
105
+ exports.ForeignKeyType = ForeignKeyType;
106
+ // BELONGSTO 타입 구현
107
+ class BelongsToType extends schema_1.BaseSchemaType {
108
+ constructor(options) {
109
+ super(options);
110
+ this.__name = 'belongsto';
111
+ this.target = options.target;
112
+ this.foreignKey = options.foreignKey;
113
+ this.as = options.as;
114
+ this.associatedClassGetter =
115
+ options.associatedClassGetter ||
116
+ (typeof options.target === 'function' ? options.target : undefined);
117
+ if (options.optionsOrForeignKey !== undefined) {
118
+ this.preparedOptionsOrForeignKey = options.optionsOrForeignKey;
119
+ }
120
+ else {
121
+ const associationOptions = {};
122
+ if (options.foreignKey != null)
123
+ associationOptions.foreignKey = options.foreignKey;
124
+ if (options.as != null)
125
+ associationOptions.as = options.as;
126
+ this.preparedOptionsOrForeignKey =
127
+ Object.keys(associationOptions).length > 0 ? associationOptions : undefined;
128
+ }
129
+ }
130
+ validate(value) {
131
+ return true;
132
+ }
133
+ parse(value) {
134
+ return value;
135
+ }
136
+ /**
137
+ * BaseSchemaType.toSequelize()는 plugin.transform()을 호출하는데,
138
+ * schema의 sequelize 플러그인은 'belongsto'를 처리하지 않음.
139
+ * TypeIsBelongsToAddColumn이 기대하는 { associatedClassGetter, optionsOrForeignKey } 형식을 직접 반환.
140
+ */
141
+ toSequelize() {
142
+ const associatedClassGetter = this.associatedClassGetter || (typeof this.target === 'function' ? this.target : () => this.target);
143
+ return {
144
+ associatedClassGetter,
145
+ optionsOrForeignKey: this.preparedOptionsOrForeignKey,
146
+ };
147
+ }
148
+ }
149
+ exports.BelongsToType = BelongsToType;
150
+ //# sourceMappingURL=schema-extensions.js.map