arkos 1.3.1-beta → 1.3.2-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 (256) hide show
  1. package/dist/cjs/app.js +139 -1
  2. package/dist/cjs/exports/auth/index.js +6 -1
  3. package/dist/cjs/exports/controllers/index.js +11 -1
  4. package/dist/cjs/exports/error-handler/index.js +11 -1
  5. package/dist/cjs/exports/index.js +12 -1
  6. package/dist/cjs/exports/middlewares/index.js +7 -1
  7. package/dist/cjs/exports/prisma/index.js +13 -1
  8. package/dist/cjs/exports/services/index.js +48 -1
  9. package/dist/cjs/exports/utils/index.js +44 -1
  10. package/dist/cjs/exports/validation/index.js +11 -1
  11. package/dist/cjs/modules/auth/auth.controller.js +229 -1
  12. package/dist/cjs/modules/auth/auth.controller.js.map +1 -1
  13. package/dist/cjs/modules/auth/auth.router.js +82 -1
  14. package/dist/cjs/modules/auth/auth.router.js.map +1 -1
  15. package/dist/cjs/modules/auth/auth.service.js +226 -1
  16. package/dist/cjs/modules/auth/utils/auth-error-objects.js +10 -1
  17. package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js +83 -1
  18. package/dist/cjs/modules/auth/utils/services/auth-action.service.js +92 -1
  19. package/dist/cjs/modules/auth/utils/services/auth-action.service.js.map +1 -1
  20. package/dist/cjs/modules/base/base.controller.js +172 -1
  21. package/dist/cjs/modules/base/base.middlewares.js +92 -1
  22. package/dist/cjs/modules/base/base.router.js +22 -1
  23. package/dist/cjs/modules/base/base.service.js +507 -1
  24. package/dist/cjs/modules/base/base.service.js.map +1 -1
  25. package/dist/cjs/modules/base/types/base.service.types.js +3 -1
  26. package/dist/cjs/modules/base/types/base.service.types.js.map +1 -1
  27. package/dist/cjs/modules/base/utils/helpers/base.controller.helpers.js +80 -1
  28. package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js +50 -1
  29. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +104 -1
  30. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +208 -1
  31. package/dist/cjs/modules/base/utils/router-validator.js +16 -1
  32. package/dist/cjs/modules/base/utils/service-hooks-manager.js +19 -1
  33. package/dist/cjs/modules/email/email.service.js +104 -1
  34. package/dist/cjs/modules/error-handler/error-handler.controller.js +146 -4
  35. package/dist/cjs/modules/error-handler/utils/app-error.js +17 -1
  36. package/dist/cjs/modules/error-handler/utils/catch-async.js +21 -1
  37. package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js +205 -3
  38. package/dist/cjs/modules/file-upload/file-upload.controller.js +233 -1
  39. package/dist/cjs/modules/file-upload/file-upload.router.js +60 -1
  40. package/dist/cjs/modules/file-upload/file-upload.service.js +322 -1
  41. package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js +97 -1
  42. package/dist/cjs/modules/swagger/swagger.router.js +38 -1
  43. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +338 -1
  44. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +64 -1
  45. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +37 -1
  46. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +48 -1
  47. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +32 -1
  48. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +49 -1
  49. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +34 -1
  50. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +471 -1
  51. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +572 -1
  52. package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js +260 -1
  53. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +112 -1
  54. package/dist/cjs/paths.js +9 -1
  55. package/dist/cjs/server.js +94 -5
  56. package/dist/cjs/types/arkos-config.js +3 -1
  57. package/dist/cjs/types/arkos-config.js.map +1 -1
  58. package/dist/cjs/types/auth.js +3 -1
  59. package/dist/cjs/types/index.js +11 -1
  60. package/dist/cjs/types/router-config.js +3 -1
  61. package/dist/cjs/utils/arkos-env.js +9 -1
  62. package/dist/cjs/utils/cli/build.js +214 -5
  63. package/dist/cjs/utils/cli/dev.js +154 -3
  64. package/dist/cjs/utils/cli/generate.js +109 -1
  65. package/dist/cjs/utils/cli/index.js +104 -1
  66. package/dist/cjs/utils/cli/index.js.map +1 -1
  67. package/dist/cjs/utils/cli/prisma-generate.js +120 -0
  68. package/dist/cjs/utils/cli/prisma-generate.js.map +1 -0
  69. package/dist/cjs/utils/cli/start.js +103 -1
  70. package/dist/cjs/utils/cli/utils/cli.helpers.js +24 -1
  71. package/dist/cjs/utils/cli/utils/smart-fs-watcher.js +73 -1
  72. package/dist/cjs/utils/cli/utils/template-generator/templates/auth-configs-template.js +36 -0
  73. package/dist/cjs/utils/cli/utils/template-generator/templates/auth-configs-template.js.map +1 -0
  74. package/dist/cjs/utils/cli/utils/template-generator/templates/controller-template.js +21 -0
  75. package/dist/cjs/utils/cli/utils/template-generator/templates/controller-template.js.map +1 -0
  76. package/dist/cjs/utils/cli/utils/template-generator/templates/hooks-template.js +201 -0
  77. package/dist/cjs/utils/cli/utils/template-generator/templates/hooks-template.js.map +1 -0
  78. package/dist/cjs/utils/cli/utils/template-generator/templates/middlewares-template.js +288 -0
  79. package/dist/cjs/utils/cli/utils/template-generator/templates/{generate-middlewares.js.map → middlewares-template.js.map} +1 -1
  80. package/dist/cjs/utils/cli/utils/template-generator/templates/query-options-template.js +64 -0
  81. package/dist/cjs/utils/cli/utils/template-generator/templates/query-options-template.js.map +1 -0
  82. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js +45 -0
  83. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js.map +1 -0
  84. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js +29 -0
  85. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js.map +1 -0
  86. package/dist/cjs/utils/cli/utils/template-generators.js +34 -2
  87. package/dist/cjs/utils/cli/utils/template-generators.js.map +1 -1
  88. package/dist/cjs/utils/cli/utils/watermark-stamper.js +17 -3
  89. package/dist/cjs/utils/dotenv.helpers.js +43 -1
  90. package/dist/cjs/utils/dynamic-loader.js +270 -9
  91. package/dist/cjs/utils/features/api.features.js +169 -1
  92. package/dist/cjs/utils/features/change-case.features.js +67 -1
  93. package/dist/cjs/utils/features/port-and-host-allocator.js +105 -1
  94. package/dist/cjs/utils/helpers/api.features.helpers.js +112 -1
  95. package/dist/cjs/utils/helpers/change-case.helpers.js +177 -1
  96. package/dist/cjs/utils/helpers/deepmerge.helper.js +115 -1
  97. package/dist/cjs/utils/helpers/dynamic-loader.helpers.js +76 -1
  98. package/dist/cjs/utils/helpers/fs.helpers.js +57 -1
  99. package/dist/cjs/utils/helpers/global.helpers.js +94 -1
  100. package/dist/cjs/utils/helpers/prisma.helpers.js +40 -1
  101. package/dist/cjs/utils/helpers/query-parser.helpers.js +45 -1
  102. package/dist/cjs/utils/helpers/routers.helpers.js +37 -1
  103. package/dist/cjs/utils/helpers/text.helpers.js +28 -1
  104. package/dist/cjs/utils/prisma/prisma-json-schema-generator.js +455 -1
  105. package/dist/cjs/utils/prisma/prisma-schema-parser.js +216 -4
  106. package/dist/cjs/utils/prisma/types.js +3 -1
  107. package/dist/cjs/utils/sheu.js +120 -1
  108. package/dist/cjs/utils/validate-dto.js +17 -1
  109. package/dist/cjs/utils/validate-schema.js +15 -1
  110. package/dist/esm/app.js +132 -1
  111. package/dist/esm/exports/auth/index.js +2 -1
  112. package/dist/esm/exports/controllers/index.js +4 -1
  113. package/dist/esm/exports/error-handler/index.js +4 -1
  114. package/dist/esm/exports/index.js +8 -1
  115. package/dist/esm/exports/middlewares/index.js +2 -1
  116. package/dist/esm/exports/prisma/index.js +6 -1
  117. package/dist/esm/exports/services/index.js +9 -1
  118. package/dist/esm/exports/utils/index.js +4 -1
  119. package/dist/esm/exports/validation/index.js +4 -1
  120. package/dist/esm/modules/auth/auth.controller.js +222 -1
  121. package/dist/esm/modules/auth/auth.controller.js.map +1 -1
  122. package/dist/esm/modules/auth/auth.router.js +76 -1
  123. package/dist/esm/modules/auth/auth.router.js.map +1 -1
  124. package/dist/esm/modules/auth/auth.service.js +219 -1
  125. package/dist/esm/modules/auth/utils/auth-error-objects.js +4 -1
  126. package/dist/esm/modules/auth/utils/helpers/auth.controller.helpers.js +73 -1
  127. package/dist/esm/modules/auth/utils/services/auth-action.service.js +90 -1
  128. package/dist/esm/modules/auth/utils/services/auth-action.service.js.map +1 -1
  129. package/dist/esm/modules/base/base.controller.js +165 -1
  130. package/dist/esm/modules/base/base.middlewares.js +81 -1
  131. package/dist/esm/modules/base/base.router.js +15 -1
  132. package/dist/esm/modules/base/base.service.js +500 -1
  133. package/dist/esm/modules/base/base.service.js.map +1 -1
  134. package/dist/esm/modules/base/types/base.service.types.js +2 -1
  135. package/dist/esm/modules/base/types/base.service.types.js.map +1 -1
  136. package/dist/esm/modules/base/utils/helpers/base.controller.helpers.js +76 -1
  137. package/dist/esm/modules/base/utils/helpers/base.middlewares.helpers.js +44 -1
  138. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js +96 -1
  139. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +198 -1
  140. package/dist/esm/modules/base/utils/router-validator.js +14 -1
  141. package/dist/esm/modules/base/utils/service-hooks-manager.js +17 -1
  142. package/dist/esm/modules/email/email.service.js +97 -1
  143. package/dist/esm/modules/error-handler/error-handler.controller.js +107 -4
  144. package/dist/esm/modules/error-handler/utils/app-error.js +15 -1
  145. package/dist/esm/modules/error-handler/utils/catch-async.js +19 -1
  146. package/dist/esm/modules/error-handler/utils/error-handler.helpers.js +163 -3
  147. package/dist/esm/modules/file-upload/file-upload.controller.js +228 -1
  148. package/dist/esm/modules/file-upload/file-upload.router.js +54 -1
  149. package/dist/esm/modules/file-upload/file-upload.service.js +314 -1
  150. package/dist/esm/modules/file-upload/utils/helpers/file-upload.helpers.js +87 -1
  151. package/dist/esm/modules/swagger/swagger.router.js +32 -1
  152. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +333 -1
  153. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +58 -1
  154. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +34 -1
  155. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +42 -1
  156. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +26 -1
  157. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +46 -1
  158. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +28 -1
  159. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +465 -1
  160. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +566 -1
  161. package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js +255 -1
  162. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +101 -1
  163. package/dist/esm/paths.js +3 -1
  164. package/dist/esm/server.js +85 -5
  165. package/dist/esm/types/arkos-config.js +2 -1
  166. package/dist/esm/types/arkos-config.js.map +1 -1
  167. package/dist/esm/types/auth.js +2 -1
  168. package/dist/esm/types/index.js +8 -1
  169. package/dist/esm/types/router-config.js +2 -1
  170. package/dist/esm/utils/arkos-env.js +7 -1
  171. package/dist/esm/utils/cli/build.js +208 -5
  172. package/dist/esm/utils/cli/dev.js +147 -3
  173. package/dist/esm/utils/cli/generate.js +103 -1
  174. package/dist/esm/utils/cli/index.js +94 -1
  175. package/dist/esm/utils/cli/index.js.map +1 -1
  176. package/dist/esm/utils/cli/prisma-generate.js +114 -0
  177. package/dist/esm/utils/cli/prisma-generate.js.map +1 -0
  178. package/dist/esm/utils/cli/start.js +96 -1
  179. package/dist/esm/utils/cli/utils/cli.helpers.js +16 -1
  180. package/dist/esm/utils/cli/utils/smart-fs-watcher.js +68 -1
  181. package/dist/esm/utils/cli/utils/template-generator/templates/auth-configs-template.js +33 -0
  182. package/dist/esm/utils/cli/utils/template-generator/templates/auth-configs-template.js.map +1 -0
  183. package/dist/esm/utils/cli/utils/template-generator/templates/controller-template.js +18 -0
  184. package/dist/esm/utils/cli/utils/template-generator/templates/controller-template.js.map +1 -0
  185. package/dist/esm/utils/cli/utils/template-generator/templates/hooks-template.js +198 -0
  186. package/dist/esm/utils/cli/utils/template-generator/templates/hooks-template.js.map +1 -0
  187. package/dist/esm/utils/cli/utils/template-generator/templates/middlewares-template.js +285 -0
  188. package/dist/esm/utils/cli/utils/template-generator/templates/{generate-middlewares.js.map → middlewares-template.js.map} +1 -1
  189. package/dist/esm/utils/cli/utils/template-generator/templates/query-options-template.js +61 -0
  190. package/dist/esm/utils/cli/utils/template-generator/templates/query-options-template.js.map +1 -0
  191. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js +39 -0
  192. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js.map +1 -0
  193. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js +26 -0
  194. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js.map +1 -0
  195. package/dist/esm/utils/cli/utils/template-generators.js +28 -2
  196. package/dist/esm/utils/cli/utils/template-generators.js.map +1 -1
  197. package/dist/esm/utils/cli/utils/watermark-stamper.js +15 -3
  198. package/dist/esm/utils/dotenv.helpers.js +37 -1
  199. package/dist/esm/utils/dynamic-loader.js +254 -9
  200. package/dist/esm/utils/features/api.features.js +162 -1
  201. package/dist/esm/utils/features/change-case.features.js +31 -1
  202. package/dist/esm/utils/features/port-and-host-allocator.js +67 -1
  203. package/dist/esm/utils/helpers/api.features.helpers.js +106 -1
  204. package/dist/esm/utils/helpers/change-case.helpers.js +161 -1
  205. package/dist/esm/utils/helpers/deepmerge.helper.js +113 -1
  206. package/dist/esm/utils/helpers/dynamic-loader.helpers.js +69 -1
  207. package/dist/esm/utils/helpers/fs.helpers.js +48 -1
  208. package/dist/esm/utils/helpers/global.helpers.js +51 -1
  209. package/dist/esm/utils/helpers/prisma.helpers.js +32 -1
  210. package/dist/esm/utils/helpers/query-parser.helpers.js +40 -1
  211. package/dist/esm/utils/helpers/routers.helpers.js +29 -1
  212. package/dist/esm/utils/helpers/text.helpers.js +22 -1
  213. package/dist/esm/utils/prisma/prisma-json-schema-generator.js +448 -1
  214. package/dist/esm/utils/prisma/prisma-schema-parser.js +209 -4
  215. package/dist/esm/utils/prisma/types.js +2 -1
  216. package/dist/esm/utils/sheu.js +118 -1
  217. package/dist/esm/utils/validate-dto.js +11 -1
  218. package/dist/esm/utils/validate-schema.js +9 -1
  219. package/dist/types/modules/auth/utils/services/auth-action.service.d.ts +1 -1
  220. package/dist/types/modules/base/types/base.service.types.d.ts +12 -9
  221. package/dist/types/types/arkos-config.d.ts +3 -2
  222. package/dist/types/utils/cli/prisma-generate.d.ts +1 -0
  223. package/package.json +2 -2
  224. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +0 -21
  225. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js.map +0 -1
  226. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -12
  227. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
  228. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js +0 -144
  229. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +0 -1
  230. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-middlewares.js +0 -256
  231. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +0 -36
  232. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +0 -1
  233. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js +0 -18
  234. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js.map +0 -1
  235. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js +0 -9
  236. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js.map +0 -1
  237. package/dist/esm/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +0 -21
  238. package/dist/esm/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js.map +0 -1
  239. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -12
  240. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
  241. package/dist/esm/utils/cli/utils/template-generator/templates/generate-hooks-template.js +0 -144
  242. package/dist/esm/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +0 -1
  243. package/dist/esm/utils/cli/utils/template-generator/templates/generate-middlewares.js +0 -256
  244. package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +0 -36
  245. package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +0 -1
  246. package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js +0 -18
  247. package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js.map +0 -1
  248. package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js +0 -9
  249. package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js.map +0 -1
  250. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-auth-configs-template.d.ts → auth-configs-template.d.ts} +0 -0
  251. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-controller-template.d.ts → controller-template.d.ts} +0 -0
  252. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-hooks-template.d.ts → hooks-template.d.ts} +0 -0
  253. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-middlewares.d.ts → middlewares-template.d.ts} +0 -0
  254. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-prisma-query-options.d.ts → query-options-template.d.ts} +0 -0
  255. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-router-template.d.ts → router-template.d.ts} +0 -0
  256. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-service-template.d.ts → service-template.d.ts} +0 -0
@@ -1 +1,338 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getSchemaMode=void 0,exports.default=getAuthenticationJsonSchemaPaths;const swagger_router_helpers_1=require("./swagger.router.helpers"),dynamic_loader_1=require("../../../../utils/dynamic-loader"),base_router_helpers_1=require("../../../base/utils/helpers/base.router.helpers"),getSchemaMode=async(s,e)=>{const r=e.swagger?.mode,a=e.swagger?.strict;if(!r)return"prisma";if(a)return r;const i=s;return await(0,swagger_router_helpers_1.localValidatorFileExists)(i,"user",e)?r:"prisma"};exports.getSchemaMode=getSchemaMode;async function getAuthenticationJsonSchemaPaths(s){const e={};if(!s.swagger?.mode)return e;const a=(0,dynamic_loader_1.getModuleComponents)("auth")?.router?.config;if(a?.disable===!0)return e;const i=t=>(0,base_router_helpers_1.isEndpointDisabled)(a,t);if(!i("login")){const t=await(0,exports.getSchemaMode)("login",s);e["/api/auth/login"]={post:{tags:["Authentication"],summary:"Login to the system",description:"Authenticates a user and returns an access token",operationId:"login",requestBody:{description:"User credentials",required:!0,content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("Login",t)}}}},responses:{200:{description:"Login successful",content:{"application/json":{schema:{type:"object",properties:{accessToken:{type:"string",description:"JWT access token"}}}}}},400:{description:"Invalid input data"},401:{description:"Invalid credentials"}}}}}if(i("logout")||(e["/api/auth/logout"]={delete:{tags:["Authentication"],summary:"Logout from the system",description:"Invalidates the current user's JWT token",operationId:"logout",security:[{BearerAuth:[]}],responses:{204:{description:"Logout successful"},401:{description:"Authentication required"}}}}),!i("signup")){const t=await(0,exports.getSchemaMode)("signup",s),n=await(0,exports.getSchemaMode)("user",s);e["/api/auth/signup"]={post:{tags:["Authentication"],summary:"Register a new user",description:"Creates a new user account",operationId:"signup",requestBody:{description:"User registration data",required:!0,content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("Signup",t)}}}},responses:{201:{description:"User created successfully",content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("User",n)}}}},400:{description:"Invalid input data"},409:{description:"User already exists"}}}}}if(!i("updatePassword")){const t=await(0,exports.getSchemaMode)("updatePassword",s);e["/api/auth/update-password"]={post:{tags:["Authentication"],summary:"Update user password",description:"Changes the password for the authenticated user",operationId:"updatePassword",security:[{BearerAuth:[]}],requestBody:{description:"Current and new password",required:!0,content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("UpdatePassword",t)}}}},responses:{200:{description:"Password updated successfully",content:{"application/json":{schema:{type:"object",properties:{status:{type:"string",example:"success"},message:{type:"string",example:"Password updated successfully!"}}}}}},400:{description:"Invalid input data or current password incorrect"},401:{description:"Authentication required"}}}}}if(!i("getMe")){const t=await(0,exports.getSchemaMode)("getMe",s);e["/api/users/me"]={get:{tags:["Authentication"],summary:"Get current user information",description:"Retrieves information about the currently authenticated user",operationId:"getMe",security:[{BearerAuth:[]}],responses:{200:{description:"User information retrieved successfully",content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("GetMe",t)}}}},401:{description:"Authentication required"}}}}}if(!i("updateMe")){const t=await(0,exports.getSchemaMode)("updateMe",s),n=await(0,exports.getSchemaMode)("user",s);e["/api/users/me"]||(e["/api/users/me"]={}),e["/api/users/me"].patch={tags:["Authentication"],summary:"Update current user information",description:"Updates information for the currently authenticated user",operationId:"updateMe",security:[{BearerAuth:[]}],requestBody:{description:"User data to update",required:!0,content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("UpdateMe",t)}}}},responses:{200:{description:"User updated successfully",content:{"application/json":{schema:{$ref:(0,swagger_router_helpers_1.getSchemaRef)("User",n)}}}},400:{description:"Invalid input data"},401:{description:"Authentication required"}}}}return i("deleteMe")||(e["/api/users/me"]||(e["/api/users/me"]={}),e["/api/users/me"].delete={tags:["Authentication"],summary:"Delete current user account",description:"Marks the current user's account as deleted",operationId:"deleteMe",security:[{BearerAuth:[]}],responses:{200:{description:"Account deleted successfully",content:{"application/json":{schema:{type:"object",properties:{message:{type:"string",example:"Account deleted successfully"}}}}}},401:{description:"Authentication required"}}}),i("findManyAuthAction")||(e["/api/auth-actions"]={get:{tags:["Authentication"],summary:"Get all authentication actions",description:"Retrieves a list of all available authentication actions and permissions",operationId:"findManyAuthAction",security:[{BearerAuth:[]}],responses:{200:{description:"Auth actions retrieved successfully",content:{"application/json":{schema:{type:"object",properties:{total:{type:"number",description:"Total number of auth actions"},results:{type:"number",description:"Number of auth actions returned"},data:{type:"array",items:{$ref:"#/components/schemas/FindManyAuthActionSystemSchema"}}}}}}},401:{description:"Authentication required"},403:{description:"Insufficient permissions"}}}}),e}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSchemaMode = void 0;
4
+ exports.default = getAuthenticationJsonSchemaPaths;
5
+ const swagger_router_helpers_1 = require("./swagger.router.helpers");
6
+ const dynamic_loader_1 = require("../../../../utils/dynamic-loader");
7
+ const base_router_helpers_1 = require("../../../base/utils/helpers/base.router.helpers");
8
+ const getSchemaMode = async (action, arkosConfig) => {
9
+ const swaggerMode = arkosConfig.swagger?.mode;
10
+ const isStrict = arkosConfig.swagger?.strict;
11
+ if (!swaggerMode)
12
+ return "prisma";
13
+ if (isStrict)
14
+ return swaggerMode;
15
+ const actionKey = action;
16
+ const localFileExists = await (0, swagger_router_helpers_1.localValidatorFileExists)(actionKey, "user", arkosConfig);
17
+ if (!localFileExists)
18
+ return "prisma";
19
+ return swaggerMode;
20
+ };
21
+ exports.getSchemaMode = getSchemaMode;
22
+ async function getAuthenticationJsonSchemaPaths(arkosConfig) {
23
+ const paths = {};
24
+ if (!arkosConfig.swagger?.mode)
25
+ return paths;
26
+ const AuthModuleComponents = (0, dynamic_loader_1.getModuleComponents)("auth");
27
+ const routerConfig = AuthModuleComponents?.router?.config;
28
+ if (routerConfig?.disable === true)
29
+ return paths;
30
+ const isAuthEndpointDisabled = (endpoint) => {
31
+ return (0, base_router_helpers_1.isEndpointDisabled)(routerConfig, endpoint);
32
+ };
33
+ if (!isAuthEndpointDisabled("login")) {
34
+ const loginMode = await (0, exports.getSchemaMode)("login", arkosConfig);
35
+ paths["/api/auth/login"] = {
36
+ post: {
37
+ tags: ["Authentication"],
38
+ summary: "Login to the system",
39
+ description: "Authenticates a user and returns an access token",
40
+ operationId: "login",
41
+ requestBody: {
42
+ description: "User credentials",
43
+ required: true,
44
+ content: {
45
+ "application/json": {
46
+ schema: {
47
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("Login", loginMode),
48
+ },
49
+ },
50
+ },
51
+ },
52
+ responses: {
53
+ "200": {
54
+ description: "Login successful",
55
+ content: {
56
+ "application/json": {
57
+ schema: {
58
+ type: "object",
59
+ properties: {
60
+ accessToken: {
61
+ type: "string",
62
+ description: "JWT access token",
63
+ },
64
+ },
65
+ },
66
+ },
67
+ },
68
+ },
69
+ "400": {
70
+ description: "Invalid input data",
71
+ },
72
+ "401": {
73
+ description: "Invalid credentials",
74
+ },
75
+ },
76
+ },
77
+ };
78
+ }
79
+ if (!isAuthEndpointDisabled("logout")) {
80
+ paths["/api/auth/logout"] = {
81
+ delete: {
82
+ tags: ["Authentication"],
83
+ summary: "Logout from the system",
84
+ description: "Invalidates the current user's JWT token",
85
+ operationId: "logout",
86
+ security: [{ BearerAuth: [] }],
87
+ responses: {
88
+ "204": {
89
+ description: "Logout successful",
90
+ },
91
+ "401": {
92
+ description: "Authentication required",
93
+ },
94
+ },
95
+ },
96
+ };
97
+ }
98
+ if (!isAuthEndpointDisabled("signup")) {
99
+ const signupMode = await (0, exports.getSchemaMode)("signup", arkosConfig);
100
+ const userMode = await (0, exports.getSchemaMode)("user", arkosConfig);
101
+ paths["/api/auth/signup"] = {
102
+ post: {
103
+ tags: ["Authentication"],
104
+ summary: "Register a new user",
105
+ description: "Creates a new user account",
106
+ operationId: "signup",
107
+ requestBody: {
108
+ description: "User registration data",
109
+ required: true,
110
+ content: {
111
+ "application/json": {
112
+ schema: {
113
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("Signup", signupMode),
114
+ },
115
+ },
116
+ },
117
+ },
118
+ responses: {
119
+ "201": {
120
+ description: "User created successfully",
121
+ content: {
122
+ "application/json": {
123
+ schema: {
124
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("User", userMode),
125
+ },
126
+ },
127
+ },
128
+ },
129
+ "400": {
130
+ description: "Invalid input data",
131
+ },
132
+ "409": {
133
+ description: "User already exists",
134
+ },
135
+ },
136
+ },
137
+ };
138
+ }
139
+ if (!isAuthEndpointDisabled("updatePassword")) {
140
+ const updatePasswordMode = await (0, exports.getSchemaMode)("updatePassword", arkosConfig);
141
+ paths["/api/auth/update-password"] = {
142
+ post: {
143
+ tags: ["Authentication"],
144
+ summary: "Update user password",
145
+ description: "Changes the password for the authenticated user",
146
+ operationId: "updatePassword",
147
+ security: [{ BearerAuth: [] }],
148
+ requestBody: {
149
+ description: "Current and new password",
150
+ required: true,
151
+ content: {
152
+ "application/json": {
153
+ schema: {
154
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("UpdatePassword", updatePasswordMode),
155
+ },
156
+ },
157
+ },
158
+ },
159
+ responses: {
160
+ "200": {
161
+ description: "Password updated successfully",
162
+ content: {
163
+ "application/json": {
164
+ schema: {
165
+ type: "object",
166
+ properties: {
167
+ status: {
168
+ type: "string",
169
+ example: "success",
170
+ },
171
+ message: {
172
+ type: "string",
173
+ example: "Password updated successfully!",
174
+ },
175
+ },
176
+ },
177
+ },
178
+ },
179
+ },
180
+ "400": {
181
+ description: "Invalid input data or current password incorrect",
182
+ },
183
+ "401": {
184
+ description: "Authentication required",
185
+ },
186
+ },
187
+ },
188
+ };
189
+ }
190
+ if (!isAuthEndpointDisabled("getMe")) {
191
+ const findMeMode = await (0, exports.getSchemaMode)("getMe", arkosConfig);
192
+ paths["/api/users/me"] = {
193
+ get: {
194
+ tags: ["Authentication"],
195
+ summary: "Get current user information",
196
+ description: "Retrieves information about the currently authenticated user",
197
+ operationId: "getMe",
198
+ security: [{ BearerAuth: [] }],
199
+ responses: {
200
+ "200": {
201
+ description: "User information retrieved successfully",
202
+ content: {
203
+ "application/json": {
204
+ schema: {
205
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("GetMe", findMeMode),
206
+ },
207
+ },
208
+ },
209
+ },
210
+ "401": {
211
+ description: "Authentication required",
212
+ },
213
+ },
214
+ },
215
+ };
216
+ }
217
+ if (!isAuthEndpointDisabled("updateMe")) {
218
+ const updateMeMode = await (0, exports.getSchemaMode)("updateMe", arkosConfig);
219
+ const userMode = await (0, exports.getSchemaMode)("user", arkosConfig);
220
+ if (!paths["/api/users/me"])
221
+ paths["/api/users/me"] = {};
222
+ paths["/api/users/me"].patch = {
223
+ tags: ["Authentication"],
224
+ summary: "Update current user information",
225
+ description: "Updates information for the currently authenticated user",
226
+ operationId: "updateMe",
227
+ security: [{ BearerAuth: [] }],
228
+ requestBody: {
229
+ description: "User data to update",
230
+ required: true,
231
+ content: {
232
+ "application/json": {
233
+ schema: {
234
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("UpdateMe", updateMeMode),
235
+ },
236
+ },
237
+ },
238
+ },
239
+ responses: {
240
+ "200": {
241
+ description: "User updated successfully",
242
+ content: {
243
+ "application/json": {
244
+ schema: {
245
+ $ref: (0, swagger_router_helpers_1.getSchemaRef)("User", userMode),
246
+ },
247
+ },
248
+ },
249
+ },
250
+ "400": {
251
+ description: "Invalid input data",
252
+ },
253
+ "401": {
254
+ description: "Authentication required",
255
+ },
256
+ },
257
+ };
258
+ }
259
+ if (!isAuthEndpointDisabled("deleteMe")) {
260
+ if (!paths["/api/users/me"])
261
+ paths["/api/users/me"] = {};
262
+ paths["/api/users/me"].delete = {
263
+ tags: ["Authentication"],
264
+ summary: "Delete current user account",
265
+ description: "Marks the current user's account as deleted",
266
+ operationId: "deleteMe",
267
+ security: [{ BearerAuth: [] }],
268
+ responses: {
269
+ "200": {
270
+ description: "Account deleted successfully",
271
+ content: {
272
+ "application/json": {
273
+ schema: {
274
+ type: "object",
275
+ properties: {
276
+ message: {
277
+ type: "string",
278
+ example: "Account deleted successfully",
279
+ },
280
+ },
281
+ },
282
+ },
283
+ },
284
+ },
285
+ "401": {
286
+ description: "Authentication required",
287
+ },
288
+ },
289
+ };
290
+ }
291
+ if (!isAuthEndpointDisabled("findManyAuthAction")) {
292
+ paths["/api/auth-actions"] = {
293
+ get: {
294
+ tags: ["Authentication"],
295
+ summary: "Get all authentication actions",
296
+ description: "Retrieves a list of all available authentication actions and permissions",
297
+ operationId: "findManyAuthAction",
298
+ security: [{ BearerAuth: [] }],
299
+ responses: {
300
+ "200": {
301
+ description: "Auth actions retrieved successfully",
302
+ content: {
303
+ "application/json": {
304
+ schema: {
305
+ type: "object",
306
+ properties: {
307
+ total: {
308
+ type: "number",
309
+ description: "Total number of auth actions",
310
+ },
311
+ results: {
312
+ type: "number",
313
+ description: "Number of auth actions returned",
314
+ },
315
+ data: {
316
+ type: "array",
317
+ items: {
318
+ $ref: "#/components/schemas/FindManyAuthActionSystemSchema",
319
+ },
320
+ },
321
+ },
322
+ },
323
+ },
324
+ },
325
+ },
326
+ "401": {
327
+ description: "Authentication required",
328
+ },
329
+ "403": {
330
+ description: "Insufficient permissions",
331
+ },
332
+ },
333
+ },
334
+ };
335
+ }
336
+ return paths;
337
+ }
338
+ //# sourceMappingURL=get-authentication-json-schema-paths.js.map
@@ -1 +1,64 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=getSwaggerDefaultConfig;const text_helpers_1=require("../../../../utils/helpers/text.helpers"),port_and_host_allocator_1=__importDefault(require("../../../../utils/features/port-and-host-allocator"));async function getSwaggerDefaultConfig(e,r){const t=await port_and_host_allocator_1.default.getHostAndAvailablePort({});return{endpoint:"/docs",mode:"prisma",strict:!1,options:{definition:{openapi:"3.0.0",info:{title:"Powered By Arkos.js",version:"1.0.0",description:"This API was automatically generated by Arkos.js, read more about at www.arkosjs.com"},servers:[{url:`http://${t.host}:${t.port}`,description:`Local ${(0,text_helpers_1.capitalize)(process.env.NODE_ENV||"development")} Server`}],paths:e,components:{schemas:r||{},securitySchemes:{BearerAuth:{type:"http",scheme:"bearer",bearerFormat:"JWT"}}},security:[]},apis:["./src/routers/*.router.{ts,js}","./src/modules/**/*.router.{ts,js}"],deepLinking:!0,tryItOutEnabled:!0,persistAuthorization:!1},scalarApiReferenceConfiguration:{theme:"deepSpace",darkMode:!0,layout:"modern",showSidebar:!0,hideDownloadButton:!1,metaData:{title:"Arkos.js API Documentation",description:"API documentation generated by Arkos.js"},pageTitle:"Arkos.js API Documentation"}}}
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.default = getSwaggerDefaultConfig;
7
+ const text_helpers_1 = require("../../../../utils/helpers/text.helpers");
8
+ const port_and_host_allocator_1 = __importDefault(require("../../../../utils/features/port-and-host-allocator"));
9
+ async function getSwaggerDefaultConfig(defaultModelsPaths, defaultJsonSchemas) {
10
+ const portAndHost = await port_and_host_allocator_1.default.getHostAndAvailablePort({});
11
+ return {
12
+ endpoint: "/docs",
13
+ mode: "prisma",
14
+ strict: false,
15
+ options: {
16
+ definition: {
17
+ openapi: "3.0.0",
18
+ info: {
19
+ title: "Powered By Arkos.js",
20
+ version: "1.0.0",
21
+ description: "This API was automatically generated by Arkos.js, read more about at www.arkosjs.com",
22
+ },
23
+ servers: [
24
+ {
25
+ url: `http://${portAndHost.host}:${portAndHost.port}`,
26
+ description: `Local ${(0, text_helpers_1.capitalize)(process.env.NODE_ENV || "development")} Server`,
27
+ },
28
+ ],
29
+ paths: defaultModelsPaths,
30
+ components: {
31
+ schemas: defaultJsonSchemas || {},
32
+ securitySchemes: {
33
+ BearerAuth: {
34
+ type: "http",
35
+ scheme: "bearer",
36
+ bearerFormat: "JWT",
37
+ },
38
+ },
39
+ },
40
+ security: [],
41
+ },
42
+ apis: [
43
+ "./src/routers/*.router.{ts,js}",
44
+ "./src/modules/**/*.router.{ts,js}",
45
+ ],
46
+ deepLinking: true,
47
+ tryItOutEnabled: true,
48
+ persistAuthorization: false,
49
+ },
50
+ scalarApiReferenceConfiguration: {
51
+ theme: "deepSpace",
52
+ darkMode: true,
53
+ layout: "modern",
54
+ showSidebar: true,
55
+ hideDownloadButton: false,
56
+ metaData: {
57
+ title: "Arkos.js API Documentation",
58
+ description: "API documentation generated by Arkos.js",
59
+ },
60
+ pageTitle: "Arkos.js API Documentation",
61
+ },
62
+ };
63
+ }
64
+ //# sourceMappingURL=get-swagger-default-configs.js.map
@@ -1 +1,37 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getSystemJsonSchemaPaths=getSystemJsonSchemaPaths;function getSystemJsonSchemaPaths(){const e={};return e["/api/available-resources"]={get:{tags:["System"],summary:"Get available resources",description:"Returns a comprehensive list of all available API resource endpoints",operationId:"getAvailableResources",responses:{200:{description:"List of available resources retrieved successfully",content:{"application/json":{schema:{type:"object",properties:{data:{type:"array",items:{type:"string"},description:"Array of available resource endpoints"}}}}}}}}},e}
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
+ return paths;
36
+ }
37
+ //# sourceMappingURL=get-system-json-schema-paths.js.map
@@ -1 +1,48 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.generateClassValidatorJsonSchemas=generateClassValidatorJsonSchemas;const class_validator_jsonschema_1=require("class-validator-jsonschema"),global_helpers_1=require("../../../../../utils/helpers/global.helpers"),class_validator_1=require("class-validator"),dynamic_loader_1=require("../../../../../utils/dynamic-loader"),swagger_router_helpers_1=require("../swagger.router.helpers"),prisma_schema_parser_1=__importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));async function generateClassValidatorJsonSchemas(){const e=[...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),"auth"],a={},{defaultMetadataStorage:i}=await(0,global_helpers_1.importModule)("class-transformer/cjs/storage.js"),c=(0,class_validator_jsonschema_1.validationMetadatasToSchemas)({classValidatorMetadataStorage:(0,class_validator_1.getMetadataStorage)(),classTransformerMetadataStorage:i,refPointerPrefix:"#/components/schemas/"});return Object.entries(c).forEach(([r,s])=>{a[r]=s}),e.forEach(r=>{const s=(0,dynamic_loader_1.getModuleComponents)(r);s?.dtos&&Object.entries(s.dtos).forEach(([n,t])=>{if(t)try{const o=(0,swagger_router_helpers_1.getCorrectJsonSchemaName)(n,r,"Dto");a[o]=c[t.name]||{},a[t.name]&&delete a[t.name]}catch(o){console.warn(`Failed to generate schema for ${n} ${r}:`,o)}})}),a}
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.generateClassValidatorJsonSchemas = generateClassValidatorJsonSchemas;
7
+ const class_validator_jsonschema_1 = require("class-validator-jsonschema");
8
+ const global_helpers_1 = require("../../../../../utils/helpers/global.helpers");
9
+ const class_validator_1 = require("class-validator");
10
+ const dynamic_loader_1 = require("../../../../../utils/dynamic-loader");
11
+ const swagger_router_helpers_1 = require("../swagger.router.helpers");
12
+ const prisma_schema_parser_1 = __importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));
13
+ async function generateClassValidatorJsonSchemas() {
14
+ const requiredAppModules = [
15
+ ...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),
16
+ "auth",
17
+ ];
18
+ const schemas = {};
19
+ const { defaultMetadataStorage } = await (0, global_helpers_1.importModule)("class-transformer/cjs/storage.js");
20
+ const jsonSchema = (0, class_validator_jsonschema_1.validationMetadatasToSchemas)({
21
+ classValidatorMetadataStorage: (0, class_validator_1.getMetadataStorage)(),
22
+ classTransformerMetadataStorage: defaultMetadataStorage,
23
+ refPointerPrefix: "#/components/schemas/",
24
+ });
25
+ Object.entries(jsonSchema).forEach(([className, schema]) => {
26
+ schemas[className] = schema;
27
+ });
28
+ requiredAppModules.forEach((modelName) => {
29
+ const moduleComponents = (0, dynamic_loader_1.getModuleComponents)(modelName);
30
+ if (moduleComponents?.dtos) {
31
+ Object.entries(moduleComponents.dtos).forEach(([dtoType, dtoClass]) => {
32
+ if (dtoClass) {
33
+ try {
34
+ const schemaName = (0, swagger_router_helpers_1.getCorrectJsonSchemaName)(dtoType, modelName, "Dto");
35
+ schemas[schemaName] = jsonSchema[dtoClass.name] || {};
36
+ if (schemas[dtoClass.name])
37
+ delete schemas[dtoClass.name];
38
+ }
39
+ catch (error) {
40
+ console.warn(`Failed to generate schema for ${dtoType} ${modelName}:`, error);
41
+ }
42
+ }
43
+ });
44
+ }
45
+ });
46
+ return schemas;
47
+ }
48
+ //# sourceMappingURL=generate-class-validator-json-schemas.js.map
@@ -1 +1,32 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.generatePrismaJsonSchemas=generatePrismaJsonSchemas;const prisma_json_schema_generator_1=__importDefault(require("../../../../../utils/prisma/prisma-json-schema-generator")),prisma_schema_parser_1=__importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));async function generatePrismaJsonSchemas(e){const t=[...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),"auth"];try{return(await Promise.all(t.map(async s=>await prisma_json_schema_generator_1.default.generateModelSchemas({modelName:s,arkosConfig:e})))).reduce((s,a)=>({...s,...a}),{})}catch(r){throw console.error(r),r}}
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.generatePrismaJsonSchemas = generatePrismaJsonSchemas;
7
+ const prisma_json_schema_generator_1 = __importDefault(require("../../../../../utils/prisma/prisma-json-schema-generator"));
8
+ const prisma_schema_parser_1 = __importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));
9
+ async function generatePrismaJsonSchemas(arkosConfig) {
10
+ const requiredAppModules = [
11
+ ...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),
12
+ "auth",
13
+ ];
14
+ try {
15
+ const modelSchemasArray = await Promise.all(requiredAppModules.map(async (modelName) => {
16
+ const modelSchemas = await prisma_json_schema_generator_1.default.generateModelSchemas({
17
+ modelName,
18
+ arkosConfig,
19
+ });
20
+ return modelSchemas;
21
+ }));
22
+ const schemas = modelSchemasArray.reduce((acc, modelSchemas) => {
23
+ return { ...acc, ...modelSchemas };
24
+ }, {});
25
+ return schemas;
26
+ }
27
+ catch (err) {
28
+ console.error(err);
29
+ throw err;
30
+ }
31
+ }
32
+ //# sourceMappingURL=generate-prisma-json-schemas.js.map
@@ -1 +1,49 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=generateSystemJsonSchemas;function generateSystemJsonSchemas(t){const r=t?.authentication?.mode==="dynamic",e={action:{type:"string",description:"Action name, e.g Create, View, Update, Download, Cancel"},resource:{type:"string",description:"Resource name, e.g user, user-role, product, author"},name:{type:"string",description:"Human-readable name for this permission",nullable:!0},description:{type:"string",description:"Detailed description of what this permission allows",nullable:!0},errorMessage:{type:"string",description:"Error message returned on forbidden response",nullable:!0}};return r||(e.roles={type:"array",description:"Role names that have this permission, e.g Admin, Manager",items:{type:"string"}}),{FindManyAuthActionSystemSchema:{type:"object",properties:e,required:["action","resource"],additionalProperties:!1}}}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = generateSystemJsonSchemas;
4
+ function generateSystemJsonSchemas(arkosConfig) {
5
+ const isDynamicMode = arkosConfig?.authentication?.mode === "dynamic";
6
+ const baseProperties = {
7
+ action: {
8
+ type: "string",
9
+ description: "Action name, e.g Create, View, Update, Download, Cancel",
10
+ },
11
+ resource: {
12
+ type: "string",
13
+ description: "Resource name, e.g user, user-role, product, author",
14
+ },
15
+ name: {
16
+ type: "string",
17
+ description: "Human-readable name for this permission",
18
+ nullable: true,
19
+ },
20
+ description: {
21
+ type: "string",
22
+ description: "Detailed description of what this permission allows",
23
+ nullable: true,
24
+ },
25
+ errorMessage: {
26
+ type: "string",
27
+ description: "Error message returned on forbidden response",
28
+ nullable: true,
29
+ },
30
+ };
31
+ if (!isDynamicMode) {
32
+ baseProperties.roles = {
33
+ type: "array",
34
+ description: "Role names that have this permission, e.g Admin, Manager",
35
+ items: {
36
+ type: "string",
37
+ },
38
+ };
39
+ }
40
+ return {
41
+ FindManyAuthActionSystemSchema: {
42
+ type: "object",
43
+ properties: baseProperties,
44
+ required: ["action", "resource"],
45
+ additionalProperties: false,
46
+ },
47
+ };
48
+ }
49
+ //# sourceMappingURL=generate-system-json-schemas.js.map
@@ -1 +1,34 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=generateZodJsonSchemas;const dynamic_loader_1=require("../../../../../utils/dynamic-loader"),zod_to_json_schema_1=__importDefault(require("zod-to-json-schema")),swagger_router_helpers_1=require("../swagger.router.helpers"),prisma_schema_parser_1=__importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));async function generateZodJsonSchemas(){const e=[...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),"auth"],t={};return e.forEach(r=>{const o=(0,dynamic_loader_1.getModuleComponents)(r);o?.schemas&&Object.entries(o.schemas).forEach(([a,c])=>{if(c)try{const s=(0,zod_to_json_schema_1.default)(c),n=(0,swagger_router_helpers_1.getCorrectJsonSchemaName)(a,r,"Schema");t[n]=s}catch(s){console.warn(`Failed to generate schema for ${a} ${r}:`,s)}})}),t}
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.default = generateZodJsonSchemas;
7
+ const dynamic_loader_1 = require("../../../../../utils/dynamic-loader");
8
+ const zod_to_json_schema_1 = __importDefault(require("zod-to-json-schema"));
9
+ const swagger_router_helpers_1 = require("../swagger.router.helpers");
10
+ const prisma_schema_parser_1 = __importDefault(require("../../../../../utils/prisma/prisma-schema-parser"));
11
+ async function generateZodJsonSchemas() {
12
+ const requiredAppModules = [
13
+ ...prisma_schema_parser_1.default.getModelsAsArrayOfStrings(),
14
+ "auth",
15
+ ];
16
+ const schemas = {};
17
+ requiredAppModules.forEach((modelName) => {
18
+ const moduleComponents = (0, dynamic_loader_1.getModuleComponents)(modelName);
19
+ if (moduleComponents?.schemas)
20
+ Object.entries(moduleComponents.schemas).forEach(([schemaType, zodSchema]) => {
21
+ if (zodSchema)
22
+ try {
23
+ const jsonSchema = (0, zod_to_json_schema_1.default)(zodSchema);
24
+ const schemaName = (0, swagger_router_helpers_1.getCorrectJsonSchemaName)(schemaType, modelName, "Schema");
25
+ schemas[schemaName] = jsonSchema;
26
+ }
27
+ catch (error) {
28
+ console.warn(`Failed to generate schema for ${schemaType} ${modelName}:`, error);
29
+ }
30
+ });
31
+ });
32
+ return schemas;
33
+ }
34
+ //# sourceMappingURL=generate-zod-json-schemas.js.map