typescript-express-starter 9.1.2 → 10.0.0

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 (401) hide show
  1. package/.vscode/configurationCache.log +1 -0
  2. package/.vscode/dryrun.log +6 -0
  3. package/.vscode/settings.json +3 -0
  4. package/.vscode/targets.log +239 -0
  5. package/CONTRIBUTORS.md +61 -0
  6. package/README.kr.md +122 -161
  7. package/README.md +118 -157
  8. package/bin/cli.js +1 -1
  9. package/lib/default/.swcrc +0 -3
  10. package/lib/default/Dockerfile.dev +18 -0
  11. package/lib/default/Dockerfile.prod +18 -0
  12. package/lib/default/Makefile +29 -16
  13. package/lib/default/docker-compose.yml +8 -8
  14. package/lib/default/jest.config.js +1 -1
  15. package/lib/default/package.json +42 -40
  16. package/lib/default/src/app.ts +4 -5
  17. package/lib/default/src/controllers/auth.controller.ts +9 -11
  18. package/lib/default/src/controllers/users.controller.ts +11 -13
  19. package/lib/default/src/dtos/users.dto.ts +12 -1
  20. package/lib/default/src/interfaces/users.interface.ts +2 -2
  21. package/lib/default/src/middlewares/auth.middleware.ts +16 -10
  22. package/lib/default/src/middlewares/error.middleware.ts +2 -4
  23. package/lib/default/src/middlewares/validation.middleware.ts +22 -20
  24. package/lib/default/src/models/users.model.ts +6 -8
  25. package/lib/default/src/routes/auth.route.ts +8 -11
  26. package/lib/default/src/routes/users.route.ts +10 -12
  27. package/lib/default/src/server.ts +6 -7
  28. package/lib/default/src/services/auth.service.ts +25 -36
  29. package/lib/default/src/services/users.service.ts +20 -29
  30. package/lib/{graphql/src/tests → default/src/test}/auth.test.ts +21 -21
  31. package/lib/default/src/test/users.test.ts +62 -0
  32. package/lib/default/src/utils/validateEnv.ts +1 -3
  33. package/lib/default/tsconfig.json +1 -1
  34. package/lib/graphql/.env.development.local +6 -6
  35. package/lib/graphql/.env.production.local +6 -6
  36. package/lib/graphql/.env.test.local +6 -6
  37. package/lib/graphql/.swcrc +1 -1
  38. package/lib/graphql/Dockerfile.dev +19 -0
  39. package/lib/graphql/Dockerfile.prod +19 -0
  40. package/lib/graphql/Makefile +32 -15
  41. package/lib/graphql/docker-compose.yml +23 -15
  42. package/lib/graphql/jest.config.js +1 -1
  43. package/lib/graphql/package.json +42 -41
  44. package/lib/graphql/src/app.ts +14 -13
  45. package/lib/graphql/src/config/index.ts +2 -2
  46. package/lib/{typeorm/src/databases → graphql/src/database}/index.ts +6 -6
  47. package/lib/graphql/src/dtos/users.dto.ts +14 -1
  48. package/lib/graphql/src/interfaces/users.interface.ts +2 -2
  49. package/lib/graphql/src/middlewares/auth.middleware.ts +16 -6
  50. package/lib/graphql/src/middlewares/error.middleware.ts +2 -4
  51. package/lib/graphql/src/repositories/auth.repository.ts +19 -27
  52. package/lib/graphql/src/repositories/users.repository.ts +9 -18
  53. package/lib/graphql/src/resolvers/auth.resolver.ts +2 -2
  54. package/lib/graphql/src/resolvers/users.resolver.ts +4 -4
  55. package/lib/graphql/src/server.ts +6 -7
  56. package/lib/graphql/src/test/auth.test.ts +10 -0
  57. package/lib/graphql/src/test/users.test.ts +11 -0
  58. package/lib/graphql/src/typedefs/users.type.ts +2 -2
  59. package/lib/graphql/src/utils/logger.ts +2 -0
  60. package/lib/graphql/src/utils/validateEnv.ts +1 -3
  61. package/lib/graphql/tsconfig.json +2 -2
  62. package/lib/knex/.env.development.local +2 -2
  63. package/lib/knex/.env.production.local +3 -3
  64. package/lib/knex/.env.test.local +3 -3
  65. package/lib/knex/.swcrc +1 -1
  66. package/lib/knex/Dockerfile.dev +19 -0
  67. package/lib/knex/Dockerfile.prod +19 -0
  68. package/lib/knex/Makefile +32 -15
  69. package/lib/knex/docker-compose.yml +19 -14
  70. package/lib/knex/jest.config.js +1 -1
  71. package/lib/knex/knexfile.ts +8 -8
  72. package/lib/knex/package.json +44 -42
  73. package/lib/knex/src/app.ts +6 -7
  74. package/lib/knex/src/config/index.ts +2 -1
  75. package/lib/knex/src/controllers/auth.controller.ts +9 -11
  76. package/lib/knex/src/controllers/users.controller.ts +10 -12
  77. package/lib/knex/src/{databases → database}/index.ts +4 -4
  78. package/lib/knex/src/database/migrations/20210713110926_initial.ts +17 -0
  79. package/lib/knex/src/dtos/users.dto.ts +12 -1
  80. package/lib/knex/src/interfaces/users.interface.ts +2 -2
  81. package/lib/knex/src/middlewares/auth.middleware.ts +17 -10
  82. package/lib/knex/src/middlewares/error.middleware.ts +2 -4
  83. package/lib/knex/src/middlewares/validation.middleware.ts +22 -20
  84. package/lib/knex/src/models/users.model.ts +2 -2
  85. package/lib/knex/src/routes/auth.route.ts +8 -10
  86. package/lib/knex/src/routes/users.route.ts +10 -12
  87. package/lib/knex/src/server.ts +6 -7
  88. package/lib/knex/src/services/auth.service.ts +27 -36
  89. package/lib/knex/src/services/users.service.ts +18 -23
  90. package/lib/knex/src/{tests → test}/auth.test.ts +2 -2
  91. package/lib/knex/src/{tests → test}/users.test.ts +2 -2
  92. package/lib/knex/src/utils/validateEnv.ts +1 -3
  93. package/lib/knex/tsconfig.json +2 -2
  94. package/lib/mikro-orm/.env.production.local +1 -1
  95. package/lib/mikro-orm/.env.test.local +1 -1
  96. package/lib/mikro-orm/.swcrc +1 -1
  97. package/lib/mikro-orm/Dockerfile.dev +19 -0
  98. package/lib/mikro-orm/Dockerfile.prod +19 -0
  99. package/lib/mikro-orm/Makefile +32 -15
  100. package/lib/mikro-orm/docker-compose.yml +20 -11
  101. package/lib/mikro-orm/package.json +42 -40
  102. package/lib/mikro-orm/src/app.ts +10 -12
  103. package/lib/mikro-orm/src/config/index.ts +2 -1
  104. package/lib/mikro-orm/src/controllers/auth.controller.ts +9 -11
  105. package/lib/mikro-orm/src/controllers/users.controller.ts +11 -13
  106. package/lib/mikro-orm/src/dtos/users.dto.ts +12 -1
  107. package/lib/mikro-orm/src/interfaces/users.interface.ts +1 -1
  108. package/lib/mikro-orm/src/middlewares/auth.middleware.ts +17 -10
  109. package/lib/mikro-orm/src/middlewares/error.middleware.ts +2 -4
  110. package/lib/mikro-orm/src/middlewares/validation.middleware.ts +22 -20
  111. package/lib/mikro-orm/src/routes/auth.route.ts +8 -10
  112. package/lib/mikro-orm/src/routes/users.route.ts +9 -11
  113. package/lib/mikro-orm/src/server.ts +6 -7
  114. package/lib/mikro-orm/src/services/auth.service.ts +23 -33
  115. package/lib/mikro-orm/src/services/users.service.ts +13 -21
  116. package/lib/mikro-orm/src/{tests → test}/auth.test.ts +3 -4
  117. package/lib/mikro-orm/src/{tests → test}/users.test.ts +4 -5
  118. package/lib/mikro-orm/src/utils/validateEnv.ts +1 -3
  119. package/lib/mikro-orm/tsconfig.json +2 -2
  120. package/lib/mongoose/.env.production.local +1 -1
  121. package/lib/mongoose/.env.test.local +1 -1
  122. package/lib/mongoose/.swcrc +1 -1
  123. package/lib/mongoose/Dockerfile.dev +19 -0
  124. package/lib/mongoose/Dockerfile.prod +19 -0
  125. package/lib/mongoose/Makefile +32 -15
  126. package/lib/mongoose/docker-compose.yml +20 -11
  127. package/lib/mongoose/jest.config.js +1 -1
  128. package/lib/mongoose/package.json +43 -41
  129. package/lib/mongoose/src/app.ts +6 -7
  130. package/lib/mongoose/src/config/index.ts +2 -1
  131. package/lib/mongoose/src/controllers/auth.controller.ts +9 -11
  132. package/lib/mongoose/src/controllers/users.controller.ts +11 -13
  133. package/lib/mongoose/src/{databases → database}/index.ts +1 -2
  134. package/lib/mongoose/src/dtos/users.dto.ts +12 -1
  135. package/lib/mongoose/src/interfaces/users.interface.ts +1 -1
  136. package/lib/mongoose/src/middlewares/auth.middleware.ts +16 -9
  137. package/lib/mongoose/src/middlewares/error.middleware.ts +2 -4
  138. package/lib/mongoose/src/middlewares/validation.middleware.ts +22 -20
  139. package/lib/mongoose/src/models/users.model.ts +2 -4
  140. package/lib/mongoose/src/routes/auth.route.ts +8 -10
  141. package/lib/mongoose/src/routes/users.route.ts +9 -11
  142. package/lib/mongoose/src/server.ts +6 -7
  143. package/lib/mongoose/src/services/auth.service.ts +26 -37
  144. package/lib/mongoose/src/services/users.service.ts +19 -29
  145. package/lib/{typegoose/src/tests → mongoose/src/test}/users.test.ts +7 -7
  146. package/lib/mongoose/src/utils/validateEnv.ts +1 -3
  147. package/lib/mongoose/tsconfig.json +2 -2
  148. package/lib/node-postgres/.dockerignore +18 -0
  149. package/lib/node-postgres/.editorconfig +9 -0
  150. package/lib/node-postgres/.env.development.local +13 -0
  151. package/lib/node-postgres/.env.production.local +13 -0
  152. package/lib/node-postgres/.env.test.local +13 -0
  153. package/lib/node-postgres/.eslintignore +1 -0
  154. package/lib/node-postgres/.eslintrc +18 -0
  155. package/lib/node-postgres/.huskyrc +5 -0
  156. package/lib/node-postgres/.lintstagedrc.json +5 -0
  157. package/lib/node-postgres/.prettierrc +8 -0
  158. package/lib/node-postgres/.swcrc +39 -0
  159. package/lib/node-postgres/.vscode/launch.json +35 -0
  160. package/lib/node-postgres/.vscode/settings.json +6 -0
  161. package/lib/node-postgres/Dockerfile.dev +17 -0
  162. package/lib/node-postgres/Dockerfile.prod +17 -0
  163. package/lib/node-postgres/Makefile +46 -0
  164. package/lib/node-postgres/docker-compose.yml +61 -0
  165. package/lib/node-postgres/ecosystem.config.js +57 -0
  166. package/lib/node-postgres/jest.config.js +12 -0
  167. package/lib/node-postgres/nginx.conf +40 -0
  168. package/lib/node-postgres/nodemon.json +12 -0
  169. package/lib/node-postgres/package.json +78 -0
  170. package/lib/node-postgres/src/app.ts +87 -0
  171. package/lib/node-postgres/src/config/index.ts +6 -0
  172. package/lib/node-postgres/src/controllers/auth.controller.ts +44 -0
  173. package/lib/node-postgres/src/controllers/users.controller.ts +63 -0
  174. package/lib/node-postgres/src/database/index.ts +6 -0
  175. package/lib/node-postgres/src/database/init.sql +110 -0
  176. package/lib/node-postgres/src/dtos/users.dto.ts +20 -0
  177. package/lib/node-postgres/src/http/auth.http +27 -0
  178. package/lib/node-postgres/src/http/users.http +34 -0
  179. package/lib/node-postgres/src/interfaces/auth.interface.ts +15 -0
  180. package/lib/node-postgres/src/interfaces/routes.interface.ts +6 -0
  181. package/lib/node-postgres/src/interfaces/users.interface.ts +5 -0
  182. package/lib/node-postgres/src/middlewares/auth.middleware.ts +38 -0
  183. package/lib/node-postgres/src/middlewares/error.middleware.ts +15 -0
  184. package/lib/node-postgres/src/middlewares/validation.middleware.ts +27 -0
  185. package/lib/node-postgres/src/models/users.model.ts +9 -0
  186. package/lib/node-postgres/src/routes/auth.route.ts +21 -0
  187. package/lib/node-postgres/src/routes/users.route.ts +23 -0
  188. package/lib/node-postgres/src/server.ts +10 -0
  189. package/lib/node-postgres/src/services/auth.service.ts +52 -0
  190. package/lib/node-postgres/src/services/users.service.ts +51 -0
  191. package/lib/{default/src/tests → node-postgres/src/test}/auth.test.ts +2 -2
  192. package/lib/{default/src/tests → node-postgres/src/test}/users.test.ts +5 -5
  193. package/lib/node-postgres/src/utils/logger.ts +65 -0
  194. package/lib/node-postgres/src/utils/validateEnv.ts +8 -0
  195. package/lib/node-postgres/swagger.yaml +123 -0
  196. package/lib/node-postgres/tsconfig.json +40 -0
  197. package/lib/prisma/.env.production.local +1 -1
  198. package/lib/prisma/.env.test.local +1 -1
  199. package/lib/prisma/Dockerfile.dev +19 -0
  200. package/lib/prisma/Dockerfile.prod +19 -0
  201. package/lib/prisma/Makefile +32 -15
  202. package/lib/prisma/docker-compose.yml +15 -14
  203. package/lib/prisma/jest.config.js +1 -1
  204. package/lib/prisma/package.json +43 -41
  205. package/lib/prisma/src/app.ts +4 -5
  206. package/lib/prisma/src/controllers/auth.controller.ts +10 -12
  207. package/lib/prisma/src/controllers/users.controller.ts +12 -14
  208. package/lib/prisma/src/dtos/users.dto.ts +12 -1
  209. package/lib/prisma/src/interfaces/auth.interface.ts +1 -1
  210. package/lib/prisma/src/interfaces/users.interface.ts +5 -0
  211. package/lib/prisma/src/middlewares/auth.middleware.ts +16 -11
  212. package/lib/prisma/src/middlewares/error.middleware.ts +2 -4
  213. package/lib/prisma/src/middlewares/validation.middleware.ts +22 -20
  214. package/lib/prisma/src/routes/auth.route.ts +8 -10
  215. package/lib/prisma/src/routes/users.route.ts +9 -11
  216. package/lib/prisma/src/server.ts +6 -7
  217. package/lib/prisma/src/services/auth.service.ts +10 -16
  218. package/lib/prisma/src/services/users.service.ts +19 -27
  219. package/lib/prisma/src/utils/validateEnv.ts +1 -3
  220. package/lib/prisma/tsconfig.json +1 -1
  221. package/lib/routing-controllers/Dockerfile.dev +19 -0
  222. package/lib/routing-controllers/Dockerfile.prod +19 -0
  223. package/lib/routing-controllers/Makefile +29 -16
  224. package/lib/routing-controllers/docker-compose.yml +9 -9
  225. package/lib/routing-controllers/jest.config.js +1 -1
  226. package/lib/routing-controllers/package.json +41 -40
  227. package/lib/routing-controllers/src/app.ts +4 -6
  228. package/lib/routing-controllers/src/controllers/auth.controller.ts +13 -12
  229. package/lib/routing-controllers/src/controllers/users.controller.ts +15 -13
  230. package/lib/routing-controllers/src/dtos/users.dto.ts +12 -1
  231. package/lib/routing-controllers/src/interfaces/users.interface.ts +1 -1
  232. package/lib/routing-controllers/src/middlewares/auth.middleware.ts +16 -10
  233. package/lib/routing-controllers/src/middlewares/error.middleware.ts +2 -5
  234. package/lib/routing-controllers/src/middlewares/validation.middleware.ts +23 -27
  235. package/lib/routing-controllers/src/models/users.model.ts +1 -3
  236. package/lib/routing-controllers/src/server.ts +5 -6
  237. package/lib/routing-controllers/src/services/auth.service.ts +25 -35
  238. package/lib/routing-controllers/src/services/users.service.ts +17 -25
  239. package/lib/routing-controllers/src/{tests → test}/auth.test.ts +1 -1
  240. package/lib/routing-controllers/src/{tests → test}/users.test.ts +10 -10
  241. package/lib/routing-controllers/src/utils/validateEnv.ts +1 -3
  242. package/lib/routing-controllers/tsconfig.json +1 -1
  243. package/lib/sequelize/.env.development.local +2 -2
  244. package/lib/sequelize/.env.production.local +3 -3
  245. package/lib/sequelize/.env.test.local +3 -3
  246. package/lib/sequelize/.swcrc +1 -1
  247. package/lib/sequelize/Dockerfile.dev +23 -0
  248. package/lib/sequelize/Dockerfile.prod +23 -0
  249. package/lib/sequelize/Makefile +32 -15
  250. package/lib/sequelize/docker-compose.yml +19 -14
  251. package/lib/sequelize/jest.config.js +1 -1
  252. package/lib/sequelize/package.json +45 -43
  253. package/lib/sequelize/src/app.ts +5 -6
  254. package/lib/sequelize/src/config/index.ts +2 -1
  255. package/lib/sequelize/src/controllers/auth.controller.ts +7 -8
  256. package/lib/sequelize/src/controllers/users.controller.ts +9 -10
  257. package/lib/sequelize/src/{databases → database}/index.ts +1 -3
  258. package/lib/sequelize/src/dtos/users.dto.ts +12 -1
  259. package/lib/sequelize/src/interfaces/users.interface.ts +1 -1
  260. package/lib/sequelize/src/middlewares/auth.middleware.ts +16 -10
  261. package/lib/sequelize/src/middlewares/error.middleware.ts +2 -4
  262. package/lib/sequelize/src/middlewares/validation.middleware.ts +22 -20
  263. package/lib/sequelize/src/routes/auth.route.ts +8 -11
  264. package/lib/sequelize/src/routes/users.route.ts +9 -11
  265. package/lib/sequelize/src/server.ts +6 -7
  266. package/lib/sequelize/src/services/auth.service.ts +24 -35
  267. package/lib/sequelize/src/services/users.service.ts +18 -29
  268. package/lib/sequelize/src/{tests → test}/auth.test.ts +2 -2
  269. package/lib/sequelize/src/{tests → test}/users.test.ts +2 -2
  270. package/lib/sequelize/src/utils/validateEnv.ts +1 -3
  271. package/lib/sequelize/tsconfig.json +2 -2
  272. package/lib/starter.js +18 -27
  273. package/lib/typegoose/.env.production.local +1 -1
  274. package/lib/typegoose/.env.test.local +1 -1
  275. package/lib/typegoose/.swcrc +1 -1
  276. package/lib/typegoose/Dockerfile.dev +19 -0
  277. package/lib/typegoose/Dockerfile.prod +19 -0
  278. package/lib/typegoose/Makefile +32 -15
  279. package/lib/typegoose/docker-compose.yml +20 -11
  280. package/lib/typegoose/jest.config.js +1 -1
  281. package/lib/typegoose/package.json +41 -39
  282. package/lib/typegoose/src/app.ts +3 -2
  283. package/lib/typegoose/src/config/index.ts +2 -1
  284. package/lib/typegoose/src/controllers/auth.controller.ts +9 -11
  285. package/lib/typegoose/src/controllers/users.controller.ts +11 -13
  286. package/lib/typegoose/src/database/index.ts +11 -0
  287. package/lib/typegoose/src/dtos/users.dto.ts +12 -1
  288. package/lib/typegoose/src/interfaces/users.interface.ts +1 -1
  289. package/lib/typegoose/src/middlewares/auth.middleware.ts +16 -10
  290. package/lib/typegoose/src/middlewares/error.middleware.ts +2 -4
  291. package/lib/typegoose/src/middlewares/validation.middleware.ts +22 -20
  292. package/lib/typegoose/src/models/users.model.ts +1 -3
  293. package/lib/typegoose/src/routes/auth.route.ts +8 -11
  294. package/lib/typegoose/src/routes/users.route.ts +9 -11
  295. package/lib/typegoose/src/server.ts +5 -6
  296. package/lib/typegoose/src/services/auth.service.ts +27 -36
  297. package/lib/typegoose/src/services/users.service.ts +17 -26
  298. package/lib/typegoose/src/{tests → test}/auth.test.ts +2 -2
  299. package/lib/{mongoose/src/tests → typegoose/src/test}/users.test.ts +7 -7
  300. package/lib/typegoose/src/utils/validateEnv.ts +1 -3
  301. package/lib/typegoose/tsconfig.json +2 -2
  302. package/lib/typeorm/.env.development.local +2 -2
  303. package/lib/typeorm/.env.production.local +3 -3
  304. package/lib/typeorm/.env.test.local +3 -3
  305. package/lib/typeorm/.swcrc +1 -1
  306. package/lib/typeorm/Dockerfile.dev +19 -0
  307. package/lib/typeorm/Dockerfile.prod +19 -0
  308. package/lib/typeorm/Makefile +32 -15
  309. package/lib/typeorm/docker-compose.yml +21 -14
  310. package/lib/typeorm/jest.config.js +1 -1
  311. package/lib/typeorm/package.json +42 -41
  312. package/lib/typeorm/src/app.ts +6 -8
  313. package/lib/typeorm/src/config/index.ts +2 -1
  314. package/lib/typeorm/src/controllers/auth.controller.ts +9 -11
  315. package/lib/typeorm/src/controllers/users.controller.ts +11 -13
  316. package/lib/{graphql/src/databases → typeorm/src/database}/index.ts +3 -3
  317. package/lib/typeorm/src/dtos/users.dto.ts +12 -1
  318. package/lib/typeorm/src/exceptions/httpException.ts +10 -0
  319. package/lib/typeorm/src/interfaces/users.interface.ts +1 -1
  320. package/lib/typeorm/src/middlewares/auth.middleware.ts +14 -7
  321. package/lib/typeorm/src/middlewares/error.middleware.ts +2 -4
  322. package/lib/typeorm/src/middlewares/validation.middleware.ts +22 -20
  323. package/lib/typeorm/src/routes/auth.route.ts +8 -11
  324. package/lib/typeorm/src/routes/users.route.ts +9 -11
  325. package/lib/typeorm/src/server.ts +6 -7
  326. package/lib/typeorm/src/services/auth.service.ts +24 -32
  327. package/lib/typeorm/src/services/users.service.ts +10 -20
  328. package/lib/typeorm/src/{tests → test}/auth.test.ts +10 -11
  329. package/lib/typeorm/src/{tests → test}/users.test.ts +34 -38
  330. package/lib/typeorm/src/utils/validateEnv.ts +1 -3
  331. package/lib/typeorm/tsconfig.json +2 -2
  332. package/package.json +3 -3
  333. package/lib/default/Dockerfile +0 -24
  334. package/lib/default/src/controllers/index.controller.ts +0 -13
  335. package/lib/default/src/routes/index.route.ts +0 -19
  336. package/lib/default/src/utils/util.ts +0 -19
  337. package/lib/graphql/Dockerfile +0 -24
  338. package/lib/graphql/src/tests/index.test.ts +0 -18
  339. package/lib/graphql/src/tests/users.test.ts +0 -71
  340. package/lib/graphql/src/utils/util.ts +0 -19
  341. package/lib/knex/Dockerfile +0 -24
  342. package/lib/knex/src/controllers/index.controller.ts +0 -13
  343. package/lib/knex/src/databases/migrations/20210713110926_initial.ts +0 -13
  344. package/lib/knex/src/routes/index.route.ts +0 -19
  345. package/lib/knex/src/tests/index.test.ts +0 -17
  346. package/lib/knex/src/utils/util.ts +0 -19
  347. package/lib/mikro-orm/Dockerfile +0 -24
  348. package/lib/mikro-orm/src/controllers/index.controller.ts +0 -13
  349. package/lib/mikro-orm/src/routes/index.route.ts +0 -19
  350. package/lib/mikro-orm/src/tests/index.test.ts +0 -18
  351. package/lib/mikro-orm/src/utils/util.ts +0 -19
  352. package/lib/mongoose/Dockerfile +0 -24
  353. package/lib/mongoose/src/controllers/index.controller.ts +0 -13
  354. package/lib/mongoose/src/routes/index.route.ts +0 -19
  355. package/lib/mongoose/src/utils/util.ts +0 -19
  356. package/lib/prisma/Dockerfile +0 -24
  357. package/lib/prisma/src/controllers/index.controller.ts +0 -13
  358. package/lib/prisma/src/routes/index.route.ts +0 -19
  359. package/lib/prisma/src/tests/index.test.ts +0 -18
  360. package/lib/prisma/src/utils/util.ts +0 -19
  361. package/lib/routing-controllers/Dockerfile +0 -24
  362. package/lib/routing-controllers/src/controllers/index.controller.ts +0 -9
  363. package/lib/routing-controllers/src/tests/index.test.ts +0 -17
  364. package/lib/routing-controllers/src/utils/util.ts +0 -19
  365. package/lib/sequelize/Dockerfile +0 -28
  366. package/lib/sequelize/src/controllers/index.controller.ts +0 -13
  367. package/lib/sequelize/src/routes/index.route.ts +0 -19
  368. package/lib/sequelize/src/tests/index.test.ts +0 -18
  369. package/lib/sequelize/src/utils/util.ts +0 -19
  370. package/lib/typegoose/Dockerfile +0 -24
  371. package/lib/typegoose/src/controllers/index.controller.ts +0 -13
  372. package/lib/typegoose/src/databases/index.ts +0 -3
  373. package/lib/typegoose/src/routes/index.route.ts +0 -19
  374. package/lib/typegoose/src/tests/index.test.ts +0 -18
  375. package/lib/typegoose/src/utils/util.ts +0 -19
  376. package/lib/typeorm/Dockerfile +0 -24
  377. package/lib/typeorm/src/controllers/index.controller.ts +0 -13
  378. package/lib/typeorm/src/routes/index.route.ts +0 -19
  379. package/lib/typeorm/src/tests/index.test.ts +0 -18
  380. package/lib/typeorm/src/utils/util.ts +0 -19
  381. package/lib/default/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  382. package/lib/graphql/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  383. package/lib/knex/src/{databases → database}/migrations/.gitkeep +0 -0
  384. package/lib/knex/src/{databases → database}/seeds/.gitkeep +0 -0
  385. package/lib/knex/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  386. package/lib/mikro-orm/src/{databases → database}/index.ts +0 -0
  387. package/lib/mikro-orm/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  388. package/lib/mongoose/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  389. package/lib/mongoose/src/{tests → test}/auth.test.ts +0 -0
  390. package/lib/{default/src/tests → mongoose/src/test}/index.test.ts +0 -0
  391. package/lib/{prisma/src/exceptions/HttpException.ts → node-postgres/src/exceptions/httpException.ts} +0 -0
  392. package/lib/{sequelize/src/exceptions/HttpException.ts → prisma/src/exceptions/httpException.ts} +0 -0
  393. package/lib/prisma/src/{tests → test}/auth.test.ts +1 -1
  394. package/lib/{mongoose/src/tests → prisma/src/test}/index.test.ts +0 -0
  395. package/lib/prisma/src/{tests → test}/users.test.ts +1 -1
  396. /package/lib/routing-controllers/src/exceptions/{HttpException.ts → httpException.ts} +0 -0
  397. /package/lib/sequelize/src/{migrations → database/migrations}/.gitkeep +0 -0
  398. /package/lib/sequelize/src/{seeders → database/seeders}/.gitkeep +0 -0
  399. /package/lib/{typegoose/src/exceptions/HttpException.ts → sequelize/src/exceptions/httpException.ts} +0 -0
  400. /package/lib/{typeorm/src/exceptions/HttpException.ts → typegoose/src/exceptions/httpException.ts} +0 -0
  401. /package/lib/typeorm/src/{migration → database/migrations}/.gitkeep +0 -0
@@ -4,18 +4,26 @@ import { EntityRepository } from 'typeorm';
4
4
  import { SECRET_KEY } from '@config';
5
5
  import { CreateUserDto } from '@dtos/users.dto';
6
6
  import { UserEntity } from '@entities/users.entity';
7
- import { HttpException } from '@exceptions/HttpException';
7
+ import { HttpException } from '@exceptions/httpException';
8
8
  import { DataStoredInToken, TokenData } from '@interfaces/auth.interface';
9
9
  import { User } from '@interfaces/users.interface';
10
- import { isEmpty } from '@utils/util';
10
+
11
+ const createToken = (user: User): TokenData => {
12
+ const dataStoredInToken: DataStoredInToken = { id: user.id };
13
+ const expiresIn: number = 60 * 60;
14
+
15
+ return { expiresIn, token: sign(dataStoredInToken, SECRET_KEY, { expiresIn }) };
16
+ };
17
+
18
+ const createCookie = (tokenData: TokenData): string => {
19
+ return `Authorization=${tokenData.token}; HttpOnly; Max-Age=${tokenData.expiresIn};`;
20
+ };
11
21
 
12
22
  @EntityRepository(UserEntity)
13
- export default class AuthRepository {
23
+ export class AuthRepository {
14
24
  public async userSignUp(userData: CreateUserDto): Promise<User> {
15
- if (isEmpty(userData)) throw new HttpException(400, "You're not userData");
16
-
17
25
  const findUser: User = await UserEntity.findOne({ where: { email: userData.email } });
18
- if (findUser) throw new HttpException(409, `You're email ${userData.email} already exists`);
26
+ if (findUser) throw new HttpException(409, `This email ${userData.email} already exists`);
19
27
 
20
28
  const hashedPassword = await hash(userData.password, 10);
21
29
  const createUserData: User = await UserEntity.create({ ...userData, password: hashedPassword }).save();
@@ -24,38 +32,22 @@ export default class AuthRepository {
24
32
  }
25
33
 
26
34
  public async userLogIn(userData: CreateUserDto): Promise<{ cookie: string; findUser: User }> {
27
- if (isEmpty(userData)) throw new HttpException(400, "You're not userData");
28
-
29
35
  const findUser: User = await UserEntity.findOne({ where: { email: userData.email } });
30
- if (!findUser) throw new HttpException(409, `You're email ${userData.email} not found`);
36
+ if (!findUser) throw new HttpException(409, `This email ${userData.email} was not found`);
31
37
 
32
38
  const isPasswordMatching: boolean = await compare(userData.password, findUser.password);
33
- if (!isPasswordMatching) throw new HttpException(409, "You're password not matching");
39
+ if (!isPasswordMatching) throw new HttpException(409, 'Password is not matching');
34
40
 
35
- const tokenData = this.createToken(findUser);
36
- const cookie = this.createCookie(tokenData);
41
+ const tokenData = createToken(findUser);
42
+ const cookie = createCookie(tokenData);
37
43
 
38
44
  return { cookie, findUser };
39
45
  }
40
46
 
41
47
  public async userLogOut(userId: number): Promise<User> {
42
- if (isEmpty(userId)) throw new HttpException(400, "You're not userId");
43
-
44
48
  const findUser: User = await UserEntity.findOne({ where: { id: userId } });
45
- if (!findUser) throw new HttpException(409, "You're not user");
49
+ if (!findUser) throw new HttpException(409, "User doesn't exist");
46
50
 
47
51
  return findUser;
48
52
  }
49
-
50
- public createToken(user: User): TokenData {
51
- const dataStoredInToken: DataStoredInToken = { id: user.id };
52
- const secretKey: string = SECRET_KEY;
53
- const expiresIn: number = 60 * 60;
54
-
55
- return { expiresIn, token: sign(dataStoredInToken, secretKey, { expiresIn }) };
56
- }
57
-
58
- public createCookie(tokenData: TokenData): string {
59
- return `Authorization=${tokenData.token}; HttpOnly; Max-Age=${tokenData.expiresIn};`;
60
- }
61
53
  }
@@ -1,13 +1,12 @@
1
1
  import { hash } from 'bcrypt';
2
2
  import { EntityRepository } from 'typeorm';
3
- import { CreateUserDto } from '@dtos/users.dto';
3
+ import { CreateUserDto, UpdateUserDto } from '@dtos/users.dto';
4
4
  import { UserEntity } from '@entities/users.entity';
5
- import { HttpException } from '@exceptions/HttpException';
5
+ import { HttpException } from '@exceptions/httpException';
6
6
  import { User } from '@interfaces/users.interface';
7
- import { isEmpty } from '@utils/util';
8
7
 
9
- @EntityRepository()
10
- export default class UserRepository {
8
+ @EntityRepository(UserEntity)
9
+ export class UserRepository {
11
10
  public async userFindAll(): Promise<User[]> {
12
11
  const users: User[] = await UserEntity.find();
13
12
 
@@ -15,19 +14,15 @@ export default class UserRepository {
15
14
  }
16
15
 
17
16
  public async userFindById(userId: number): Promise<User> {
18
- if (isEmpty(userId)) throw new HttpException(400, "You're not userId");
19
-
20
17
  const user: User = await UserEntity.findOne({ where: { id: userId } });
21
- if (!user) throw new HttpException(409, "You're not user");
18
+ if (!user) throw new HttpException(409, "User doesn't exist");
22
19
 
23
20
  return user;
24
21
  }
25
22
 
26
23
  public async userCreate(userData: CreateUserDto): Promise<User> {
27
- if (isEmpty(userData)) throw new HttpException(400, "You're not userData");
28
-
29
24
  const findUser: User = await UserEntity.findOne({ where: { email: userData.email } });
30
- if (findUser) throw new HttpException(409, `You're email ${userData.email} already exists`);
25
+ if (findUser) throw new HttpException(409, `This email ${userData.email} already exists`);
31
26
 
32
27
  const hashedPassword = await hash(userData.password, 10);
33
28
  const createUserData: User = await UserEntity.create({ ...userData, password: hashedPassword }).save();
@@ -35,11 +30,9 @@ export default class UserRepository {
35
30
  return createUserData;
36
31
  }
37
32
 
38
- public async userUpdate(userId: number, userData: CreateUserDto): Promise<User> {
39
- if (isEmpty(userData)) throw new HttpException(400, "You're not userData");
40
-
33
+ public async userUpdate(userId: number, userData: UpdateUserDto): Promise<User> {
41
34
  const findUser: User = await UserEntity.findOne({ where: { id: userId } });
42
- if (!findUser) throw new HttpException(409, "You're not user");
35
+ if (!findUser) throw new HttpException(409, "User doesn't exist");
43
36
 
44
37
  const hashedPassword = await hash(userData.password, 10);
45
38
  await UserEntity.update(userId, { ...userData, password: hashedPassword });
@@ -49,10 +42,8 @@ export default class UserRepository {
49
42
  }
50
43
 
51
44
  public async userDelete(userId: number): Promise<User> {
52
- if (isEmpty(userId)) throw new HttpException(400, "You're not userId");
53
-
54
45
  const findUser: User = await UserEntity.findOne({ where: { id: userId } });
55
- if (!findUser) throw new HttpException(409, "You're not user");
46
+ if (!findUser) throw new HttpException(409, "User doesn't exist");
56
47
 
57
48
  await UserEntity.delete({ id: userId });
58
49
  return findUser;
@@ -1,10 +1,10 @@
1
1
  import { Authorized, Arg, Ctx, Mutation, Resolver } from 'type-graphql';
2
2
  import { CreateUserDto } from '@dtos/users.dto';
3
- import AuthRepository from '@repositories/auth.repository';
3
+ import { AuthRepository } from '@repositories/auth.repository';
4
4
  import { User } from '@typedefs/users.type';
5
5
 
6
6
  @Resolver()
7
- export class authResolver extends AuthRepository {
7
+ export class AuthResolver extends AuthRepository {
8
8
  @Mutation(() => User, {
9
9
  description: 'User signup',
10
10
  })
@@ -1,10 +1,10 @@
1
1
  import { Arg, Mutation, Query, Resolver } from 'type-graphql';
2
- import { CreateUserDto } from '@dtos/users.dto';
3
- import UserRepository from '@repositories/users.repository';
2
+ import { CreateUserDto, UpdateUserDto } from '@dtos/users.dto';
3
+ import { UserRepository } from '@repositories/users.repository';
4
4
  import { User } from '@typedefs/users.type';
5
5
 
6
6
  @Resolver()
7
- export class userResolver extends UserRepository {
7
+ export class UserResolver extends UserRepository {
8
8
  @Query(() => [User], {
9
9
  description: 'User find list',
10
10
  })
@@ -32,7 +32,7 @@ export class userResolver extends UserRepository {
32
32
  @Mutation(() => User, {
33
33
  description: 'User update',
34
34
  })
35
- async updateUser(@Arg('userId') userId: number, @Arg('userData') userData: CreateUserDto): Promise<User> {
35
+ async updateUser(@Arg('userId') userId: number, @Arg('userData') userData: UpdateUserDto): Promise<User> {
36
36
  const user: User = await this.userUpdate(userId, userData);
37
37
  return user;
38
38
  }
@@ -1,11 +1,10 @@
1
- import App from '@/app';
2
- import validateEnv from '@utils/validateEnv';
1
+ import { App } from '@/app';
2
+ import { AuthResolver } from '@resolvers/auth.resolver';
3
+ import { UserResolver } from '@resolvers/users.resolver';
4
+ import { ValidateEnv } from '@utils/validateEnv';
3
5
 
4
- import { authResolver } from '@resolvers/auth.resolver';
5
- import { userResolver } from '@resolvers/users.resolver';
6
+ ValidateEnv();
6
7
 
7
- validateEnv();
8
-
9
- const app = new App([authResolver, userResolver]);
8
+ const app = new App([AuthResolver, UserResolver]);
10
9
 
11
10
  app.listen();
@@ -0,0 +1,10 @@
1
+ import request from 'supertest';
2
+ import { App } from '@/app';
3
+ import { CreateUserDto } from '@dtos/users.dto';
4
+
5
+ afterAll(async () => {
6
+ await new Promise<void>(resolve => setTimeout(() => resolve(), 500));
7
+ });
8
+
9
+ describe('Testing Auth', () => {
10
+ });
@@ -0,0 +1,11 @@
1
+ import request from 'supertest';
2
+ import { App } from '@app';
3
+ import { CreateUserDto } from '@dtos/users.dto';
4
+ import { User } from '@interfaces/users.interface';
5
+
6
+ afterAll(async () => {
7
+ await new Promise<void>(resolve => setTimeout(() => resolve(), 500));
8
+ });
9
+
10
+ describe('Testing Users', () => {
11
+ });
@@ -3,10 +3,10 @@ import { Field, ObjectType } from 'type-graphql';
3
3
  @ObjectType()
4
4
  export class User {
5
5
  @Field()
6
- id: number;
6
+ id?: number;
7
7
 
8
8
  @Field()
9
- email: string;
9
+ email?: string;
10
10
 
11
11
  @Field()
12
12
  password: string;
@@ -3,6 +3,7 @@ import { join } from 'path';
3
3
  import winston from 'winston';
4
4
  import winstonDaily from 'winston-daily-rotate-file';
5
5
  import { LOG_DIR } from '@config';
6
+ import { HttpException } from '@exceptions/httpException';
6
7
 
7
8
  // logs dir
8
9
  const logDir: string = join(__dirname, LOG_DIR);
@@ -72,4 +73,5 @@ export const errorLogger = error => {
72
73
  }
73
74
 
74
75
  logger.error(message);
76
+ throw new HttpException(400, message);
75
77
  };
@@ -1,10 +1,8 @@
1
1
  import { cleanEnv, port, str } from 'envalid';
2
2
 
3
- const validateEnv = () => {
3
+ export const ValidateEnv = () => {
4
4
  cleanEnv(process.env, {
5
5
  NODE_ENV: str(),
6
6
  PORT: port(),
7
7
  });
8
8
  };
9
-
10
- export default validateEnv;
@@ -23,7 +23,7 @@
23
23
  "paths": {
24
24
  "@/*": ["*"],
25
25
  "@config": ["config"],
26
- "@databases": ["databases"],
26
+ "@database": ["database"],
27
27
  "@dtos/*": ["dtos/*"],
28
28
  "@entities/*": ["entities/*"],
29
29
  "@exceptions/*": ["exceptions/*"],
@@ -36,5 +36,5 @@
36
36
  }
37
37
  },
38
38
  "include": ["src/**/*.ts", "src/**/*.json", ".env"],
39
- "exclude": ["node_modules", "src/http", "src/logs", "src/tests"]
39
+ "exclude": ["node_modules", "src/http", "src/logs"]
40
40
  }
@@ -2,10 +2,10 @@
2
2
  PORT = 3000
3
3
 
4
4
  # DATABASE
5
- DB_HOST = localhost
6
- DB_PORT = 3306
7
5
  DB_USER = root
8
6
  DB_PASSWORD = password
7
+ DB_HOST = localhost
8
+ DB_PORT = 3306
9
9
  DB_DATABASE = dev
10
10
 
11
11
  # TOKEN
@@ -2,11 +2,11 @@
2
2
  PORT = 3000
3
3
 
4
4
  # DATABASE
5
- DB_HOST = localhost
6
- DB_PORT = 3306
7
5
  DB_USER = root
8
6
  DB_PASSWORD = password
9
- DB_DATABASE = prod
7
+ DB_HOST = localhost
8
+ DB_PORT = 3306
9
+ DB_DATABASE = dev
10
10
 
11
11
  # TOKEN
12
12
  SECRET_KEY = secretKey
@@ -2,11 +2,11 @@
2
2
  PORT = 3000
3
3
 
4
4
  # DATABASE
5
- DB_HOST = localhost
6
- DB_PORT = 3306
7
5
  DB_USER = root
8
6
  DB_PASSWORD = password
9
- DB_DATABASE = test
7
+ DB_HOST = localhost
8
+ DB_PORT = 3306
9
+ DB_DATABASE = dev
10
10
 
11
11
  # TOKEN
12
12
  SECRET_KEY = secretKey
package/lib/knex/.swcrc CHANGED
@@ -23,7 +23,7 @@
23
23
  "@/*": ["*"],
24
24
  "@config": ["config"],
25
25
  "@controllers/*": ["controllers/*"],
26
- "@databases": ["databases"],
26
+ "@database": ["database"],
27
27
  "@dtos/*": ["dtos/*"],
28
28
  "@exceptions/*": ["exceptions/*"],
29
29
  "@interfaces/*": ["interfaces/*"],
@@ -0,0 +1,19 @@
1
+ # NodeJS Version 16
2
+ FROM node:16.18-buster-slim
3
+
4
+ # Copy Dir
5
+ COPY . ./app
6
+
7
+ # Work to Dir
8
+ WORKDIR /app
9
+
10
+ # Install Node Package
11
+ RUN npm install --legacy-peer-deps
12
+
13
+ # Set Env
14
+ ENV NODE_ENV development
15
+
16
+ EXPOSE 3000
17
+
18
+ # Cmd script
19
+ CMD ["npm", "run", "dev"]
@@ -0,0 +1,19 @@
1
+ # NodeJS Version 16
2
+ FROM node:16.18-buster-slim
3
+
4
+ # Copy Dir
5
+ COPY . ./app
6
+
7
+ # Work to Dir
8
+ WORKDIR /app
9
+
10
+ # Install Node Package
11
+ RUN npm install --legacy-peer-deps
12
+
13
+ # Set Env
14
+ ENV NODE_ENV production
15
+
16
+ EXPOSE 3000
17
+
18
+ # Cmd script
19
+ CMD ["npm", "run", "start"]
package/lib/knex/Makefile CHANGED
@@ -2,28 +2,45 @@
2
2
  # ex) production-stage: make build APP_NAME=<APP_NAME>
3
3
  # ex) development-stage: make build-dev APP_NAME=<APP_NAME>
4
4
 
5
+ SHELL := /bin/bash
6
+
5
7
  APP_NAME = typescript-express
6
8
  APP_NAME := $(APP_NAME)
7
9
 
8
- .PHONY: build
9
- # Build the container image - Dvelopment
10
- build-dev:
10
+ .PHONY: help start clean db test
11
+
12
+ help:
13
+ @grep -E '^[1-9a-zA-Z_-]+:.*?## .*$$|(^#--)' $(MAKEFILE_LIST) \
14
+ | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m %-43s\033[0m %s\n", $$1, $$2}' \
15
+ | sed -e 's/\[32m #-- /[33m/'
16
+
17
+ #-- Docker
18
+ up: ## Up the container images
19
+ docker-compose up -d
20
+
21
+ down: ## Down the container images
22
+ docker-compose down
23
+
24
+ build: ## Build the container image - Production
11
25
  docker build -t ${APP_NAME}\
12
- --target development-build-stage\
13
- -f Dockerfile .
26
+ -f Dockerfile.prod .
14
27
 
15
- # Build the container image - Production
16
- build:
28
+ build-dev: ## Build the container image - Dvelopment
17
29
  docker build -t ${APP_NAME}\
18
- --target production-build-stage\
19
- -f Dockerfile .
30
+ -f Dockerfile.dev .
20
31
 
21
- # Clean the container image
22
- clean:
32
+ run: ## Run the container image
33
+ docker run -d -it -p 3000:3000 ${APP_NAME}
34
+
35
+ pause: ## Pause the containers
36
+ docker container rm -f ${APP_NAME}
37
+
38
+ clean: ## Clean the images
23
39
  docker rmi -f ${APP_NAME}
24
40
 
25
- # Run the container image
26
- run:
27
- docker run -d -it -p 3000:3000 ${APP_NAME}
41
+ remove: ## Remove the volumes
42
+ docker volume rm -f ${APP_NAME}
28
43
 
29
- all: build
44
+ #-- Database
45
+ db: ## Start the local database MySQL
46
+ docker-compose up -d mysql
@@ -1,43 +1,48 @@
1
- version: '3.7'
1
+ version: "3.9"
2
2
 
3
3
  services:
4
4
  proxy:
5
- image: nginx:alpine
6
5
  container_name: proxy
6
+ image: nginx:alpine
7
7
  ports:
8
- - '80:80'
8
+ - "80:80"
9
9
  volumes:
10
10
  - ./nginx.conf:/etc/nginx/nginx.conf
11
- restart: 'unless-stopped'
11
+ restart: "unless-stopped"
12
12
  networks:
13
13
  - backend
14
+
14
15
  server:
16
+ container_name: server
15
17
  build:
16
18
  context: ./
17
- target: development-build-stage
18
- dockerfile: Dockerfile
19
- container_name: server
19
+ dockerfile: Dockerfile.dev
20
20
  ports:
21
- - '3000:3000'
21
+ - "3000:3000"
22
+ environment:
23
+ DB_USER: root
24
+ DB_PASSWORD: password
25
+ DB_DATABASE: dev
22
26
  volumes:
23
27
  - ./:/app
24
28
  - /app/node_modules
25
- restart: 'unless-stopped'
29
+ restart: "unless-stopped"
26
30
  networks:
27
31
  - backend
28
32
  links:
29
33
  - mysql
30
34
  depends_on:
31
35
  - mysql
36
+
32
37
  mysql:
33
- image: mysql:5.7
34
38
  container_name: mysql
39
+ image: mysql:5.7
35
40
  environment:
36
- MYSQL_ROOT_USER: root
37
- MYSQL_ROOT_PASSWORD: password
38
- MYSQL_DATABASE: test
41
+ DB_USER: root
42
+ DB_PASSWORD: password
43
+ DB_DATABASE: dev
39
44
  ports:
40
- - '3306:3306'
45
+ - "3306:3306"
41
46
  networks:
42
47
  - backend
43
48
 
@@ -1,4 +1,4 @@
1
- const { pathsToModuleNameMapper } = require('ts-jest/utils');
1
+ const { pathsToModuleNameMapper } = require('ts-jest');
2
2
  const { compilerOptions } = require('./tsconfig.json');
3
3
 
4
4
  module.exports = {
@@ -1,23 +1,23 @@
1
1
  import { DB_HOST, DB_PORT, DB_USER, DB_PASSWORD, DB_DATABASE } from './src/config';
2
2
 
3
- export = {
3
+ export const dbConfig = {
4
4
  client: 'mysql',
5
5
  connection: {
6
6
  charset: 'utf8',
7
7
  timezone: 'UTC',
8
- host: DB_HOST,
9
- port: DB_PORT,
10
8
  user: DB_USER,
11
9
  password: DB_PASSWORD,
12
- database: DB_DATABASE
10
+ host: DB_HOST,
11
+ port: DB_PORT,
12
+ database: DB_DATABASE,
13
13
  },
14
14
  migrations: {
15
- directory: 'src/databases/migrations',
15
+ directory: 'src/database/migrations',
16
16
  tableName: 'migrations',
17
- // stub: 'src/databases/stubs',
17
+ // stub: 'src/database/stubs',
18
18
  },
19
19
  seeds: {
20
- directory: 'src/databases/seeds',
21
- // stub: 'src/databases/stubs',
20
+ directory: 'src/database/seeds',
21
+ // stub: 'src/database/stubs',
22
22
  },
23
23
  };
@@ -23,61 +23,63 @@
23
23
  "dependencies": {
24
24
  "bcrypt": "^5.0.1",
25
25
  "class-transformer": "^0.5.1",
26
- "class-validator": "^0.13.1",
26
+ "class-validator": "^0.13.2",
27
27
  "compression": "^1.7.4",
28
- "cookie-parser": "^1.4.5",
28
+ "cookie-parser": "^1.4.6",
29
29
  "cors": "^2.8.5",
30
- "dotenv": "^10.0.0",
31
- "envalid": "^7.1.0",
32
- "express": "^4.17.1",
33
- "helmet": "^4.6.0",
30
+ "dotenv": "^16.0.1",
31
+ "envalid": "^7.3.1",
32
+ "express": "^4.18.1",
33
+ "helmet": "^5.1.1",
34
34
  "hpp": "^0.2.3",
35
35
  "jsonwebtoken": "^8.5.1",
36
- "knex": "^0.21.19",
36
+ "knex": "^2.2.0",
37
37
  "morgan": "^1.10.0",
38
38
  "mysql": "^2.18.1",
39
- "objection": "^2.2.15",
40
- "swagger-jsdoc": "^6.0.0",
41
- "swagger-ui-express": "^4.1.6",
42
- "winston": "^3.3.3",
43
- "winston-daily-rotate-file": "^4.5.5"
39
+ "objection": "^3.0.1",
40
+ "reflect-metadata": "^0.1.13",
41
+ "swagger-jsdoc": "^6.2.1",
42
+ "swagger-ui-express": "^4.5.0",
43
+ "typedi": "^0.10.0",
44
+ "winston": "^3.8.1",
45
+ "winston-daily-rotate-file": "^4.7.1"
44
46
  },
45
47
  "devDependencies": {
46
- "@swc/cli": "^0.1.51",
47
- "@swc/core": "^1.2.108",
48
+ "@swc/cli": "^0.1.57",
49
+ "@swc/core": "^1.2.220",
48
50
  "@types/bcrypt": "^5.0.0",
49
- "@types/compression": "^1.7.1",
50
- "@types/cookie-parser": "^1.4.2",
51
- "@types/cors": "^2.8.11",
51
+ "@types/compression": "^1.7.2",
52
+ "@types/cookie-parser": "^1.4.3",
53
+ "@types/cors": "^2.8.12",
52
54
  "@types/express": "^4.17.13",
53
- "@types/hpp": "^0.2.1",
54
- "@types/jest": "27.4.x",
55
- "@types/jsonwebtoken": "^8.5.4",
55
+ "@types/hpp": "^0.2.2",
56
+ "@types/jest": "^28.1.6",
57
+ "@types/jsonwebtoken": "^8.5.8",
56
58
  "@types/knex": "^0.16.1",
57
59
  "@types/morgan": "^1.9.3",
58
- "@types/node": "^16.0.1",
59
- "@types/supertest": "^2.0.11",
60
+ "@types/node": "^17.0.45",
61
+ "@types/supertest": "^2.0.12",
60
62
  "@types/swagger-jsdoc": "^6.0.1",
61
63
  "@types/swagger-ui-express": "^4.1.3",
62
- "@typescript-eslint/eslint-plugin": "^4.28.2",
63
- "@typescript-eslint/parser": "^4.28.2",
64
+ "@typescript-eslint/eslint-plugin": "^5.29.0",
65
+ "@typescript-eslint/parser": "^5.29.0",
64
66
  "cross-env": "^7.0.3",
65
- "eslint": "^7.30.0",
66
- "eslint-config-prettier": "^8.3.0",
67
- "eslint-plugin-prettier": "^3.4.0",
68
- "husky": "^7.0.1",
69
- "jest": "27.4.x",
70
- "lint-staged": "^11.0.0",
71
- "node-config": "0.0.2",
72
- "node-gyp": "^8.1.0",
73
- "nodemon": "^2.0.9",
74
- "pm2": "^5.1.0",
75
- "prettier": "^2.3.2",
76
- "supertest": "^6.2.2",
77
- "ts-jest": "^27.1.4",
78
- "ts-node": "^10.4.0",
79
- "tsc-alias": "^1.4.1",
80
- "tsconfig-paths": "^3.10.1",
81
- "typescript": "^4.5.2"
67
+ "eslint": "^8.20.0",
68
+ "eslint-config-prettier": "^8.5.0",
69
+ "eslint-plugin-prettier": "^4.2.1",
70
+ "husky": "^8.0.1",
71
+ "jest": "^28.1.1",
72
+ "lint-staged": "^13.0.3",
73
+ "node-config": "^0.0.2",
74
+ "node-gyp": "^9.1.0",
75
+ "nodemon": "^2.0.19",
76
+ "pm2": "^5.2.0",
77
+ "prettier": "^2.7.1",
78
+ "supertest": "^6.2.4",
79
+ "ts-jest": "^28.0.7",
80
+ "ts-node": "^10.9.1",
81
+ "tsc-alias": "^1.7.0",
82
+ "tsconfig-paths": "^4.0.0",
83
+ "typescript": "^4.7.4"
82
84
  }
83
- }
85
+ }