@steroidsjs/nest 1.1.33 → 1.2.2

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 (354) hide show
  1. package/jest.e2e.config.d.ts +3 -0
  2. package/jest.e2e.config.js +12 -0
  3. package/jest.e2e.config.js.map +1 -0
  4. package/package.json +13 -4
  5. package/{domain → src/domain}/base/BaseEnum.d.ts +0 -0
  6. package/{domain → src/domain}/base/BaseEnum.js +0 -0
  7. package/src/domain/base/BaseEnum.js.map +1 -0
  8. package/{index.d.ts → src/index.d.ts} +0 -0
  9. package/{index.js → src/index.js} +0 -0
  10. package/src/index.js.map +1 -0
  11. package/{infrastructure → src/infrastructure}/base/DatabaseNamingStrategy.d.ts +0 -0
  12. package/{infrastructure → src/infrastructure}/base/DatabaseNamingStrategy.js +0 -0
  13. package/src/infrastructure/base/DatabaseNamingStrategy.js.map +1 -0
  14. package/{infrastructure → src/infrastructure}/commands/MigrateCommand.d.ts +0 -0
  15. package/{infrastructure → src/infrastructure}/commands/MigrateCommand.js +0 -0
  16. package/src/infrastructure/commands/MigrateCommand.js.map +1 -0
  17. package/{infrastructure → src/infrastructure}/commands/dbml/dbml2code.d.ts +0 -0
  18. package/{infrastructure → src/infrastructure}/commands/dbml/dbml2code.js +0 -0
  19. package/src/infrastructure/commands/dbml/dbml2code.js.map +1 -0
  20. package/{infrastructure → src/infrastructure}/commands/dbml/templates.d.ts +0 -0
  21. package/{infrastructure → src/infrastructure}/commands/dbml/templates.js +1 -1
  22. package/src/infrastructure/commands/dbml/templates.js.map +1 -0
  23. package/{infrastructure → src/infrastructure}/commands/generate/CustomPostgresQueryRunner.d.ts +0 -0
  24. package/{infrastructure → src/infrastructure}/commands/generate/CustomPostgresQueryRunner.js +0 -0
  25. package/src/infrastructure/commands/generate/CustomPostgresQueryRunner.js.map +1 -0
  26. package/{infrastructure → src/infrastructure}/commands/generate/CustomRdbmsSchemaBuilder.d.ts +0 -0
  27. package/{infrastructure → src/infrastructure}/commands/generate/CustomRdbmsSchemaBuilder.js +0 -0
  28. package/src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js.map +1 -0
  29. package/{infrastructure → src/infrastructure}/commands/generate/index.d.ts +0 -0
  30. package/{infrastructure → src/infrastructure}/commands/generate/index.js +0 -0
  31. package/src/infrastructure/commands/generate/index.js.map +1 -0
  32. package/{infrastructure → src/infrastructure}/decorators/ApiOkSearchResponse.d.ts +0 -0
  33. package/{infrastructure → src/infrastructure}/decorators/ApiOkSearchResponse.js +0 -0
  34. package/src/infrastructure/decorators/ApiOkSearchResponse.js.map +1 -0
  35. package/src/infrastructure/decorators/Computable.d.ts +3 -0
  36. package/src/infrastructure/decorators/Computable.js +7 -0
  37. package/src/infrastructure/decorators/Computable.js.map +1 -0
  38. package/{infrastructure → src/infrastructure}/decorators/Context.d.ts +0 -0
  39. package/{infrastructure → src/infrastructure}/decorators/Context.js +0 -0
  40. package/src/infrastructure/decorators/Context.js.map +1 -0
  41. package/{infrastructure → src/infrastructure}/decorators/TableFromModel.d.ts +1 -0
  42. package/{infrastructure → src/infrastructure}/decorators/TableFromModel.js +7 -1
  43. package/src/infrastructure/decorators/TableFromModel.js.map +1 -0
  44. package/src/infrastructure/decorators/Transform.d.ts +15 -0
  45. package/src/infrastructure/decorators/Transform.js +19 -0
  46. package/src/infrastructure/decorators/Transform.js.map +1 -0
  47. package/{infrastructure → src/infrastructure}/decorators/fields/BaseField.d.ts +3 -0
  48. package/{infrastructure → src/infrastructure}/decorators/fields/BaseField.js +7 -2
  49. package/src/infrastructure/decorators/fields/BaseField.js.map +1 -0
  50. package/{infrastructure → src/infrastructure}/decorators/fields/BooleanField.d.ts +0 -0
  51. package/{infrastructure → src/infrastructure}/decorators/fields/BooleanField.js +0 -0
  52. package/src/infrastructure/decorators/fields/BooleanField.js.map +1 -0
  53. package/{infrastructure → src/infrastructure}/decorators/fields/CoordinateField.d.ts +0 -0
  54. package/{infrastructure → src/infrastructure}/decorators/fields/CoordinateField.js +0 -0
  55. package/src/infrastructure/decorators/fields/CoordinateField.js.map +1 -0
  56. package/{infrastructure → src/infrastructure}/decorators/fields/CreateTimeField.d.ts +0 -0
  57. package/{infrastructure → src/infrastructure}/decorators/fields/CreateTimeField.js +8 -4
  58. package/src/infrastructure/decorators/fields/CreateTimeField.js.map +1 -0
  59. package/{infrastructure → src/infrastructure}/decorators/fields/DateField.d.ts +1 -0
  60. package/{infrastructure → src/infrastructure}/decorators/fields/DateField.js +18 -4
  61. package/src/infrastructure/decorators/fields/DateField.js.map +1 -0
  62. package/{infrastructure → src/infrastructure}/decorators/fields/DateTimeField.d.ts +1 -0
  63. package/{infrastructure → src/infrastructure}/decorators/fields/DateTimeField.js +16 -1
  64. package/src/infrastructure/decorators/fields/DateTimeField.js.map +1 -0
  65. package/{infrastructure → src/infrastructure}/decorators/fields/DecimalField.d.ts +0 -0
  66. package/{infrastructure → src/infrastructure}/decorators/fields/DecimalField.js +0 -0
  67. package/src/infrastructure/decorators/fields/DecimalField.js.map +1 -0
  68. package/{infrastructure → src/infrastructure}/decorators/fields/EmailField.d.ts +0 -0
  69. package/{infrastructure → src/infrastructure}/decorators/fields/EmailField.js +0 -0
  70. package/src/infrastructure/decorators/fields/EmailField.js.map +1 -0
  71. package/{infrastructure → src/infrastructure}/decorators/fields/EnumField.d.ts +0 -0
  72. package/{infrastructure → src/infrastructure}/decorators/fields/EnumField.js +0 -0
  73. package/src/infrastructure/decorators/fields/EnumField.js.map +1 -0
  74. package/{infrastructure → src/infrastructure}/decorators/fields/ExtendField.d.ts +0 -0
  75. package/{infrastructure → src/infrastructure}/decorators/fields/ExtendField.js +0 -0
  76. package/src/infrastructure/decorators/fields/ExtendField.js.map +1 -0
  77. package/{infrastructure → src/infrastructure}/decorators/fields/FileField.d.ts +0 -0
  78. package/{infrastructure → src/infrastructure}/decorators/fields/FileField.js +0 -0
  79. package/src/infrastructure/decorators/fields/FileField.js.map +1 -0
  80. package/{infrastructure → src/infrastructure}/decorators/fields/HtmlField.d.ts +0 -0
  81. package/{infrastructure → src/infrastructure}/decorators/fields/HtmlField.js +0 -0
  82. package/src/infrastructure/decorators/fields/HtmlField.js.map +1 -0
  83. package/{infrastructure → src/infrastructure}/decorators/fields/IntegerField.d.ts +0 -0
  84. package/{infrastructure → src/infrastructure}/decorators/fields/IntegerField.js +0 -0
  85. package/src/infrastructure/decorators/fields/IntegerField.js.map +1 -0
  86. package/{infrastructure → src/infrastructure}/decorators/fields/PasswordField.d.ts +0 -0
  87. package/{infrastructure → src/infrastructure}/decorators/fields/PasswordField.js +0 -0
  88. package/src/infrastructure/decorators/fields/PasswordField.js.map +1 -0
  89. package/{infrastructure → src/infrastructure}/decorators/fields/PhoneField.d.ts +0 -0
  90. package/{infrastructure → src/infrastructure}/decorators/fields/PhoneField.js +0 -0
  91. package/src/infrastructure/decorators/fields/PhoneField.js.map +1 -0
  92. package/{infrastructure → src/infrastructure}/decorators/fields/PrimaryKeyField.d.ts +0 -0
  93. package/{infrastructure → src/infrastructure}/decorators/fields/PrimaryKeyField.js +0 -0
  94. package/src/infrastructure/decorators/fields/PrimaryKeyField.js.map +1 -0
  95. package/src/infrastructure/decorators/fields/RelationField.d.ts +37 -0
  96. package/src/infrastructure/decorators/fields/RelationField.js +95 -0
  97. package/src/infrastructure/decorators/fields/RelationField.js.map +1 -0
  98. package/src/infrastructure/decorators/fields/RelationIdField.d.ts +20 -0
  99. package/src/infrastructure/decorators/fields/RelationIdField.js +60 -0
  100. package/src/infrastructure/decorators/fields/RelationIdField.js.map +1 -0
  101. package/{infrastructure → src/infrastructure}/decorators/fields/StringField.d.ts +0 -0
  102. package/{infrastructure → src/infrastructure}/decorators/fields/StringField.js +0 -0
  103. package/src/infrastructure/decorators/fields/StringField.js.map +1 -0
  104. package/{infrastructure → src/infrastructure}/decorators/fields/TextField.d.ts +0 -0
  105. package/{infrastructure → src/infrastructure}/decorators/fields/TextField.js +0 -0
  106. package/src/infrastructure/decorators/fields/TextField.js.map +1 -0
  107. package/{infrastructure → src/infrastructure}/decorators/fields/TimeField.d.ts +0 -0
  108. package/{infrastructure → src/infrastructure}/decorators/fields/TimeField.js +0 -0
  109. package/src/infrastructure/decorators/fields/TimeField.js.map +1 -0
  110. package/{infrastructure → src/infrastructure}/decorators/fields/UidField.d.ts +0 -0
  111. package/{infrastructure → src/infrastructure}/decorators/fields/UidField.js +0 -0
  112. package/src/infrastructure/decorators/fields/UidField.js.map +1 -0
  113. package/{infrastructure → src/infrastructure}/decorators/fields/UpdateTimeField.d.ts +0 -0
  114. package/{infrastructure → src/infrastructure}/decorators/fields/UpdateTimeField.js +8 -4
  115. package/src/infrastructure/decorators/fields/UpdateTimeField.js.map +1 -0
  116. package/{infrastructure → src/infrastructure}/decorators/fields/index.d.ts +0 -0
  117. package/{infrastructure → src/infrastructure}/decorators/fields/index.js +0 -0
  118. package/src/infrastructure/decorators/fields/index.js.map +1 -0
  119. package/{infrastructure → src/infrastructure}/decorators/schema/SchemaSelect.d.ts +0 -0
  120. package/{infrastructure → src/infrastructure}/decorators/schema/SchemaSelect.js +0 -0
  121. package/src/infrastructure/decorators/schema/SchemaSelect.js.map +1 -0
  122. package/{infrastructure → src/infrastructure}/filters/ValidationExceptionFilter.d.ts +0 -0
  123. package/{infrastructure → src/infrastructure}/filters/ValidationExceptionFilter.js +0 -0
  124. package/src/infrastructure/filters/ValidationExceptionFilter.js.map +1 -0
  125. package/{infrastructure → src/infrastructure}/helpers/ModuleHelper.d.ts +0 -0
  126. package/{infrastructure → src/infrastructure}/helpers/ModuleHelper.js +0 -0
  127. package/src/infrastructure/helpers/ModuleHelper.js.map +1 -0
  128. package/{infrastructure → src/infrastructure}/pipes/CreateDtoPipe.d.ts +0 -0
  129. package/{infrastructure → src/infrastructure}/pipes/CreateDtoPipe.js +0 -0
  130. package/src/infrastructure/pipes/CreateDtoPipe.js.map +1 -0
  131. package/{infrastructure → src/infrastructure}/pipes/SchemaSerializer.d.ts +0 -0
  132. package/{infrastructure → src/infrastructure}/pipes/SchemaSerializer.js +2 -2
  133. package/src/infrastructure/pipes/SchemaSerializer.js.map +1 -0
  134. package/{infrastructure → src/infrastructure}/repositories/CrudRepository.d.ts +2 -1
  135. package/{infrastructure → src/infrastructure}/repositories/CrudRepository.js +13 -7
  136. package/src/infrastructure/repositories/CrudRepository.js.map +1 -0
  137. package/{infrastructure → src/infrastructure}/schemas/SearchSchema.d.ts +0 -0
  138. package/{infrastructure → src/infrastructure}/schemas/SearchSchema.js +0 -0
  139. package/src/infrastructure/schemas/SearchSchema.js.map +1 -0
  140. package/src/infrastructure/tests/ModelTest.test.d.ts +1 -0
  141. package/src/infrastructure/tests/ModelTest.test.js +112 -0
  142. package/src/infrastructure/tests/ModelTest.test.js.map +1 -0
  143. package/src/infrastructure/tests/app/models/ArticleModel.d.ts +15 -0
  144. package/src/infrastructure/tests/app/models/ArticleModel.js +79 -0
  145. package/src/infrastructure/tests/app/models/ArticleModel.js.map +1 -0
  146. package/src/infrastructure/tests/app/models/CommentModel.d.ts +11 -0
  147. package/src/infrastructure/tests/app/models/CommentModel.js +58 -0
  148. package/src/infrastructure/tests/app/models/CommentModel.js.map +1 -0
  149. package/src/infrastructure/tests/app/models/FileModel.d.ts +7 -0
  150. package/src/infrastructure/tests/app/models/FileModel.js +41 -0
  151. package/src/infrastructure/tests/app/models/FileModel.js.map +1 -0
  152. package/src/infrastructure/tests/app/models/ImageModel.d.ts +8 -0
  153. package/src/infrastructure/tests/app/models/ImageModel.js +45 -0
  154. package/src/infrastructure/tests/app/models/ImageModel.js.map +1 -0
  155. package/src/infrastructure/tests/app/models/TagModel.d.ts +4 -0
  156. package/src/infrastructure/tests/app/models/TagModel.js +25 -0
  157. package/src/infrastructure/tests/app/models/TagModel.js.map +1 -0
  158. package/src/infrastructure/tests/app/models/UserInfoModel.d.ts +7 -0
  159. package/src/infrastructure/tests/app/models/UserInfoModel.js +41 -0
  160. package/src/infrastructure/tests/app/models/UserInfoModel.js.map +1 -0
  161. package/src/infrastructure/tests/app/models/UserModel.d.ts +12 -0
  162. package/src/infrastructure/tests/app/models/UserModel.js +71 -0
  163. package/src/infrastructure/tests/app/models/UserModel.js.map +1 -0
  164. package/src/infrastructure/tests/app/repositories/ArticleRepository.d.ts +9 -0
  165. package/src/infrastructure/tests/app/repositories/ArticleRepository.js +35 -0
  166. package/src/infrastructure/tests/app/repositories/ArticleRepository.js.map +1 -0
  167. package/src/infrastructure/tests/app/repositories/CommentRepository.d.ts +9 -0
  168. package/src/infrastructure/tests/app/repositories/CommentRepository.js +35 -0
  169. package/src/infrastructure/tests/app/repositories/CommentRepository.js.map +1 -0
  170. package/src/infrastructure/tests/app/repositories/FileRepository.d.ts +9 -0
  171. package/src/infrastructure/tests/app/repositories/FileRepository.js +35 -0
  172. package/src/infrastructure/tests/app/repositories/FileRepository.js.map +1 -0
  173. package/src/infrastructure/tests/app/repositories/ImageRepository.d.ts +9 -0
  174. package/src/infrastructure/tests/app/repositories/ImageRepository.js +35 -0
  175. package/src/infrastructure/tests/app/repositories/ImageRepository.js.map +1 -0
  176. package/src/infrastructure/tests/app/repositories/TagRepository.d.ts +9 -0
  177. package/src/infrastructure/tests/app/repositories/TagRepository.js +35 -0
  178. package/src/infrastructure/tests/app/repositories/TagRepository.js.map +1 -0
  179. package/src/infrastructure/tests/app/repositories/UserRepository.d.ts +9 -0
  180. package/src/infrastructure/tests/app/repositories/UserRepository.js +35 -0
  181. package/src/infrastructure/tests/app/repositories/UserRepository.js.map +1 -0
  182. package/src/infrastructure/tests/app/services/ArticleService.d.ts +9 -0
  183. package/src/infrastructure/tests/app/services/ArticleService.js +29 -0
  184. package/src/infrastructure/tests/app/services/ArticleService.js.map +1 -0
  185. package/src/infrastructure/tests/app/services/CommentService.d.ts +9 -0
  186. package/src/infrastructure/tests/app/services/CommentService.js +29 -0
  187. package/src/infrastructure/tests/app/services/CommentService.js.map +1 -0
  188. package/src/infrastructure/tests/app/services/FileService.d.ts +9 -0
  189. package/src/infrastructure/tests/app/services/FileService.js +29 -0
  190. package/src/infrastructure/tests/app/services/FileService.js.map +1 -0
  191. package/src/infrastructure/tests/app/services/ImageService.d.ts +9 -0
  192. package/src/infrastructure/tests/app/services/ImageService.js +29 -0
  193. package/src/infrastructure/tests/app/services/ImageService.js.map +1 -0
  194. package/src/infrastructure/tests/app/services/TagService.d.ts +9 -0
  195. package/src/infrastructure/tests/app/services/TagService.js +29 -0
  196. package/src/infrastructure/tests/app/services/TagService.js.map +1 -0
  197. package/src/infrastructure/tests/app/services/UserService.d.ts +9 -0
  198. package/src/infrastructure/tests/app/services/UserService.js +29 -0
  199. package/src/infrastructure/tests/app/services/UserService.js.map +1 -0
  200. package/src/infrastructure/tests/app/tables/ArticleTable.d.ts +3 -0
  201. package/src/infrastructure/tests/app/tables/ArticleTable.js +18 -0
  202. package/src/infrastructure/tests/app/tables/ArticleTable.js.map +1 -0
  203. package/src/infrastructure/tests/app/tables/CommentTable.d.ts +3 -0
  204. package/src/infrastructure/tests/app/tables/CommentTable.js +18 -0
  205. package/src/infrastructure/tests/app/tables/CommentTable.js.map +1 -0
  206. package/src/infrastructure/tests/app/tables/FileTable.d.ts +3 -0
  207. package/src/infrastructure/tests/app/tables/FileTable.js +18 -0
  208. package/src/infrastructure/tests/app/tables/FileTable.js.map +1 -0
  209. package/src/infrastructure/tests/app/tables/ImageTable.d.ts +3 -0
  210. package/src/infrastructure/tests/app/tables/ImageTable.js +18 -0
  211. package/src/infrastructure/tests/app/tables/ImageTable.js.map +1 -0
  212. package/src/infrastructure/tests/app/tables/TagTable.d.ts +3 -0
  213. package/src/infrastructure/tests/app/tables/TagTable.js +18 -0
  214. package/src/infrastructure/tests/app/tables/TagTable.js.map +1 -0
  215. package/src/infrastructure/tests/app/tables/UserInfoTable.d.ts +3 -0
  216. package/src/infrastructure/tests/app/tables/UserInfoTable.js +18 -0
  217. package/src/infrastructure/tests/app/tables/UserInfoTable.js.map +1 -0
  218. package/src/infrastructure/tests/app/tables/UserTable.d.ts +3 -0
  219. package/src/infrastructure/tests/app/tables/UserTable.js +18 -0
  220. package/src/infrastructure/tests/app/tables/UserTable.js.map +1 -0
  221. package/src/infrastructure/tests/bootstrap.d.ts +1 -0
  222. package/src/infrastructure/tests/bootstrap.js +60 -0
  223. package/src/infrastructure/tests/bootstrap.js.map +1 -0
  224. package/{usecases → src/usecases}/base/SearchQuery.d.ts +1 -0
  225. package/{usecases → src/usecases}/base/SearchQuery.js +3 -0
  226. package/src/usecases/base/SearchQuery.js.map +1 -0
  227. package/{usecases → src/usecases}/dtos/ContextDto.d.ts +0 -0
  228. package/{usecases → src/usecases}/dtos/ContextDto.js +0 -0
  229. package/src/usecases/dtos/ContextDto.js.map +1 -0
  230. package/{usecases → src/usecases}/dtos/SearchInputDto.d.ts +0 -0
  231. package/{usecases → src/usecases}/dtos/SearchInputDto.js +0 -0
  232. package/src/usecases/dtos/SearchInputDto.js.map +1 -0
  233. package/{usecases → src/usecases}/dtos/SearchResultDto.d.ts +0 -0
  234. package/{usecases → src/usecases}/dtos/SearchResultDto.js +0 -0
  235. package/src/usecases/dtos/SearchResultDto.js.map +1 -0
  236. package/{usecases → src/usecases}/exceptions/BadRequestException.d.ts +0 -0
  237. package/{usecases → src/usecases}/exceptions/BadRequestException.js +0 -0
  238. package/src/usecases/exceptions/BadRequestException.js.map +1 -0
  239. package/{usecases → src/usecases}/exceptions/DataMapperException.d.ts +0 -0
  240. package/{usecases → src/usecases}/exceptions/DataMapperException.js +0 -0
  241. package/src/usecases/exceptions/DataMapperException.js.map +1 -0
  242. package/{usecases → src/usecases}/exceptions/ForbiddenException.d.ts +0 -0
  243. package/{usecases → src/usecases}/exceptions/ForbiddenException.js +0 -0
  244. package/src/usecases/exceptions/ForbiddenException.js.map +1 -0
  245. package/{usecases → src/usecases}/exceptions/UnauthorizedException.d.ts +0 -0
  246. package/{usecases → src/usecases}/exceptions/UnauthorizedException.js +0 -0
  247. package/src/usecases/exceptions/UnauthorizedException.js.map +1 -0
  248. package/{usecases → src/usecases}/exceptions/ValidationException.d.ts +0 -0
  249. package/{usecases → src/usecases}/exceptions/ValidationException.js +0 -0
  250. package/src/usecases/exceptions/ValidationException.js.map +1 -0
  251. package/{usecases → src/usecases}/exceptions/index.d.ts +0 -0
  252. package/{usecases → src/usecases}/exceptions/index.js +0 -0
  253. package/src/usecases/exceptions/index.js.map +1 -0
  254. package/{usecases → src/usecases}/helpers/ConditionHelper.d.ts +0 -0
  255. package/{usecases → src/usecases}/helpers/ConditionHelper.js +0 -0
  256. package/src/usecases/helpers/ConditionHelper.js.map +1 -0
  257. package/src/usecases/helpers/DataMapper.d.ts +7 -0
  258. package/src/usecases/helpers/DataMapper.js +75 -0
  259. package/src/usecases/helpers/DataMapper.js.map +1 -0
  260. package/{usecases → src/usecases}/helpers/SearchHelper.d.ts +0 -0
  261. package/{usecases → src/usecases}/helpers/SearchHelper.js +3 -1
  262. package/src/usecases/helpers/SearchHelper.js.map +1 -0
  263. package/{usecases → src/usecases}/helpers/ValidationHelper.d.ts +0 -0
  264. package/{usecases → src/usecases}/helpers/ValidationHelper.js +0 -0
  265. package/src/usecases/helpers/ValidationHelper.js.map +1 -0
  266. package/{usecases → src/usecases}/interfaces/ICrudRepository.d.ts +0 -0
  267. package/{usecases → src/usecases}/interfaces/ICrudRepository.js +0 -0
  268. package/src/usecases/interfaces/ICrudRepository.js.map +1 -0
  269. package/{usecases → src/usecases}/interfaces/IFormError.d.ts +0 -0
  270. package/{usecases → src/usecases}/interfaces/IFormError.js +0 -0
  271. package/src/usecases/interfaces/IFormError.js.map +1 -0
  272. package/{usecases → src/usecases}/interfaces/IManualSchema.d.ts +0 -0
  273. package/{usecases → src/usecases}/interfaces/IManualSchema.js +0 -0
  274. package/src/usecases/interfaces/IManualSchema.js.map +1 -0
  275. package/src/usecases/interfaces/ISaveManager.d.ts +3 -0
  276. package/src/usecases/interfaces/ISaveManager.js +3 -0
  277. package/src/usecases/interfaces/ISaveManager.js.map +1 -0
  278. package/{usecases → src/usecases}/services/CrudService.d.ts +0 -1
  279. package/{usecases → src/usecases}/services/CrudService.js +13 -11
  280. package/src/usecases/services/CrudService.js.map +1 -0
  281. package/tsconfig.tsbuildinfo +1 -1
  282. package/domain/base/BaseEnum.js.map +0 -1
  283. package/index.js.map +0 -1
  284. package/infrastructure/base/DatabaseNamingStrategy.js.map +0 -1
  285. package/infrastructure/commands/MigrateCommand.js.map +0 -1
  286. package/infrastructure/commands/dbml/dbml2code.js.map +0 -1
  287. package/infrastructure/commands/dbml/templates.js.map +0 -1
  288. package/infrastructure/commands/generate/CustomPostgresQueryRunner.js.map +0 -1
  289. package/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.js.map +0 -1
  290. package/infrastructure/commands/generate/index.js.map +0 -1
  291. package/infrastructure/decorators/ApiOkSearchResponse.js.map +0 -1
  292. package/infrastructure/decorators/Context.js.map +0 -1
  293. package/infrastructure/decorators/TableFromModel.js.map +0 -1
  294. package/infrastructure/decorators/fields/BaseField.js.map +0 -1
  295. package/infrastructure/decorators/fields/BooleanField.js.map +0 -1
  296. package/infrastructure/decorators/fields/ComputableField.d.ts +0 -15
  297. package/infrastructure/decorators/fields/ComputableField.js +0 -22
  298. package/infrastructure/decorators/fields/ComputableField.js.map +0 -1
  299. package/infrastructure/decorators/fields/CoordinateField.js.map +0 -1
  300. package/infrastructure/decorators/fields/CreateTimeField.js.map +0 -1
  301. package/infrastructure/decorators/fields/DateField.js.map +0 -1
  302. package/infrastructure/decorators/fields/DateTimeField.js.map +0 -1
  303. package/infrastructure/decorators/fields/DecimalField.js.map +0 -1
  304. package/infrastructure/decorators/fields/EmailField.js.map +0 -1
  305. package/infrastructure/decorators/fields/EnumField.js.map +0 -1
  306. package/infrastructure/decorators/fields/ExtendField.js.map +0 -1
  307. package/infrastructure/decorators/fields/FileField.js.map +0 -1
  308. package/infrastructure/decorators/fields/HtmlField.js.map +0 -1
  309. package/infrastructure/decorators/fields/IntegerField.js.map +0 -1
  310. package/infrastructure/decorators/fields/PasswordField.js.map +0 -1
  311. package/infrastructure/decorators/fields/PhoneField.js.map +0 -1
  312. package/infrastructure/decorators/fields/PrimaryKeyField.js.map +0 -1
  313. package/infrastructure/decorators/fields/RelationField.d.ts +0 -9
  314. package/infrastructure/decorators/fields/RelationField.js +0 -52
  315. package/infrastructure/decorators/fields/RelationField.js.map +0 -1
  316. package/infrastructure/decorators/fields/RelationIdField.d.ts +0 -5
  317. package/infrastructure/decorators/fields/RelationIdField.js +0 -16
  318. package/infrastructure/decorators/fields/RelationIdField.js.map +0 -1
  319. package/infrastructure/decorators/fields/StringField.js.map +0 -1
  320. package/infrastructure/decorators/fields/TextField.js.map +0 -1
  321. package/infrastructure/decorators/fields/TimeField.js.map +0 -1
  322. package/infrastructure/decorators/fields/UidField.js.map +0 -1
  323. package/infrastructure/decorators/fields/UpdateTimeField.js.map +0 -1
  324. package/infrastructure/decorators/fields/index.js.map +0 -1
  325. package/infrastructure/decorators/schema/SchemaSelect.js.map +0 -1
  326. package/infrastructure/filters/ValidationExceptionFilter.js.map +0 -1
  327. package/infrastructure/helpers/ModuleHelper.js.map +0 -1
  328. package/infrastructure/pipes/CreateDtoPipe.js.map +0 -1
  329. package/infrastructure/pipes/SchemaSerializer.js.map +0 -1
  330. package/infrastructure/repositories/CrudRepository.js.map +0 -1
  331. package/infrastructure/schemas/BaseSchema.d.ts +0 -6
  332. package/infrastructure/schemas/BaseSchema.js +0 -20
  333. package/infrastructure/schemas/BaseSchema.js.map +0 -1
  334. package/infrastructure/schemas/SearchSchema.js.map +0 -1
  335. package/usecases/base/SearchQuery.js.map +0 -1
  336. package/usecases/dtos/ContextDto.js.map +0 -1
  337. package/usecases/dtos/SearchInputDto.js.map +0 -1
  338. package/usecases/dtos/SearchResultDto.js.map +0 -1
  339. package/usecases/exceptions/BadRequestException.js.map +0 -1
  340. package/usecases/exceptions/DataMapperException.js.map +0 -1
  341. package/usecases/exceptions/ForbiddenException.js.map +0 -1
  342. package/usecases/exceptions/UnauthorizedException.js.map +0 -1
  343. package/usecases/exceptions/ValidationException.js.map +0 -1
  344. package/usecases/exceptions/index.js.map +0 -1
  345. package/usecases/helpers/ConditionHelper.js.map +0 -1
  346. package/usecases/helpers/DataMapperHelper.d.ts +0 -10
  347. package/usecases/helpers/DataMapperHelper.js +0 -210
  348. package/usecases/helpers/DataMapperHelper.js.map +0 -1
  349. package/usecases/helpers/SearchHelper.js.map +0 -1
  350. package/usecases/helpers/ValidationHelper.js.map +0 -1
  351. package/usecases/interfaces/ICrudRepository.js.map +0 -1
  352. package/usecases/interfaces/IFormError.js.map +0 -1
  353. package/usecases/interfaces/IManualSchema.js.map +0 -1
  354. package/usecases/services/CrudService.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ import type { Config } from '@jest/types';
2
+ declare const config: Config.InitialOptions;
3
+ export default config;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config = {
4
+ preset: 'ts-jest',
5
+ testEnvironment: 'node',
6
+ modulePathIgnorePatterns: [
7
+ 'dist',
8
+ 'usecases',
9
+ ]
10
+ };
11
+ exports.default = config;
12
+ //# sourceMappingURL=jest.e2e.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jest.e2e.config.js","sourceRoot":"","sources":["../jest.e2e.config.ts"],"names":[],"mappings":";;AAEA,MAAM,MAAM,GAA0B;IAClC,MAAM,EAAE,SAAS;IACjB,eAAe,EAAE,MAAM;IACvB,wBAAwB,EAAE;QACtB,MAAM;QAEN,UAAU;KACb;CACJ,CAAC;AACF,kBAAe,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@steroidsjs/nest",
3
- "version": "1.1.33",
3
+ "version": "1.2.2",
4
4
  "scripts": {
5
5
  "build": "tsc && copyfiles ./{package.json,LICENSE,README.md} dist/",
6
- "watch": "tsc -p tsconfig-debug.json"
6
+ "watch": "tsc -p tsconfig-debug.json",
7
+ "test": "jest --config jest.e2e.config.ts"
7
8
  },
8
9
  "description": "",
9
10
  "main": "index.js",
@@ -25,6 +26,7 @@
25
26
  "@nestjs/core": "^8.0.0",
26
27
  "@nestjs/swagger": "^5.1.5",
27
28
  "@nestjs/typeorm": "^8.0.3",
29
+ "@nestjs/platform-express": "^8.0.0",
28
30
  "@sqltools/formatter": "^1.2.3",
29
31
  "class-transformer": "^0.5.1",
30
32
  "class-validator": "^0.13.2",
@@ -35,12 +37,19 @@
35
37
  "typedi": "^0.10.0",
36
38
  "typeorm": "^0.2.44",
37
39
  "uuid": "^8.3.2",
38
- "date-fns": "^2.28.0"
40
+ "date-fns": "^2.28.0",
41
+ "rxjs": "^7.2.0"
39
42
  },
40
43
  "devDependencies": {
41
44
  "@types/node": "^16.11.7",
42
45
  "copyfiles": "^2.4.1",
43
46
  "tsconfig-paths": "^3.10.1",
44
- "typescript": "^4.3.5"
47
+ "typescript": "^4.3.5",
48
+ "ts-jest": "^27.1.3",
49
+ "ts-node": "^10.0.0",
50
+ "jest": "^27.4.7",
51
+ "@types/jest": "^27.4.0",
52
+ "@jest/globals": "^27.4.6",
53
+ "pg": "^8.7.1"
45
54
  }
46
55
  }
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseEnum.js","sourceRoot":"","sources":["../../../../src/domain/base/BaseEnum.ts"],"names":[],"mappings":";;AAAA,MAAqB,QAAQ;IAKzB,MAAM,CAAC,SAAS;QACZ,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,CAAC,OAAO;QACV,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,EAAE;QACd,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAClB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAC3B,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACjC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBACnB,OAAO,GAAG,CAAC;YACf,CAAC,EAAE,EAAE,CAAC,CACT,CAAC;SACL;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,OAAO;QACV,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACnB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAC5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnD,KAAK;gBACL,EAAE;aACL,CAAC,CAAC,CACN,CAAC;SACL;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;;AAvCL,2BAwCC;AAvCkB,mBAAU,GAAG,IAAI,CAAC;AAElB,oBAAW,GAAG,IAAI,CAAC"}
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseNamingStrategy.js","sourceRoot":"","sources":["../../../../src/infrastructure/base/DatabaseNamingStrategy.ts"],"names":[],"mappings":";;;AAAA,0DAAmD;AACnD,qCAA8C;AAE9C,MAAa,sBAAuB,SAAQ,+BAAqB;IAE7D,aAAa,CAAC,cAAsB,EACtB,eAAuB,EACvB,iBAAyB,EACzB,kBAA0B;QACpC,OAAO,IAAA,uBAAS,EAAC,cAAc,GAAG,GAAG,GAAG,eAAe,CAAC,CAAC;IAC7D,CAAC;CACJ;AARD,wDAQC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrateCommand.js","sourceRoot":"","sources":["../../../../src/infrastructure/commands/MigrateCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mDAAmD;AACnD,2CAA0C;AAC1C,qCAAmC;AACnC,gDAA2C;AAC3C,yCAAoC;AAWpC,IAAa,cAAc,GAA3B,MAAa,cAAc;IACvB,YACY,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAElC,CAAC;IAMD,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;YAChC,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;IAMD,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;YACpC,WAAW,EAAE,MAAM;SACtB,CAAC,CAAC;IACP,CAAC;IAMD,KAAK,CAAC,IAAI;QACN,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;IAC3C,CAAC;IAMD,KAAK,CAAC,SAAS,CAOP,IAAY;QAEhB,MAAM,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAMD,KAAK,CAAC,QAAQ;QACV,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;CAEJ,CAAA;AAhDG;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,gBAAgB;KAC7B,CAAC;;;;2CAKD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,gBAAgB;QACzB,QAAQ,EAAE,uBAAuB;KACpC,CAAC;;;;0CAKD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,cAAc;QACvB,QAAQ,EAAE,sBAAsB;KACnC,CAAC;;;;0CAGD;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,iCAAiC;KAC9C,CAAC;IAEG,WAAA,IAAA,2BAAU,EAAC;QACR,IAAI,EAAE,MAAM;QAEZ,QAAQ,EAAE,qBAAqB;QAC/B,IAAI,EAAE,QAAQ;KACjB,CAAC,CAAA;;;;+CAIL;AAMD;IAJC,IAAA,wBAAO,EAAC;QACL,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,0CAA0C;KACvD,CAAC;;;;8CAGD;AAxDQ,cAAc;IAD1B,IAAA,mBAAU,GAAE;qCAGe,oBAAU;GAFzB,cAAc,CA0D1B;AA1DY,wCAAc"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dbml2code.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/dbml/dbml2code.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ function templateModelRelation(fieldLabel, relationType, isOwningSide, modelRigh
28
28
  label: '${fieldLabel}',
29
29
  type: '${relationType}',
30
30
  isOwningSide: ${isOwningSide},
31
- modelClass: () => ${modelRightName},
31
+ relationClass: () => ${modelRightName},
32
32
  })
33
33
  ${fieldName}: ${modelRightName}${relationType.endsWith('Many') ? '[]' : ''};`;
34
34
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/dbml/templates.ts"],"names":[],"mappings":";;;AAAA,mCAEgB;AAEhB,SAAgB,aAAa,CACzB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,eAAe;IAEf,OAAO;EACT,IAAA,aAAK,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;EAE5D,cAAc;;KAEX,gBAAgB;;eAEN,SAAS;EACtB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;;CAE7B,CAAC;AACF,CAAC;AAlBD,sCAkBC;AAED,SAAgB,kBAAkB,CAC9B,aAAa,EACb,UAAU,EACV,SAAS,EACT,WAAW;IAEX,OAAO,QAAQ,aAAa;kBACd,UAAU;;MAEtB,SAAS,KAAK,WAAW,GAAG,CAAC;AACnC,CAAC;AAVD,gDAUC;AAED,SAAgB,qBAAqB,CACjC,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,SAAS;IAET,OAAO;kBACO,UAAU;iBACX,YAAY;wBACL,YAAY;+BACL,cAAc;;MAEvC,SAAS,KAAK,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;AAClF,CAAC;AAdD,sDAcC;AAED,SAAgB,aAAa,CACzB,SAAS,EACT,UAAU,EACV,SAAS;IAET,OAAO;;UAED,SAAS,+BAA+B,SAAS;;kBAEzC,SAAS,MAAM,UAAU;eAC5B,SAAS,2BAA2B,SAAS;CAC3D,CAAC;AACF,CAAC;AAZD,sCAYC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomPostgresQueryRunner.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomPostgresQueryRunner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomRdbmsSchemaBuilder.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/CustomRdbmsSchemaBuilder.ts"],"names":[],"mappings":";;;AAIA,kFAA6E;AAC7E,2EAAwF;AAExF,MAAa,wBAAyB,SAAQ,uCAAkB;IAE5D,KAAK,CAAC,GAAG;QAEL,MAAM,WAAW,GAAG,IAAI,qDAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAa,EAAE,QAAQ,CAAC,CAAC;QAC3F,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACvE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAE/B,IAAI;YAEA,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEpC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,wCAAwC,EAAE,CAAC;YAGtD,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB;gBAChC,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAEzE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAsB,CAAC;SAE9D;gBAAS;YAIN,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SACpC;IACL,CAAC;IAEO,kBAAkB,CAAC,MAAgE;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CACxC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAC9C,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CACrD,CAAC;IACN,CAAC;CAEJ;AA1CD,4DA0CC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/infrastructure/commands/generate/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiOkSearchResponse.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/ApiOkSearchResponse.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,6CAA6E;AAC7E,0DAAqD;AAMrD,SAAgB,mBAAmB,CAAC,OAAmC;IACnE,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9B,OAAO,IAAA,wBAAe,EAClB,IAAA,wBAAc,EAAC,2BAAY,EAAE,QAAQ,CAAC,EACtC,IAAA,uBAAa,EAAC;QACV,MAAM,EAAE;YACJ,KAAK,EAAE;gBACH,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,2BAAY,CAAC,EAAE;gBACrC;oBACI,UAAU,EAAE;wBACR,KAAK,EAAE;4BACH,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAE,IAAI,EAAE,IAAA,uBAAa,EAAC,QAAQ,CAAC,EAAE;yBAC3C;qBACJ;iBACJ;aACJ;SACJ;KACJ,CAAC,CACL,CAAC;AACN,CAAC;AApBD,kDAoBC"}
@@ -0,0 +1,3 @@
1
+ import { ITransformCallback } from './Transform';
2
+ export declare type IComputableCallback = ITransformCallback;
3
+ export declare const Computable: (callback: IComputableCallback, transformType?: string) => (object: any, propertyName: any) => void;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Computable = void 0;
4
+ const Transform_1 = require("./Transform");
5
+ const Computable = (callback, transformType = Transform_1.TRANSFORM_TYPE_COMPUTABLE) => (0, Transform_1.Transform)(callback, transformType);
6
+ exports.Computable = Computable;
7
+ //# sourceMappingURL=Computable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Computable.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/Computable.ts"],"names":[],"mappings":";;;AAAA,2CAAqF;AAI9E,MAAM,UAAU,GAAG,CACtB,QAA6B,EAC7B,aAAa,GAAG,qCAAyB,EAC3C,EAAE,CAAC,IAAA,qBAAS,EAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AAH3B,QAAA,UAAU,cAGiB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Context.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/Context.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AACxE,+DAA0D;AAE7C,QAAA,OAAO,GAAG,IAAA,6BAAoB,EACvC,CAAC,IAAa,EAAE,GAAqB,EAAE,EAAE;IACrC,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;IAEhD,MAAM,UAAU,GAAG,IAAI,uBAAU,EAAE,CAAC;IACpC,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/B,OAAO,UAAU,CAAC;AACtB,CAAC,CACJ,CAAC"}
@@ -3,4 +3,5 @@ export interface ITableOptions {
3
3
  label?: string;
4
4
  modelClass?: any;
5
5
  }
6
+ export declare const getTableFromModel: (ModelClass: any) => any;
6
7
  export declare function TableFromModel(ModelClass: any, tableName: any): <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -1,12 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TableFromModel = void 0;
3
+ exports.TableFromModel = exports.getTableFromModel = void 0;
4
4
  const typeorm_1 = require("typeorm");
5
5
  const ExtendField_1 = require("./fields/ExtendField");
6
6
  const common_1 = require("@nestjs/common");
7
7
  const BaseField_1 = require("./fields/BaseField");
8
+ const modelToTableMap = {};
9
+ const getTableFromModel = (ModelClass) => {
10
+ return modelToTableMap[ModelClass.name] || null;
11
+ };
12
+ exports.getTableFromModel = getTableFromModel;
8
13
  function TableFromModelInternal(ModelClass) {
9
14
  return (target) => {
15
+ modelToTableMap[ModelClass.name] = target;
10
16
  (0, BaseField_1.getMetaFields)(ModelClass).forEach(field => {
11
17
  (0, ExtendField_1.ExtendField)(ModelClass)(target.prototype, field);
12
18
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableFromModel.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/TableFromModel.ts"],"names":[],"mappings":";;;AAAA,qCAA+B;AAE/B,sDAAiD;AACjD,2CAA+C;AAC/C,kDAAiD;AAQjD,MAAM,eAAe,GAAG,EAAE,CAAC;AAEpB,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,EAAE;IAC5C,OAAO,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACpD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B;AAED,SAAS,sBAAsB,CAAC,UAAU;IACtC,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAE1C,IAAA,yBAAa,EAAC,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACtC,IAAA,yBAAW,EAAC,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,cAAc,CAAC,UAAU,EAAE,SAAS;IAChD,OAAO,IAAA,wBAAe,EAClB,IAAA,gBAAM,EAAC,SAAS,CAAC,EACjB,sBAAsB,CAAC,UAAU,CAAC,CACrC,CAAC;AACN,CAAC;AALD,wCAKC"}
@@ -0,0 +1,15 @@
1
+ import { IAllFieldOptions } from './fields';
2
+ export declare const STEROIDS_META_TRANSFORM_PREFIX = "steroids_meta_transform_";
3
+ export declare type ITransformCallback = (options: {
4
+ value: any;
5
+ item: any;
6
+ key: string;
7
+ options: IAllFieldOptions;
8
+ }) => any;
9
+ export declare type ITransformType = 'default' | 'computable' | 'from_db' | 'to_db' | string;
10
+ export declare const TRANSFORM_TYPE_DEFAULT = "default";
11
+ export declare const TRANSFORM_TYPE_COMPUTABLE = "computable";
12
+ export declare const TRANSFORM_TYPE_FROM_DB = "from_db";
13
+ export declare const TRANSFORM_TYPE_TO_DB = "to_db";
14
+ export declare const getTransformCallbacks: (object: any, propertyName: string, transformType: ITransformType) => ITransformCallback[];
15
+ export declare const Transform: (callback: ITransformCallback, transformType?: ITransformType) => (object: any, propertyName: any) => void;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Transform = exports.getTransformCallbacks = exports.TRANSFORM_TYPE_TO_DB = exports.TRANSFORM_TYPE_FROM_DB = exports.TRANSFORM_TYPE_COMPUTABLE = exports.TRANSFORM_TYPE_DEFAULT = exports.STEROIDS_META_TRANSFORM_PREFIX = void 0;
4
+ exports.STEROIDS_META_TRANSFORM_PREFIX = 'steroids_meta_transform_';
5
+ exports.TRANSFORM_TYPE_DEFAULT = 'default';
6
+ exports.TRANSFORM_TYPE_COMPUTABLE = 'computable';
7
+ exports.TRANSFORM_TYPE_FROM_DB = 'from_db';
8
+ exports.TRANSFORM_TYPE_TO_DB = 'to_db';
9
+ const getTransformCallbacks = (object, propertyName, transformType) => {
10
+ return Reflect.getMetadata(exports.STEROIDS_META_TRANSFORM_PREFIX + transformType, object, propertyName) || [];
11
+ };
12
+ exports.getTransformCallbacks = getTransformCallbacks;
13
+ const Transform = (callback, transformType = exports.TRANSFORM_TYPE_DEFAULT) => (object, propertyName) => {
14
+ const callbacks = (0, exports.getTransformCallbacks)(object, propertyName, transformType) || [];
15
+ callbacks.push(callback);
16
+ Reflect.defineMetadata(exports.STEROIDS_META_TRANSFORM_PREFIX + transformType, callbacks, object, propertyName);
17
+ };
18
+ exports.Transform = Transform;
19
+ //# sourceMappingURL=Transform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Transform.js","sourceRoot":"","sources":["../../../../src/infrastructure/decorators/Transform.ts"],"names":[],"mappings":";;;AAEa,QAAA,8BAA8B,GAAG,0BAA0B,CAAC;AAK5D,QAAA,sBAAsB,GAAG,SAAS,CAAC;AACnC,QAAA,yBAAyB,GAAG,YAAY,CAAC;AACzC,QAAA,sBAAsB,GAAG,SAAS,CAAC;AACnC,QAAA,oBAAoB,GAAG,OAAO,CAAC;AAErC,MAAM,qBAAqB,GAAG,CACjC,MAAW,EACX,YAAoB,EACpB,aAA6B,EACT,EAAE;IACtB,OAAO,OAAO,CAAC,WAAW,CAAC,sCAA8B,GAAG,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,IAAI,EAAE,CAAA;AAC1G,CAAC,CAAA;AANY,QAAA,qBAAqB,yBAMjC;AAEM,MAAM,SAAS,GAAG,CACrB,QAA4B,EAC5B,gBAAgC,8BAAsB,EACxD,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;IAC1B,MAAM,SAAS,GAAG,IAAA,6BAAqB,EAAC,MAAM,EAAE,YAAY,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;IACnF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzB,OAAO,CAAC,cAAc,CAAC,sCAA8B,GAAG,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAC5G,CAAC,CAAC;AAPW,QAAA,SAAS,aAOpB"}
@@ -1,5 +1,6 @@
1
1
  import { ColumnType } from 'typeorm/driver/types/ColumnTypes';
2
2
  import { IAllFieldOptions } from './index';
3
+ import { ITransformCallback } from '../Transform';
3
4
  export declare const STEROIDS_META_FIELD = "steroids_meta_field";
4
5
  export declare const STEROIDS_META_FIELD_DECORATOR = "steroids_meta_field_decorator";
5
6
  export declare const STEROIDS_META_KEYS = "steroids_meta_keys";
@@ -20,6 +21,7 @@ export interface IBaseFieldOptions {
20
21
  max?: number;
21
22
  items?: string;
22
23
  plainName?: string;
24
+ transform?: ITransformCallback;
23
25
  }
24
26
  export interface IInternalFieldOptions {
25
27
  appType?: AppColumnType;
@@ -27,6 +29,7 @@ export interface IInternalFieldOptions {
27
29
  decoratorName?: string;
28
30
  isArray?: boolean;
29
31
  }
32
+ export declare const getMetaPrimaryKey: (targetClass: any) => string;
30
33
  export declare const getFieldOptions: (targetClass: any, fieldName: string) => IAllFieldOptions;
31
34
  export declare const isMetaClass: (MetaClass: any) => boolean;
32
35
  export declare const getMetaFields: (MetaClass: any) => string[];
@@ -1,12 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseField = exports.getFieldDecorator = exports.getMetaRelations = exports.getMetaFields = exports.isMetaClass = exports.getFieldOptions = exports.STEROIDS_META_KEYS = exports.STEROIDS_META_FIELD_DECORATOR = exports.STEROIDS_META_FIELD = void 0;
3
+ exports.BaseField = exports.getFieldDecorator = exports.getMetaRelations = exports.getMetaFields = exports.isMetaClass = exports.getFieldOptions = exports.getMetaPrimaryKey = exports.STEROIDS_META_KEYS = exports.STEROIDS_META_FIELD_DECORATOR = exports.STEROIDS_META_FIELD = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
5
  const swagger_1 = require("@nestjs/swagger");
6
6
  const class_validator_1 = require("class-validator");
7
7
  exports.STEROIDS_META_FIELD = 'steroids_meta_field';
8
8
  exports.STEROIDS_META_FIELD_DECORATOR = 'steroids_meta_field_decorator';
9
9
  exports.STEROIDS_META_KEYS = 'steroids_meta_keys';
10
+ const getMetaPrimaryKey = (targetClass) => {
11
+ return (0, exports.getMetaFields)(targetClass)
12
+ .find(key => (0, exports.getFieldOptions)(targetClass, key).appType === 'primaryKey') || null;
13
+ };
14
+ exports.getMetaPrimaryKey = getMetaPrimaryKey;
10
15
  const getFieldOptions = (targetClass, fieldName) => {
11
16
  return targetClass && Reflect.getMetadata(exports.STEROIDS_META_FIELD, targetClass.prototype, fieldName);
12
17
  };
@@ -45,7 +50,7 @@ const ColumnMetaDecorator = (options, internalOptions) => (object, propertyName)
45
50
  };
46
51
  function BaseField(options = null, internalOptions = {}) {
47
52
  return (0, common_1.applyDecorators)(...[
48
- ColumnMetaDecorator(Object.assign(Object.assign({ label: null, hint: null, items: null }, options), { isArray: internalOptions.isArray || null, appType: internalOptions.appType || null }), internalOptions),
53
+ ColumnMetaDecorator(Object.assign(Object.assign({ label: null, hint: null }, options), { isArray: internalOptions.isArray || null, appType: internalOptions.appType || null }), internalOptions),
49
54
  (0, swagger_1.ApiProperty)({
50
55
  type: options.jsType,
51
56
  description: options.label || undefined,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/BaseField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,6CAA4C;AAE5C,qDAA2C;AAI9B,QAAA,mBAAmB,GAAG,qBAAqB,CAAC;AAC5C,QAAA,6BAA6B,GAAG,+BAA+B,CAAC;AAChE,QAAA,kBAAkB,GAAG,oBAAoB,CAAC;AAiChD,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAU,EAAE;IACrD,OAAO,IAAA,qBAAa,EAAC,WAAW,CAAC;SAC5B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,uBAAe,EAAC,WAAW,EAAE,GAAG,CAAC,CAAC,OAAO,KAAK,YAAY,CAAC,IAAI,IAAI,CAAC;AACzF,CAAC,CAAC;AAHW,QAAA,iBAAiB,qBAG5B;AAEK,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE,SAAiB,EAAoB,EAAE;IAChF,OAAO,WAAW,IAAI,OAAO,CAAC,WAAW,CAAC,2BAAmB,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACrG,CAAC,CAAC;AAFW,QAAA,eAAe,mBAE1B;AAEK,MAAM,WAAW,GAAG,CAAC,SAAS,EAAW,EAAE;IAC9C,OAAO,OAAO,CAAC,WAAW,CAAC,0BAAkB,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;AACxE,CAAC,CAAA;AAFY,QAAA,WAAW,eAEvB;AAEM,MAAM,aAAa,GAAG,CAAC,SAAS,EAAY,EAAE;IACjD,OAAO,OAAO,CAAC,WAAW,CAAC,0BAAkB,EAAE,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AAC9E,CAAC,CAAA;AAFY,QAAA,aAAa,iBAEzB;AAEM,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAY,EAAE;IACpD,OAAO,IAAA,qBAAa,EAAC,SAAS,CAAC;SAC1B,MAAM,CAAC,SAAS,CAAC,EAAE;QAChB,MAAM,OAAO,GAAG,IAAA,uBAAe,EAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACtD,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACX,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B;AAEM,MAAM,iBAAiB,GAAG,CAAC,WAAW,EAAE,SAAiB,EAAuC,EAAE;IACrG,MAAM,aAAa,GAAW,OAAO,CAAC,WAAW,CAAC,qCAA6B,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACnH,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,aAAa,eAAe,SAAS,EAAE,CAAC,CAAC;KACzF;IAED,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AARW,QAAA,iBAAiB,qBAQ5B;AAEF,MAAM,mBAAmB,GAAG,CAAC,OAA0B,EAAE,eAAsC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;IACzH,OAAO,CAAC,cAAc,CAAC,2BAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC3E,OAAO,CAAC,cAAc,CAAC,qCAA6B,EAAE,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAG3G,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,0BAAkB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;IACzE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,OAAO,CAAC,cAAc,CAAC,0BAAkB,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,SAAgB,SAAS,CAAC,UAA6B,IAAI,EAAE,kBAAyC,EAAE;IACpG,OAAO,IAAA,wBAAe,EAClB,GAAG;QACC,mBAAmB,+BACf,KAAK,EAAE,IAAI,EACX,IAAI,EAAE,IAAI,IACP,OAAO,KACV,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,IAAI,EACxC,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,IAAI,KACzC,eAAe,CAAC;QACnB,IAAA,qBAAW,EAAC;YACR,IAAI,EAAE,OAAO,CAAC,MAAM;YACpB,WAAW,EAAE,OAAO,CAAC,KAAK,IAAI,SAAS;YACvC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,SAAS;YACrC,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,KAAK;YACpC,OAAO,EAAE,OAAO,CAAC,OAAO;SAC3B,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC;YAC3B,OAAO,EAAE,4BAA4B;SACxC,CAAC;KACL,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;AACN,CAAC;AAtBD,8BAsBC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BooleanField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/BooleanField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,qCAA+B;AAC/B,qDAAsD;AACtD,2CAAyD;AAEzD,SAAgB,YAAY,CAAC,UAA6B,EAAE;IACxD,OAAO,IAAA,wBAAe,EAClB,IAAA,qBAAS,EAAC,OAAO,EAAE;QACf,aAAa,EAAE,cAAc;QAC7B,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;KACpB,CAAC,EACF,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,OAAO,CAAC,MAAM,IAAI,SAAS;QACjC,OAAO,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK;QACrE,QAAQ,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;KACjE,CAAC,EACF,IAAA,2BAAS,EAAC;QACN,OAAO,EAAE,qBAAqB;KACjC,CAAC,EACF,IAAA,4BAAU,GAAE,CACf,CAAC;AACN,CAAC;AAjBD,oCAiBC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoordinateField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/CoordinateField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qCAA+B;AAC/B,qDAAqD;AACrD,2CAAyD;AAOzD,SAAgB,eAAe,CAAC,UAAmC,EAAE;IACjE,OAAO,IAAA,wBAAe,EAAC,GAAG;QACtB,IAAA,qBAAS,EAAC,OAAO,EAAE;YACf,aAAa,EAAE,iBAAiB;YAChC,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;SACnB,CAAC;QACF,IAAA,gBAAM,EAAC;YACH,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO,CAAC,YAAY;YAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,EAAE;YAClC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;SAC5B,CAAC;QACF,OAAO,CAAC,QAAQ,IAAI,IAAA,4BAAU,EAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;QACjE,IAAA,0BAAQ,GAAE;KACT,CAAC,MAAM,CAAC,OAAO,CAAC,CACpB,CAAC;AACN,CAAC;AAlBD,0CAkBC"}
@@ -5,13 +5,13 @@ const common_1 = require("@nestjs/common");
5
5
  const lodash_1 = require("lodash");
6
6
  const typeorm_1 = require("typeorm");
7
7
  const EventListenerTypes_1 = require("typeorm/metadata/types/EventListenerTypes");
8
- const class_transformer_1 = require("class-transformer");
9
8
  const BaseField_1 = require("./BaseField");
9
+ const DateTimeField_1 = require("./DateTimeField");
10
10
  const CreateTimeBehaviour = (object, propertyName) => {
11
11
  const methodName = propertyName + '__createTimeBehaviour';
12
12
  if (!object[methodName]) {
13
13
  object[methodName] = function () {
14
- this[propertyName] = new Date();
14
+ this[propertyName] = (0, DateTimeField_1.normalizeDateTime)(new Date());
15
15
  };
16
16
  }
17
17
  (0, typeorm_1.getMetadataArgsStorage)().entityListeners.push({
@@ -28,12 +28,16 @@ function CreateTimeField(options = {}) {
28
28
  decoratorName: 'CreateTimeField',
29
29
  appType: 'createTime',
30
30
  jsType: 'string',
31
- }), (0, typeorm_1.CreateDateColumn)({
31
+ }), (0, typeorm_1.Column)({
32
32
  type: 'timestamp',
33
33
  precision: (0, lodash_1.has)(options, 'precision') ? options.precision : 0,
34
34
  default: (0, lodash_1.has)(options, 'defaultValue') ? options.defaultValue : undefined,
35
35
  nullable: (0, lodash_1.has)(options, 'nullable') ? options.nullable : false,
36
- }), CreateTimeBehaviour, (0, class_transformer_1.Type)(() => Date));
36
+ transformer: {
37
+ from: DateTimeField_1.normalizeDateTime,
38
+ to: DateTimeField_1.normalizeDateTime,
39
+ },
40
+ }), CreateTimeBehaviour);
37
41
  }
38
42
  exports.CreateTimeField = CreateTimeField;
39
43
  //# sourceMappingURL=CreateTimeField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreateTimeField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/CreateTimeField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,mCAAmC;AACnC,qCAAuD;AACvD,kFAA6E;AAC7E,2CAAyD;AACzD,mDAAkD;AAMlD,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE;IACjD,MAAM,UAAU,GAAG,YAAY,GAAG,uBAAuB,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;QAErB,MAAM,CAAC,UAAU,CAAC,GAAG;YACjB,IAAI,CAAC,YAAY,CAAC,GAAG,IAAA,iCAAiB,EAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;KACL;IAED,IAAA,gCAAsB,GAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QAC1C,MAAM,EAAE,MAAM,CAAC,WAAW;QAC1B,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,uCAAkB,CAAC,aAAa;KACzC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,SAAgB,eAAe,CAAC,UAAmC,EAAE;IACjE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAChB,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;KAC5B;IAED,OAAO,IAAA,wBAAe,EAClB,IAAA,qBAAS,EAAC,OAAO,EAAE;QACf,aAAa,EAAE,iBAAiB;QAChC,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,QAAQ;KACnB,CAAC,EACF,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7D,OAAO,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACzE,QAAQ,EAAE,IAAA,YAAI,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK;QAC9D,WAAW,EAAE;YACT,IAAI,EAAE,iCAAiB;YACvB,EAAE,EAAE,iCAAiB;SACxB;KACJ,CAAC,EACF,mBAAmB,CACtB,CAAC;AACN,CAAC;AAvBD,0CAuBC"}
@@ -1,2 +1,3 @@
1
1
  import { IBaseFieldOptions } from './BaseField';
2
+ export declare const normalizeDate: (value: any) => string;
2
3
  export declare function DateField(options?: IBaseFieldOptions): <TFunction extends Function, Y>(target: object | TFunction, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
@@ -1,11 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DateField = void 0;
3
+ exports.DateField = exports.normalizeDate = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
5
  const typeorm_1 = require("typeorm");
6
6
  const class_validator_1 = require("class-validator");
7
- const class_transformer_1 = require("class-transformer");
7
+ const date_fns_1 = require("date-fns");
8
8
  const BaseField_1 = require("./BaseField");
9
+ const normalizeDate = value => {
10
+ if (!value) {
11
+ return null;
12
+ }
13
+ if (typeof value === 'string') {
14
+ value = (0, date_fns_1.parseISO)(value);
15
+ }
16
+ return (0, date_fns_1.formatISO9075)(value, { representation: 'date' });
17
+ };
18
+ exports.normalizeDate = normalizeDate;
9
19
  function DateField(options = {}) {
10
20
  return (0, common_1.applyDecorators)((0, BaseField_1.BaseField)(options, {
11
21
  decoratorName: 'DateField',
@@ -15,9 +25,13 @@ function DateField(options = {}) {
15
25
  type: 'date',
16
26
  default: options.defaultValue,
17
27
  nullable: options.nullable,
18
- }), (0, class_validator_1.IsDate)({
28
+ transformer: {
29
+ from: exports.normalizeDate,
30
+ to: exports.normalizeDate,
31
+ },
32
+ }), (0, class_validator_1.IsISO8601)({
19
33
  message: 'Некорректный формат даты',
20
- }), (0, class_transformer_1.Type)(() => Date));
34
+ }));
21
35
  }
22
36
  exports.DateField = DateField;
23
37
  //# sourceMappingURL=DateField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DateField.js","sourceRoot":"","sources":["../../../../../src/infrastructure/decorators/fields/DateField.ts"],"names":[],"mappings":";;;AAAA,2CAA+C;AAC/C,qCAA+B;AAC/B,qDAA0C;AAC1C,uCAAiD;AACjD,2CAAyD;AAElD,MAAM,aAAa,GAAG,KAAK,CAAC,EAAE;IACjC,IAAI,CAAC,KAAK,EAAE;QACR,OAAO,IAAI,CAAC;KACf;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC3B,KAAK,GAAG,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC;KAC3B;IAED,OAAO,IAAA,wBAAa,EAAC,KAAK,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC;AATW,QAAA,aAAa,iBASxB;AAEF,SAAgB,SAAS,CAAC,UAA6B,EAAE;IACrD,OAAO,IAAA,wBAAe,EAClB,IAAA,qBAAS,EAAC,OAAO,EAAE;QACf,aAAa,EAAE,WAAW;QAC1B,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,QAAQ;KACnB,CAAC,EACF,IAAA,gBAAM,EAAC;QACH,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE;YACT,IAAI,EAAE,qBAAa;YACnB,EAAE,EAAE,qBAAa;SACpB;KACJ,CAAC,EACF,IAAA,2BAAS,EAAC;QACN,OAAO,EAAE,0BAA0B;KACtC,CAAC,CAEL,CAAC;AACN,CAAC;AArBD,8BAqBC"}
@@ -1,4 +1,5 @@
1
1
  import { IBaseFieldOptions } from './BaseField';
2
+ export declare const normalizeDateTime: (value: any) => string;
2
3
  export interface IDateTimeFieldColumnOptions extends IBaseFieldOptions {
3
4
  precision?: number;
4
5
  }