arkos 1.2.7-test → 1.2.8-beta

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 (247) hide show
  1. package/README.md +22 -14
  2. package/cli.js +2 -11
  3. package/dist/cjs/app.js +1 -1
  4. package/dist/cjs/app.js.map +1 -1
  5. package/dist/cjs/modules/auth/auth.service.js +0 -7
  6. package/dist/cjs/modules/auth/auth.service.js.map +1 -1
  7. package/dist/cjs/modules/base/base.controller.js +11 -12
  8. package/dist/cjs/modules/base/base.controller.js.map +1 -1
  9. package/dist/cjs/modules/base/base.router.js.map +1 -1
  10. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +41 -27
  11. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js.map +1 -1
  12. package/dist/cjs/modules/error-handler/error-handler.controller.js +1 -0
  13. package/dist/cjs/modules/error-handler/error-handler.controller.js.map +1 -1
  14. package/dist/cjs/modules/swagger/swagger.router.js +14 -56
  15. package/dist/cjs/modules/swagger/swagger.router.js.map +1 -1
  16. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +250 -0
  17. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -0
  18. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +66 -0
  19. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +1 -0
  20. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +41 -0
  21. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -0
  22. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +22 -0
  23. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +1 -0
  24. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js +30 -0
  25. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js.map +1 -0
  26. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js +442 -0
  27. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js.map +1 -0
  28. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js +165 -0
  29. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js.map +1 -0
  30. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +93 -0
  31. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -0
  32. package/dist/cjs/server.js +2 -2
  33. package/dist/cjs/server.js.map +1 -1
  34. package/dist/cjs/types/arkos-config.js.map +1 -1
  35. package/dist/cjs/utils/cli/build.js +2 -19
  36. package/dist/cjs/utils/cli/build.js.map +1 -1
  37. package/dist/cjs/utils/cli/dev.js +6 -3
  38. package/dist/cjs/utils/cli/dev.js.map +1 -1
  39. package/dist/cjs/utils/cli/generate.js +6 -6
  40. package/dist/cjs/utils/cli/generate.js.map +1 -1
  41. package/dist/cjs/utils/cli/utils/cli.helpers.js +10 -1
  42. package/dist/cjs/utils/cli/utils/cli.helpers.js.map +1 -1
  43. package/dist/cjs/utils/features/api.features.js +1 -0
  44. package/dist/cjs/utils/features/api.features.js.map +1 -1
  45. package/dist/cjs/utils/helpers/fs.helpers.js +12 -5
  46. package/dist/cjs/utils/helpers/fs.helpers.js.map +1 -1
  47. package/dist/cjs/utils/helpers/global.helpers.js +59 -2
  48. package/dist/cjs/utils/helpers/global.helpers.js.map +1 -1
  49. package/dist/cjs/utils/helpers/models.helpers.js +20 -44
  50. package/dist/cjs/utils/helpers/models.helpers.js.map +1 -1
  51. package/dist/cjs/utils/sheu.js +143 -0
  52. package/dist/cjs/utils/sheu.js.map +1 -0
  53. package/dist/esm/app.js +1 -0
  54. package/dist/esm/app.js.map +1 -0
  55. package/dist/{es2020 → esm}/exports/auth/index.js +1 -1
  56. package/dist/{es2020 → esm}/exports/controllers/index.js +2 -2
  57. package/dist/{es2020 → esm}/exports/error-handler/index.js +2 -2
  58. package/dist/{es2020 → esm}/exports/index.js +2 -2
  59. package/dist/{es2020 → esm}/exports/middlewares/index.js +1 -1
  60. package/dist/esm/exports/prisma/index.js +3 -0
  61. package/dist/{es2020 → esm}/exports/services/index.js +4 -4
  62. package/dist/esm/exports/utils/index.js +4 -0
  63. package/dist/esm/exports/validation/index.js +4 -0
  64. package/dist/{es2020 → esm}/modules/auth/auth.controller.js +7 -7
  65. package/dist/{es2020 → esm}/modules/auth/auth.router.js +6 -6
  66. package/dist/{es2020 → esm}/modules/auth/auth.service.js +6 -13
  67. package/dist/esm/modules/auth/auth.service.js.map +1 -0
  68. package/dist/{es2020 → esm}/modules/auth/utils/helpers/auth.controller.helpers.js +2 -2
  69. package/dist/{es2020 → esm}/modules/base/base.controller.js +18 -19
  70. package/dist/esm/modules/base/base.controller.js.map +1 -0
  71. package/dist/{es2020 → esm}/modules/base/base.middlewares.js +6 -6
  72. package/dist/{es2020 → esm}/modules/base/base.router.js +4 -4
  73. package/dist/esm/modules/base/base.router.js.map +1 -0
  74. package/dist/{es2020 → esm}/modules/base/base.service.js +6 -6
  75. package/dist/{es2020 → esm}/modules/base/utils/helpers/base.controller.helpers.js +1 -1
  76. package/dist/{es2020 → esm}/modules/base/utils/helpers/base.middlewares.helpers.js +1 -1
  77. package/dist/{es2020 → esm}/modules/base/utils/helpers/base.router.helpers.js +45 -33
  78. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js.map +1 -0
  79. package/dist/{es2020 → esm}/modules/base/utils/helpers/base.service.helpers.js +1 -1
  80. package/dist/{es2020 → esm}/modules/email/email.service.js +2 -2
  81. package/dist/{es2020 → esm}/modules/error-handler/error-handler.controller.js +4 -3
  82. package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -0
  83. package/dist/{es2020 → esm}/modules/error-handler/utils/error-handler.helpers.js +1 -1
  84. package/dist/{es2020 → esm}/modules/file-upload/file-upload.controller.js +7 -7
  85. package/dist/{es2020 → esm}/modules/file-upload/file-upload.router.js +5 -5
  86. package/dist/{es2020 → esm}/modules/file-upload/file-upload.service.js +5 -5
  87. package/dist/{es2020 → esm}/modules/file-upload/utils/helpers/file-upload.helpers.js +2 -2
  88. package/dist/{es2020 → esm}/modules/swagger/swagger.router.js +15 -57
  89. package/dist/esm/modules/swagger/swagger.router.js.map +1 -0
  90. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +247 -0
  91. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +1 -0
  92. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +63 -0
  93. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +1 -0
  94. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +38 -0
  95. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -0
  96. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +19 -0
  97. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +1 -0
  98. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js +24 -0
  99. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.js.map +1 -0
  100. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js +436 -0
  101. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.js.map +1 -0
  102. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js +159 -0
  103. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.js.map +1 -0
  104. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +83 -0
  105. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js.map +1 -0
  106. package/dist/esm/server.js +3 -0
  107. package/dist/esm/server.js.map +1 -0
  108. package/dist/esm/types/arkos-config.js.map +1 -0
  109. package/dist/{es2020 → esm}/utils/cli/build.js +4 -21
  110. package/dist/esm/utils/cli/build.js.map +1 -0
  111. package/dist/{es2020 → esm}/utils/cli/dev.js +10 -7
  112. package/dist/esm/utils/cli/dev.js.map +1 -0
  113. package/dist/{es2020 → esm}/utils/cli/generate.js +10 -10
  114. package/dist/{es2020 → esm}/utils/cli/generate.js.map +1 -1
  115. package/dist/{es2020 → esm}/utils/cli/index.js +5 -5
  116. package/dist/{es2020 → esm}/utils/cli/start.js +4 -4
  117. package/dist/esm/utils/cli/utils/cli.helpers.js +27 -0
  118. package/dist/esm/utils/cli/utils/cli.helpers.js.map +1 -0
  119. package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +1 -1
  120. package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-middlewares.js +1 -1
  121. package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +2 -2
  122. package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-router-template.js +1 -1
  123. package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-service-template.js +2 -2
  124. package/dist/{es2020 → esm}/utils/cli/utils/template-generators.js +6 -6
  125. package/dist/{es2020 → esm}/utils/features/api.features.js +5 -4
  126. package/dist/esm/utils/features/api.features.js.map +1 -0
  127. package/dist/{es2020 → esm}/utils/features/change-case.features.js +1 -1
  128. package/dist/{es2020 → esm}/utils/helpers/fs.helpers.js +12 -5
  129. package/dist/esm/utils/helpers/fs.helpers.js.map +1 -0
  130. package/dist/esm/utils/helpers/global.helpers.js +55 -0
  131. package/dist/esm/utils/helpers/global.helpers.js.map +1 -0
  132. package/dist/{es2020 → esm}/utils/helpers/models.helpers.js +21 -12
  133. package/dist/esm/utils/helpers/models.helpers.js.map +1 -0
  134. package/dist/{es2020 → esm}/utils/helpers/prisma.helpers.js +4 -4
  135. package/dist/esm/utils/sheu.js +141 -0
  136. package/dist/esm/utils/sheu.js.map +1 -0
  137. package/dist/{es2020 → esm}/utils/validate-dto.js +1 -1
  138. package/dist/{es2020 → esm}/utils/validate-schema.js +1 -1
  139. package/dist/types/modules/auth/auth.controller.d.ts +7 -7
  140. package/dist/types/modules/auth/auth.service.d.ts +1 -1
  141. package/dist/types/modules/base/base.controller.d.ts +9 -9
  142. package/dist/types/modules/base/utils/helpers/base.router.helpers.d.ts +4 -1
  143. package/dist/types/modules/error-handler/utils/catch-async.d.ts +1 -1
  144. package/dist/types/modules/file-upload/file-upload.controller.d.ts +4 -4
  145. package/dist/types/modules/swagger/swagger.router.d.ts +1 -1
  146. package/dist/types/modules/swagger/utils/helpers/get-authentication-json-schema-paths.d.ts +2 -0
  147. package/dist/types/modules/swagger/utils/helpers/get-system-json-schema-paths.d.ts +2 -0
  148. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.d.ts +1 -0
  149. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.d.ts +1 -0
  150. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.d.ts +1 -0
  151. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes.d.ts +2 -0
  152. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes.d.ts +2 -0
  153. package/dist/types/modules/swagger/utils/helpers/swagger.router.helpers.d.ts +7 -0
  154. package/dist/types/types/arkos-config.d.ts +7 -4
  155. package/dist/types/utils/features/api.features.d.ts +1 -1
  156. package/dist/types/utils/helpers/global.helpers.d.ts +6 -1
  157. package/dist/types/utils/helpers/models.helpers.d.ts +10 -1
  158. package/dist/types/utils/helpers/prisma.helpers.d.ts +1 -1
  159. package/dist/types/utils/sheu.d.ts +25 -0
  160. package/package.json +23 -19
  161. package/dist/es2020/app.js +0 -1
  162. package/dist/es2020/app.js.map +0 -1
  163. package/dist/es2020/exports/prisma/index.js +0 -3
  164. package/dist/es2020/exports/utils/index.js +0 -4
  165. package/dist/es2020/exports/validation/index.js +0 -4
  166. package/dist/es2020/modules/auth/auth.service.js.map +0 -1
  167. package/dist/es2020/modules/base/base.controller.js.map +0 -1
  168. package/dist/es2020/modules/base/base.router.js.map +0 -1
  169. package/dist/es2020/modules/base/utils/helpers/base.router.helpers.js.map +0 -1
  170. package/dist/es2020/modules/error-handler/error-handler.controller.js.map +0 -1
  171. package/dist/es2020/modules/swagger/swagger.router.js.map +0 -1
  172. package/dist/es2020/server.js +0 -3
  173. package/dist/es2020/server.js.map +0 -1
  174. package/dist/es2020/types/arkos-config.js.map +0 -1
  175. package/dist/es2020/utils/cli/build.js.map +0 -1
  176. package/dist/es2020/utils/cli/dev.js.map +0 -1
  177. package/dist/es2020/utils/cli/utils/cli.helpers.js +0 -18
  178. package/dist/es2020/utils/cli/utils/cli.helpers.js.map +0 -1
  179. package/dist/es2020/utils/features/api.features.js.map +0 -1
  180. package/dist/es2020/utils/helpers/fs.helpers.js.map +0 -1
  181. package/dist/es2020/utils/helpers/global.helpers.js +0 -4
  182. package/dist/es2020/utils/helpers/global.helpers.js.map +0 -1
  183. package/dist/es2020/utils/helpers/models.helpers.js.map +0 -1
  184. /package/dist/{es2020 → esm}/exports/auth/index.js.map +0 -0
  185. /package/dist/{es2020 → esm}/exports/controllers/index.js.map +0 -0
  186. /package/dist/{es2020 → esm}/exports/error-handler/index.js.map +0 -0
  187. /package/dist/{es2020 → esm}/exports/index.js.map +0 -0
  188. /package/dist/{es2020 → esm}/exports/middlewares/index.js.map +0 -0
  189. /package/dist/{es2020 → esm}/exports/prisma/index.js.map +0 -0
  190. /package/dist/{es2020 → esm}/exports/services/index.js.map +0 -0
  191. /package/dist/{es2020 → esm}/exports/utils/index.js.map +0 -0
  192. /package/dist/{es2020 → esm}/exports/validation/index.js.map +0 -0
  193. /package/dist/{es2020 → esm}/modules/auth/auth.controller.js.map +0 -0
  194. /package/dist/{es2020 → esm}/modules/auth/auth.router.js.map +0 -0
  195. /package/dist/{es2020 → esm}/modules/auth/utils/helpers/auth.controller.helpers.js.map +0 -0
  196. /package/dist/{es2020 → esm}/modules/base/base.middlewares.js.map +0 -0
  197. /package/dist/{es2020 → esm}/modules/base/base.service.js.map +0 -0
  198. /package/dist/{es2020 → esm}/modules/base/utils/helpers/base.controller.helpers.js.map +0 -0
  199. /package/dist/{es2020 → esm}/modules/base/utils/helpers/base.middlewares.helpers.js.map +0 -0
  200. /package/dist/{es2020 → esm}/modules/base/utils/helpers/base.service.helpers.js.map +0 -0
  201. /package/dist/{es2020 → esm}/modules/email/email.service.js.map +0 -0
  202. /package/dist/{es2020 → esm}/modules/error-handler/utils/app-error.js +0 -0
  203. /package/dist/{es2020 → esm}/modules/error-handler/utils/app-error.js.map +0 -0
  204. /package/dist/{es2020 → esm}/modules/error-handler/utils/catch-async.js +0 -0
  205. /package/dist/{es2020 → esm}/modules/error-handler/utils/catch-async.js.map +0 -0
  206. /package/dist/{es2020 → esm}/modules/error-handler/utils/error-handler.helpers.js.map +0 -0
  207. /package/dist/{es2020 → esm}/modules/file-upload/file-upload.controller.js.map +0 -0
  208. /package/dist/{es2020 → esm}/modules/file-upload/file-upload.router.js.map +0 -0
  209. /package/dist/{es2020 → esm}/modules/file-upload/file-upload.service.js.map +0 -0
  210. /package/dist/{es2020 → esm}/modules/file-upload/utils/helpers/file-upload.helpers.js.map +0 -0
  211. /package/dist/{es2020 → esm}/paths.js +0 -0
  212. /package/dist/{es2020 → esm}/paths.js.map +0 -0
  213. /package/dist/{es2020 → esm}/types/arkos-config.js +0 -0
  214. /package/dist/{es2020 → esm}/types/auth.js +0 -0
  215. /package/dist/{es2020 → esm}/types/auth.js.map +0 -0
  216. /package/dist/{es2020 → esm}/types/index.js +0 -0
  217. /package/dist/{es2020 → esm}/types/index.js.map +0 -0
  218. /package/dist/{es2020 → esm}/types/router-config.js +0 -0
  219. /package/dist/{es2020 → esm}/types/router-config.js.map +0 -0
  220. /package/dist/{es2020 → esm}/utils/arkos-env.js +0 -0
  221. /package/dist/{es2020 → esm}/utils/arkos-env.js.map +0 -0
  222. /package/dist/{es2020 → esm}/utils/cli/index.js.map +0 -0
  223. /package/dist/{es2020 → esm}/utils/cli/start.js.map +0 -0
  224. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js.map +0 -0
  225. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -0
  226. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -0
  227. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-middlewares.js.map +0 -0
  228. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +0 -0
  229. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-router-template.js.map +0 -0
  230. /package/dist/{es2020 → esm}/utils/cli/utils/template-generator/templates/generate-service-template.js.map +0 -0
  231. /package/dist/{es2020 → esm}/utils/cli/utils/template-generators.js.map +0 -0
  232. /package/dist/{es2020 → esm}/utils/dotenv.helpers.js +0 -0
  233. /package/dist/{es2020 → esm}/utils/dotenv.helpers.js.map +0 -0
  234. /package/dist/{es2020 → esm}/utils/features/change-case.features.js.map +0 -0
  235. /package/dist/{es2020 → esm}/utils/helpers/api.features.helpers.js +0 -0
  236. /package/dist/{es2020 → esm}/utils/helpers/api.features.helpers.js.map +0 -0
  237. /package/dist/{es2020 → esm}/utils/helpers/change-case.helpers.js +0 -0
  238. /package/dist/{es2020 → esm}/utils/helpers/change-case.helpers.js.map +0 -0
  239. /package/dist/{es2020 → esm}/utils/helpers/deepmerge.helper.js +0 -0
  240. /package/dist/{es2020 → esm}/utils/helpers/deepmerge.helper.js.map +0 -0
  241. /package/dist/{es2020 → esm}/utils/helpers/prisma.helpers.js.map +0 -0
  242. /package/dist/{es2020 → esm}/utils/helpers/query-parser.helpers.js +0 -0
  243. /package/dist/{es2020 → esm}/utils/helpers/query-parser.helpers.js.map +0 -0
  244. /package/dist/{es2020 → esm}/utils/helpers/text.helpers.js +0 -0
  245. /package/dist/{es2020 → esm}/utils/helpers/text.helpers.js.map +0 -0
  246. /package/dist/{es2020 → esm}/utils/validate-dto.js.map +0 -0
  247. /package/dist/{es2020 → esm}/utils/validate-schema.js.map +0 -0
@@ -0,0 +1,250 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAuthenticationJsonSchemaPaths = getAuthenticationJsonSchemaPaths;
4
+ const swagger_router_helpers_1 = require("./swagger.router.helpers");
5
+ const server_1 = require("../../../../server");
6
+ function getAuthenticationJsonSchemaPaths() {
7
+ const mode = (0, server_1.getArkosConfig)().swagger?.mode;
8
+ const paths = {};
9
+ if (!mode)
10
+ return paths;
11
+ paths["/api/auth/login"] = {
12
+ post: {
13
+ tags: ["Authentication"],
14
+ summary: "Login to the system",
15
+ description: "Authenticates a user and returns an access token",
16
+ operationId: "login",
17
+ requestBody: {
18
+ description: "User credentials",
19
+ required: true,
20
+ content: {
21
+ "application/json": {
22
+ schema: {
23
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("Login", mode),
24
+ },
25
+ },
26
+ },
27
+ },
28
+ responses: {
29
+ "200": {
30
+ description: "Login successful",
31
+ content: {
32
+ "application/json": {
33
+ schema: {
34
+ type: "object",
35
+ properties: {
36
+ accessToken: {
37
+ type: "string",
38
+ description: "JWT access token",
39
+ },
40
+ },
41
+ },
42
+ },
43
+ },
44
+ },
45
+ "400": {
46
+ description: "Invalid input data",
47
+ },
48
+ "401": {
49
+ description: "Invalid credentials",
50
+ },
51
+ },
52
+ },
53
+ };
54
+ paths["/api/auth/logout"] = {
55
+ delete: {
56
+ tags: ["Authentication"],
57
+ summary: "Logout from the system",
58
+ description: "Invalidates the current user's JWT token",
59
+ operationId: "logout",
60
+ security: [{ BearerAuth: [] }],
61
+ responses: {
62
+ "204": {
63
+ description: "Logout successful",
64
+ },
65
+ "401": {
66
+ description: "Authentication required",
67
+ },
68
+ },
69
+ },
70
+ };
71
+ paths["/api/auth/signup"] = {
72
+ post: {
73
+ tags: ["Authentication"],
74
+ summary: "Register a new user",
75
+ description: "Creates a new user account",
76
+ operationId: "signup",
77
+ requestBody: {
78
+ description: "User registration data",
79
+ required: true,
80
+ content: {
81
+ "application/json": {
82
+ schema: {
83
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("Signup", mode),
84
+ },
85
+ },
86
+ },
87
+ },
88
+ responses: {
89
+ "201": {
90
+ description: "User created successfully",
91
+ content: {
92
+ "application/json": {
93
+ schema: {
94
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("User", mode),
95
+ },
96
+ },
97
+ },
98
+ },
99
+ "400": {
100
+ description: "Invalid input data",
101
+ },
102
+ "409": {
103
+ description: "User already exists",
104
+ },
105
+ },
106
+ },
107
+ };
108
+ paths["/api/auth/update-password"] = {
109
+ post: {
110
+ tags: ["Authentication"],
111
+ summary: "Update user password",
112
+ description: "Changes the password for the authenticated user",
113
+ operationId: "updatePassword",
114
+ security: [{ BearerAuth: [] }],
115
+ requestBody: {
116
+ description: "Current and new password",
117
+ required: true,
118
+ content: {
119
+ "application/json": {
120
+ schema: {
121
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("UpdatePassword", mode),
122
+ },
123
+ },
124
+ },
125
+ },
126
+ responses: {
127
+ "200": {
128
+ description: "Password updated successfully",
129
+ content: {
130
+ "application/json": {
131
+ schema: {
132
+ type: "object",
133
+ properties: {
134
+ status: {
135
+ type: "string",
136
+ example: "success",
137
+ },
138
+ message: {
139
+ type: "string",
140
+ example: "Password updated successfully!",
141
+ },
142
+ },
143
+ },
144
+ },
145
+ },
146
+ },
147
+ "400": {
148
+ description: "Invalid input data or current password incorrect",
149
+ },
150
+ "401": {
151
+ description: "Authentication required",
152
+ },
153
+ },
154
+ },
155
+ };
156
+ paths["/users/me"] = {
157
+ get: {
158
+ tags: ["Users"],
159
+ summary: "Get current user information",
160
+ description: "Retrieves information about the currently authenticated user",
161
+ operationId: "getCurrentUser",
162
+ security: [{ BearerAuth: [] }],
163
+ responses: {
164
+ "200": {
165
+ description: "User information retrieved successfully",
166
+ content: {
167
+ "application/json": {
168
+ schema: {
169
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("FindMe", mode),
170
+ },
171
+ },
172
+ },
173
+ },
174
+ "401": {
175
+ description: "Authentication required",
176
+ },
177
+ },
178
+ },
179
+ };
180
+ paths["/users/me"] = {
181
+ patch: {
182
+ tags: ["Users"],
183
+ summary: "Update current user information",
184
+ description: "Updates information for the currently authenticated user",
185
+ operationId: "updateCurrentUser",
186
+ security: [{ BearerAuth: [] }],
187
+ requestBody: {
188
+ description: "User data to update",
189
+ required: true,
190
+ content: {
191
+ "application/json": {
192
+ schema: {
193
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("UpdateMe", mode),
194
+ },
195
+ },
196
+ },
197
+ },
198
+ responses: {
199
+ "200": {
200
+ description: "User updated successfully",
201
+ content: {
202
+ "application/json": {
203
+ schema: {
204
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("User", mode),
205
+ },
206
+ },
207
+ },
208
+ },
209
+ "400": {
210
+ description: "Invalid input data",
211
+ },
212
+ "401": {
213
+ description: "Authentication required",
214
+ },
215
+ },
216
+ },
217
+ };
218
+ paths["/users/me"] = {
219
+ delete: {
220
+ tags: ["Users"],
221
+ summary: "Delete current user account",
222
+ description: "Marks the current user's account as deleted",
223
+ operationId: "deleteCurrentUser",
224
+ security: [{ BearerAuth: [] }],
225
+ responses: {
226
+ "200": {
227
+ description: "Account deleted successfully",
228
+ content: {
229
+ "application/json": {
230
+ schema: {
231
+ type: "object",
232
+ properties: {
233
+ message: {
234
+ type: "string",
235
+ example: "Account deleted successfully",
236
+ },
237
+ },
238
+ },
239
+ },
240
+ },
241
+ },
242
+ "401": {
243
+ description: "Authentication required",
244
+ },
245
+ },
246
+ },
247
+ };
248
+ return paths;
249
+ }
250
+ //# sourceMappingURL=get-authentication-json-schema-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-authentication-json-schema-paths.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-authentication-json-schema-paths.ts"],"names":[],"mappings":"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","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\nimport { getSchemaRef } from \"./swagger.router.helpers\";\nimport { getArkosConfig } from \"../../../../server\";\n\nexport function getAuthenticationJsonSchemaPaths() {\n const mode = getArkosConfig().swagger?.mode;\n const paths: OpenAPIV3.PathsObject = {};\n\n if (!mode) return paths;\n // Add login endpoint\n paths[\"/api/auth/login\"] = {\n post: {\n tags: [\"Authentication\"],\n summary: \"Login to the system\",\n description: \"Authenticates a user and returns an access token\",\n operationId: \"login\",\n requestBody: {\n description: \"User credentials\",\n required: true,\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"Login\", mode),\n },\n },\n },\n },\n responses: {\n \"200\": {\n description: \"Login successful\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n accessToken: {\n type: \"string\",\n description: \"JWT access token\",\n },\n },\n },\n },\n },\n },\n \"400\": {\n description: \"Invalid input data\",\n },\n \"401\": {\n description: \"Invalid credentials\",\n },\n },\n },\n };\n\n // Add logout endpoint\n paths[\"/api/auth/logout\"] = {\n delete: {\n tags: [\"Authentication\"],\n summary: \"Logout from the system\",\n description: \"Invalidates the current user's JWT token\",\n operationId: \"logout\",\n security: [{ BearerAuth: [] }],\n responses: {\n \"204\": {\n description: \"Logout successful\",\n },\n \"401\": {\n description: \"Authentication required\",\n },\n },\n },\n };\n\n // Add signup endpoint\n paths[\"/api/auth/signup\"] = {\n post: {\n tags: [\"Authentication\"],\n summary: \"Register a new user\",\n description: \"Creates a new user account\",\n operationId: \"signup\",\n requestBody: {\n description: \"User registration data\",\n required: true,\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"Signup\", mode),\n },\n },\n },\n },\n responses: {\n \"201\": {\n description: \"User created successfully\",\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"User\", mode),\n },\n },\n },\n },\n \"400\": {\n description: \"Invalid input data\",\n },\n \"409\": {\n description: \"User already exists\",\n },\n },\n },\n };\n\n // Add update password endpoint\n paths[\"/api/auth/update-password\"] = {\n post: {\n tags: [\"Authentication\"],\n summary: \"Update user password\",\n description: \"Changes the password for the authenticated user\",\n operationId: \"updatePassword\",\n security: [{ BearerAuth: [] }],\n requestBody: {\n description: \"Current and new password\",\n required: true,\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"UpdatePassword\", mode),\n },\n },\n },\n },\n responses: {\n \"200\": {\n description: \"Password updated successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n status: {\n type: \"string\",\n example: \"success\",\n },\n message: {\n type: \"string\",\n example: \"Password updated successfully!\",\n },\n },\n },\n },\n },\n },\n \"400\": {\n description: \"Invalid input data or current password incorrect\",\n },\n \"401\": {\n description: \"Authentication required\",\n },\n },\n },\n };\n\n // Add get current user endpoint\n paths[\"/users/me\"] = {\n get: {\n tags: [\"Users\"],\n summary: \"Get current user information\",\n description:\n \"Retrieves information about the currently authenticated user\",\n operationId: \"getCurrentUser\",\n security: [{ BearerAuth: [] }],\n responses: {\n \"200\": {\n description: \"User information retrieved successfully\",\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"FindMe\", mode),\n },\n },\n },\n },\n \"401\": {\n description: \"Authentication required\",\n },\n },\n },\n };\n\n // Add update current user endpoint\n paths[\"/users/me\"] = {\n patch: {\n tags: [\"Users\"],\n summary: \"Update current user information\",\n description: \"Updates information for the currently authenticated user\",\n operationId: \"updateCurrentUser\",\n security: [{ BearerAuth: [] }],\n requestBody: {\n description: \"User data to update\",\n required: true,\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"UpdateMe\", mode),\n },\n },\n },\n },\n responses: {\n \"200\": {\n description: \"User updated successfully\",\n content: {\n \"application/json\": {\n schema: {\n $ref: getSchemaRef(\"User\", mode),\n },\n },\n },\n },\n \"400\": {\n description: \"Invalid input data\",\n },\n \"401\": {\n description: \"Authentication required\",\n },\n },\n },\n };\n\n // Add delete current user endpoint\n paths[\"/users/me\"] = {\n delete: {\n tags: [\"Users\"],\n summary: \"Delete current user account\",\n description: \"Marks the current user's account as deleted\",\n operationId: \"deleteCurrentUser\",\n security: [{ BearerAuth: [] }],\n responses: {\n \"200\": {\n description: \"Account deleted successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n message: {\n type: \"string\",\n example: \"Account deleted successfully\",\n },\n },\n },\n },\n },\n },\n \"401\": {\n description: \"Authentication required\",\n },\n },\n },\n };\n\n return paths;\n}\n"]}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSystemJsonSchemaPaths = getSystemJsonSchemaPaths;
4
+ function getSystemJsonSchemaPaths() {
5
+ const paths = {};
6
+ paths["/api/available-resources"] = {
7
+ get: {
8
+ tags: ["System"],
9
+ summary: "Get available resources",
10
+ description: "Returns a comprehensive list of all available API resource endpoints",
11
+ operationId: "getAvailableResources",
12
+ responses: {
13
+ "200": {
14
+ description: "List of available resources retrieved successfully",
15
+ content: {
16
+ "application/json": {
17
+ schema: {
18
+ type: "object",
19
+ properties: {
20
+ data: {
21
+ type: "array",
22
+ items: {
23
+ type: "string",
24
+ },
25
+ description: "Array of available resource endpoints",
26
+ },
27
+ },
28
+ },
29
+ },
30
+ },
31
+ },
32
+ },
33
+ },
34
+ };
35
+ paths["/api/available-routes"] = {
36
+ get: {
37
+ tags: ["System"],
38
+ summary: "Get available routes",
39
+ description: "Returns a comprehensive list of all registered API routes and their methods",
40
+ operationId: "getAvailableRoutes",
41
+ responses: {
42
+ "200": {
43
+ description: "List of available routes retrieved successfully",
44
+ content: {
45
+ "application/json": {
46
+ schema: {
47
+ type: "object",
48
+ properties: {
49
+ routes: {
50
+ type: "array",
51
+ items: {
52
+ type: "string",
53
+ },
54
+ description: "Array of available API routes",
55
+ },
56
+ },
57
+ },
58
+ },
59
+ },
60
+ },
61
+ },
62
+ },
63
+ };
64
+ return paths;
65
+ }
66
+ //# sourceMappingURL=get-system-json-schema-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-system-json-schema-paths.js","sourceRoot":"","sources":["../../../../../../src/modules/swagger/utils/helpers/get-system-json-schema-paths.ts"],"names":[],"mappings":";;AAEA,4DAkEC;AAlED,SAAgB,wBAAwB;IACtC,MAAM,KAAK,GAA0B,EAAE,CAAC;IAExC,KAAK,CAAC,0BAA0B,CAAC,GAAG;QAClC,GAAG,EAAE;YACH,IAAI,EAAE,CAAC,QAAQ,CAAC;YAChB,OAAO,EAAE,yBAAyB;YAClC,WAAW,EACT,sEAAsE;YACxE,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,WAAW,EAAE,oDAAoD;oBACjE,OAAO,EAAE;wBACP,kBAAkB,EAAE;4BAClB,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,IAAI,EAAE;wCACJ,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;yCACf;wCACD,WAAW,EAAE,uCAAuC;qCACrD;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;IAEF,KAAK,CAAC,uBAAuB,CAAC,GAAG;QAC/B,GAAG,EAAE;YACH,IAAI,EAAE,CAAC,QAAQ,CAAC;YAChB,OAAO,EAAE,sBAAsB;YAC/B,WAAW,EACT,6EAA6E;YAC/E,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE;gBACT,KAAK,EAAE;oBACL,WAAW,EAAE,iDAAiD;oBAC9D,OAAO,EAAE;wBACP,kBAAkB,EAAE;4BAClB,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,MAAM,EAAE;wCACN,IAAI,EAAE,OAAO;wCACb,KAAK,EAAE;4CACL,IAAI,EAAE,QAAQ;yCACf;wCACD,WAAW,EAAE,+BAA+B;qCAC7C;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import { OpenAPIV3 } from \"openapi-types\";\n\nexport function getSystemJsonSchemaPaths() {\n const paths: OpenAPIV3.PathsObject = {};\n\n paths[\"/api/available-resources\"] = {\n get: {\n tags: [\"System\"],\n summary: \"Get available resources\",\n description:\n \"Returns a comprehensive list of all available API resource endpoints\",\n operationId: \"getAvailableResources\",\n responses: {\n \"200\": {\n description: \"List of available resources retrieved successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n data: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"Array of available resource endpoints\",\n },\n },\n },\n },\n },\n },\n },\n },\n };\n\n paths[\"/api/available-routes\"] = {\n get: {\n tags: [\"System\"],\n summary: \"Get available routes\",\n description:\n \"Returns a comprehensive list of all registered API routes and their methods\",\n operationId: \"getAvailableRoutes\",\n responses: {\n \"200\": {\n description: \"List of available routes retrieved successfully\",\n content: {\n \"application/json\": {\n schema: {\n type: \"object\",\n properties: {\n routes: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n description: \"Array of available API routes\",\n },\n },\n },\n },\n },\n },\n },\n },\n };\n\n return paths;\n}\n"]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateClassValidatorJsonSchemas = generateClassValidatorJsonSchemas;
4
+ const class_validator_jsonschema_1 = require("class-validator-jsonschema");
5
+ const global_helpers_1 = require("../../../../../utils/helpers/global.helpers");
6
+ const class_validator_1 = require("class-validator");
7
+ const models_helpers_1 = require("../../../../../utils/helpers/models.helpers");
8
+ const swagger_router_helpers_1 = require("../swagger.router.helpers");
9
+ async function generateClassValidatorJsonSchemas() {
10
+ const models = (0, models_helpers_1.getModels)();
11
+ const schemas = {};
12
+ const { defaultMetadataStorage } = await (0, global_helpers_1.importModule)("class-transformer/cjs/storage.js");
13
+ const jsonSchema = (0, class_validator_jsonschema_1.validationMetadatasToSchemas)({
14
+ classValidatorMetadataStorage: (0, class_validator_1.getMetadataStorage)(),
15
+ classTransformerMetadataStorage: defaultMetadataStorage,
16
+ refPointerPrefix: "#/components/schemas/",
17
+ });
18
+ Object.entries(jsonSchema).forEach(([className, schema]) => {
19
+ schemas[className] = schema;
20
+ });
21
+ models.forEach((modelName) => {
22
+ const modelModules = (0, models_helpers_1.getModelModules)(modelName);
23
+ if (modelModules?.dtos) {
24
+ Object.entries(modelModules.dtos).forEach(([dtoType, dtoClass]) => {
25
+ if (dtoClass) {
26
+ try {
27
+ const schemaName = (0, swagger_router_helpers_1.getCorrectJsonSchemaName)(dtoType, modelName, "Dto");
28
+ schemas[schemaName] = jsonSchema[dtoClass.name] || {};
29
+ if (schemas[dtoClass.name])
30
+ delete schemas[dtoClass.name];
31
+ }
32
+ catch (error) {
33
+ console.warn(`Failed to generate schema for ${dtoType} ${modelName}:`, error);
34
+ }
35
+ }
36
+ });
37
+ }
38
+ });
39
+ return schemas;
40
+ }
41
+ //# sourceMappingURL=generate-class-validator-json-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-class-validator-json-schemas.js","sourceRoot":"","sources":["../../../../../../../src/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.ts"],"names":[],"mappings":";;AASA,8EA4CC;AArDD,2EAA0E;AAC1E,gFAA2E;AAC3E,qDAAqD;AACrD,gFAGqD;AACrD,sEAAqE;AAE9D,KAAK,UAAU,iCAAiC;IACrD,MAAM,MAAM,GAAG,IAAA,0BAAS,GAAE,CAAC;IAC3B,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,IAAA,6BAAY,EACnD,kCAAkC,CACnC,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,yDAA4B,EAAC;QAC9C,6BAA6B,EAAE,IAAA,oCAAkB,GAAE;QACnD,+BAA+B,EAAE,sBAAsB;QACvD,gBAAgB,EAAE,uBAAuB;KAC1C,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;QACzD,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC3B,MAAM,YAAY,GAAG,IAAA,gCAAe,EAAC,SAAS,CAAC,CAAC;QAEhD,IAAI,YAAY,EAAE,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE;gBAChE,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,IAAA,iDAAwB,EACzC,OAAO,EACP,SAAS,EACT,KAAK,CACN,CAAC;wBACF,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBACtD,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;4BAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC5D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CACV,iCAAiC,OAAO,IAAI,SAAS,GAAG,EACxD,KAAK,CACN,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import { validationMetadatasToSchemas } from \"class-validator-jsonschema\";\nimport { importModule } from \"../../../../../utils/helpers/global.helpers\";\nimport { getMetadataStorage } from \"class-validator\";\nimport {\n getModelModules,\n getModels,\n} from \"../../../../../utils/helpers/models.helpers\";\nimport { getCorrectJsonSchemaName } from \"../swagger.router.helpers\";\n\nexport async function generateClassValidatorJsonSchemas() {\n const models = getModels();\n const schemas: Record<string, any> = {};\n\n const { defaultMetadataStorage } = await importModule(\n \"class-transformer/cjs/storage.js\"\n );\n\n const jsonSchema = validationMetadatasToSchemas({\n classValidatorMetadataStorage: getMetadataStorage(),\n classTransformerMetadataStorage: defaultMetadataStorage,\n refPointerPrefix: \"#/components/schemas/\",\n });\n\n Object.entries(jsonSchema).forEach(([className, schema]) => {\n schemas[className] = schema;\n });\n\n models.forEach((modelName) => {\n const modelModules = getModelModules(modelName);\n\n if (modelModules?.dtos) {\n Object.entries(modelModules.dtos).forEach(([dtoType, dtoClass]) => {\n if (dtoClass) {\n try {\n const schemaName = getCorrectJsonSchemaName(\n dtoType,\n modelName,\n \"Dto\"\n );\n schemas[schemaName] = jsonSchema[dtoClass.name] || {};\n if (schemas[dtoClass.name]) delete schemas[dtoClass.name];\n } catch (error) {\n console.warn(\n `Failed to generate schema for ${dtoType} ${modelName}:`,\n error\n );\n }\n }\n });\n }\n });\n\n return schemas;\n}\n"]}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generatePrismaJsonSchemas = generatePrismaJsonSchemas;
4
+ const utils_1 = require("../../../../../exports/utils");
5
+ const models_helpers_1 = require("../../../../../utils/helpers/models.helpers");
6
+ async function generatePrismaJsonSchemas() {
7
+ const schemas = {};
8
+ const prismaContent = (0, models_helpers_1.getPrismaSchemasContent)();
9
+ const models = (0, models_helpers_1.getModels)();
10
+ models.forEach((modelName) => {
11
+ const pascalModelName = (0, utils_1.pascalCase)(modelName);
12
+ schemas[`Create${pascalModelName}Schema`] = {
13
+ type: "object",
14
+ properties: {},
15
+ };
16
+ schemas[`Update${pascalModelName}Schema`] = {
17
+ type: "object",
18
+ properties: {},
19
+ };
20
+ });
21
+ }
22
+ //# sourceMappingURL=generate-prisma-json-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-prisma-json-schemas.js","sourceRoot":"","sources":["../../../../../../../src/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.ts"],"names":[],"mappings":";;AAMA,8DAsBC;AA5BD,wDAA0D;AAC1D,gFAGqD;AAE9C,KAAK,UAAU,yBAAyB;IAC7C,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,aAAa,GAAG,IAAA,wCAAuB,GAAE,CAAC;IAChD,MAAM,MAAM,GAAG,IAAA,0BAAS,GAAE,CAAC;IAE3B,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC3B,MAAM,eAAe,GAAG,IAAA,kBAAU,EAAC,SAAS,CAAC,CAAC;QAE9C,OAAO,CAAC,SAAS,eAAe,QAAQ,CAAC,GAAG;YAC1C,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAEX;SACF,CAAC;QAEF,OAAO,CAAC,SAAS,eAAe,QAAQ,CAAC,GAAG;YAC1C,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAEX;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { pascalCase } from \"../../../../../exports/utils\";\nimport {\n getModels,\n getPrismaSchemasContent,\n} from \"../../../../../utils/helpers/models.helpers\";\n\nexport async function generatePrismaJsonSchemas() {\n const schemas: Record<string, any> = {};\n const prismaContent = getPrismaSchemasContent();\n const models = getModels();\n\n models.forEach((modelName) => {\n const pascalModelName = pascalCase(modelName);\n\n schemas[`Create${pascalModelName}Schema`] = {\n type: \"object\",\n properties: {\n // Omit auto-generated fields like id, createdAt, updatedAt\n },\n };\n\n schemas[`Update${pascalModelName}Schema`] = {\n type: \"object\",\n properties: {\n // Make all fields optional for updates\n },\n };\n });\n}\n"]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateZodJsonSchemas = generateZodJsonSchemas;
7
+ const models_helpers_1 = require("../../../../../utils/helpers/models.helpers");
8
+ const zod_to_json_schema_1 = __importDefault(require("zod-to-json-schema"));
9
+ const swagger_router_helpers_1 = require("../swagger.router.helpers");
10
+ async function generateZodJsonSchemas() {
11
+ const models = [...(0, models_helpers_1.getModels)(), "file-upload", "auth"];
12
+ const schemas = {};
13
+ models.forEach((modelName) => {
14
+ const modelModules = (0, models_helpers_1.getModelModules)(modelName);
15
+ if (modelModules?.schemas)
16
+ Object.entries(modelModules.schemas).forEach(([schemaType, zodSchema]) => {
17
+ if (zodSchema)
18
+ try {
19
+ const jsonSchema = (0, zod_to_json_schema_1.default)(zodSchema);
20
+ const schemaName = (0, swagger_router_helpers_1.getCorrectJsonSchemaName)(schemaType, modelName, "Schema");
21
+ schemas[schemaName] = jsonSchema;
22
+ }
23
+ catch (error) {
24
+ console.warn(`Failed to generate schema for ${schemaType} ${modelName}:`, error);
25
+ }
26
+ });
27
+ });
28
+ return schemas;
29
+ }
30
+ //# sourceMappingURL=generate-zod-json-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-zod-json-schema.js","sourceRoot":"","sources":["../../../../../../../src/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schema.ts"],"names":[],"mappings":";;;;;AAOA,wDA8BC;AArCD,gFAGqD;AACrD,4EAAiD;AACjD,sEAAqE;AAE9D,KAAK,UAAU,sBAAsB;IAC1C,MAAM,MAAM,GAAG,CAAC,GAAG,IAAA,0BAAS,GAAE,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC3B,MAAM,YAAY,GAAG,IAAA,gCAAe,EAAC,SAAS,CAAC,CAAC;QAEhD,IAAI,YAAY,EAAE,OAAO;YACvB,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAC1C,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE;gBAC1B,IAAI,SAAS;oBACX,IAAI,CAAC;wBACH,MAAM,UAAU,GAAG,IAAA,4BAAe,EAAC,SAAS,CAAC,CAAC;wBAC9C,MAAM,UAAU,GAAG,IAAA,iDAAwB,EACzC,UAAU,EACV,SAAS,EACT,QAAQ,CACT,CAAC;wBACF,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;oBACnC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,IAAI,CACV,iCAAiC,UAAU,IAAI,SAAS,GAAG,EAC3D,KAAK,CACN,CAAC;oBACJ,CAAC;YACL,CAAC,CACF,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import {\n getModelModules,\n getModels,\n} from \"../../../../../utils/helpers/models.helpers\";\nimport zodToJsonSchema from \"zod-to-json-schema\";\nimport { getCorrectJsonSchemaName } from \"../swagger.router.helpers\";\n\nexport async function generateZodJsonSchemas() {\n const models = [...getModels(), \"file-upload\", \"auth\"];\n const schemas: Record<string, any> = {};\n\n models.forEach((modelName) => {\n const modelModules = getModelModules(modelName);\n\n if (modelModules?.schemas)\n Object.entries(modelModules.schemas).forEach(\n ([schemaType, zodSchema]) => {\n if (zodSchema)\n try {\n const jsonSchema = zodToJsonSchema(zodSchema);\n const schemaName = getCorrectJsonSchemaName(\n schemaType,\n modelName,\n \"Schema\"\n );\n schemas[schemaName] = jsonSchema;\n } catch (error) {\n console.warn(\n `Failed to generate schema for ${schemaType} ${modelName}:`,\n error\n );\n }\n }\n );\n });\n\n return schemas;\n}\n"]}