arkos 2.0.0-next.2 → 2.0.0-next.21

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 (613) hide show
  1. package/README.md +146 -145
  2. package/cli.js +11 -13
  3. package/dist/esm/app.js +17 -16
  4. package/dist/esm/app.js.map +1 -1
  5. package/dist/esm/components/arkos-gateway/arkos-gateway.js +338 -0
  6. package/dist/esm/components/arkos-gateway/arkos-gateway.js.map +1 -0
  7. package/dist/esm/components/arkos-gateway/socket-extensions.js +168 -0
  8. package/dist/esm/components/arkos-gateway/socket-extensions.js.map +1 -0
  9. package/dist/esm/components/arkos-gateway/types.js +3 -0
  10. package/dist/esm/components/arkos-gateway/types.js.map +1 -0
  11. package/dist/esm/components/arkos-gateway/utils/helpers.js +105 -0
  12. package/dist/esm/components/arkos-gateway/utils/helpers.js.map +1 -0
  13. package/dist/esm/components/arkos-gateway/utils/memory-gateway-store.js +45 -0
  14. package/dist/esm/components/arkos-gateway/utils/memory-gateway-store.js.map +1 -0
  15. package/dist/esm/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.js +40 -0
  16. package/dist/esm/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.js.map +1 -0
  17. package/dist/esm/components/arkos-gateway/utils/rate-limiter.js +13 -0
  18. package/dist/esm/components/arkos-gateway/utils/rate-limiter.js.map +1 -0
  19. package/dist/esm/components/arkos-loadable-registry/index.js +1 -3
  20. package/dist/esm/components/arkos-loadable-registry/index.js.map +1 -1
  21. package/dist/esm/components/arkos-policy/index.js +3 -1
  22. package/dist/esm/components/arkos-policy/index.js.map +1 -1
  23. package/dist/esm/components/arkos-route-hook/index.js +2 -1
  24. package/dist/esm/components/arkos-route-hook/index.js.map +1 -1
  25. package/dist/esm/components/arkos-route-hook/reader.js.map +1 -1
  26. package/dist/esm/components/arkos-route-hook/types.js.map +1 -1
  27. package/dist/esm/exports/error-handler/index.js +1 -0
  28. package/dist/esm/exports/error-handler/index.js.map +1 -1
  29. package/dist/esm/exports/index.js +3 -3
  30. package/dist/esm/exports/index.js.map +1 -1
  31. package/dist/esm/exports/middlewares/index.js +1 -1
  32. package/dist/esm/exports/middlewares/index.js.map +1 -1
  33. package/dist/esm/exports/services/index.js +2 -2
  34. package/dist/esm/exports/services/index.js.map +1 -1
  35. package/dist/esm/exports/websockets.js +5 -0
  36. package/dist/esm/exports/websockets.js.map +1 -0
  37. package/dist/esm/generated.js.map +1 -1
  38. package/dist/esm/modules/auth/auth.controller.js +214 -222
  39. package/dist/esm/modules/auth/auth.controller.js.map +1 -1
  40. package/dist/esm/modules/auth/auth.router.js +26 -9
  41. package/dist/esm/modules/auth/auth.router.js.map +1 -1
  42. package/dist/esm/modules/auth/auth.service.js +90 -102
  43. package/dist/esm/modules/auth/auth.service.js.map +1 -1
  44. package/dist/esm/modules/auth/utils/auth-error-objects.js +2 -2
  45. package/dist/esm/modules/auth/utils/auth-error-objects.js.map +1 -1
  46. package/dist/esm/modules/auth/utils/auth-hooks-manager.js +148 -0
  47. package/dist/esm/modules/auth/utils/auth-hooks-manager.js.map +1 -0
  48. package/dist/esm/modules/auth/utils/auth-openapi-generator.js +367 -0
  49. package/dist/esm/modules/auth/utils/auth-openapi-generator.js.map +1 -0
  50. package/dist/esm/modules/auth/utils/auth-prisma-json-schema-generator.js +97 -0
  51. package/dist/esm/modules/auth/utils/auth-prisma-json-schema-generator.js.map +1 -0
  52. package/dist/esm/modules/auth/utils/docs-links.js +6 -0
  53. package/dist/esm/modules/auth/utils/docs-links.js.map +1 -0
  54. package/dist/esm/modules/auth/utils/services/auth-action.service.js +20 -16
  55. package/dist/esm/modules/auth/utils/services/auth-action.service.js.map +1 -1
  56. package/dist/esm/modules/base/base.controller.js +182 -162
  57. package/dist/esm/modules/base/base.controller.js.map +1 -1
  58. package/dist/esm/modules/base/base.middlewares.js +31 -48
  59. package/dist/esm/modules/base/base.middlewares.js.map +1 -1
  60. package/dist/esm/modules/base/base.router.js +23 -9
  61. package/dist/esm/modules/base/base.router.js.map +1 -1
  62. package/dist/esm/modules/base/base.service.js +33 -138
  63. package/dist/esm/modules/base/base.service.js.map +1 -1
  64. package/dist/esm/modules/base/types/base.service.types.js.map +1 -1
  65. package/dist/esm/modules/base/utils/error-prettifier.js +26 -30
  66. package/dist/esm/modules/base/utils/error-prettifier.js.map +1 -1
  67. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +26 -5
  68. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
  69. package/dist/esm/modules/base/utils/model-openapi-generator.js +438 -0
  70. package/dist/esm/modules/base/utils/model-openapi-generator.js.map +1 -0
  71. package/dist/esm/modules/email/email.service.js +17 -10
  72. package/dist/esm/modules/email/email.service.js.map +1 -1
  73. package/dist/esm/modules/error-handler/error-handler.controller.js +24 -113
  74. package/dist/esm/modules/error-handler/error-handler.controller.js.map +1 -1
  75. package/dist/esm/modules/error-handler/utils/app-error.js +5 -2
  76. package/dist/esm/modules/error-handler/utils/app-error.js.map +1 -1
  77. package/dist/esm/modules/error-handler/utils/catch-async.js.map +1 -1
  78. package/dist/esm/modules/error-handler/utils/error-handler.helpers.js +9 -103
  79. package/dist/esm/modules/error-handler/utils/error-handler.helpers.js.map +1 -1
  80. package/dist/esm/modules/error-handler/utils/errors.js +127 -0
  81. package/dist/esm/modules/error-handler/utils/errors.js.map +1 -0
  82. package/dist/esm/modules/error-handler/utils/get-handled-error.js +68 -0
  83. package/dist/esm/modules/error-handler/utils/get-handled-error.js.map +1 -0
  84. package/dist/esm/modules/error-handler/utils/multer-error-handler.js +34 -0
  85. package/dist/esm/modules/error-handler/utils/multer-error-handler.js.map +1 -0
  86. package/dist/esm/modules/file-upload/file-upload.controller.js +208 -214
  87. package/dist/esm/modules/file-upload/file-upload.controller.js.map +1 -1
  88. package/dist/esm/modules/file-upload/file-upload.router.js +35 -12
  89. package/dist/esm/modules/file-upload/file-upload.router.js.map +1 -1
  90. package/dist/esm/modules/file-upload/file-upload.service.js +13 -8
  91. package/dist/esm/modules/file-upload/file-upload.service.js.map +1 -1
  92. package/dist/esm/modules/file-upload/utils/file-upload-json-schema-generator.js +346 -0
  93. package/dist/esm/modules/file-upload/utils/file-upload-json-schema-generator.js.map +1 -0
  94. package/dist/esm/modules/swagger/swagger.router.js +39 -22
  95. package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
  96. package/dist/esm/modules/swagger/utils/get-open-api-login-html.js +305 -0
  97. package/dist/esm/modules/swagger/utils/get-open-api-login-html.js.map +1 -0
  98. package/dist/esm/modules/swagger/utils/helpers/class-validator-to-json-schema.js.map +1 -1
  99. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +6 -7
  100. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +1 -1
  101. package/dist/esm/modules/swagger/utils/helpers/openapi-schema-converter.js +6 -3
  102. package/dist/esm/modules/swagger/utils/helpers/openapi-schema-converter.js.map +1 -1
  103. package/dist/esm/server.js +1 -1
  104. package/dist/esm/server.js.map +1 -1
  105. package/dist/esm/types/arkos-config/utils.js +2 -0
  106. package/dist/esm/types/arkos-config/utils.js.map +1 -0
  107. package/dist/esm/types/arkos-prisma-input.js.map +1 -1
  108. package/dist/esm/types/arkos.js.map +1 -1
  109. package/dist/esm/types/auth.js.map +1 -1
  110. package/dist/esm/types/index.js.map +1 -1
  111. package/dist/esm/types/new-arkos-config.js.map +1 -1
  112. package/dist/esm/types/router-config.js.map +1 -1
  113. package/dist/esm/types/upload.js +2 -0
  114. package/dist/esm/types/upload.js.map +1 -0
  115. package/dist/esm/types/validation/validation-manager.js +49 -0
  116. package/dist/esm/types/validation/validation-manager.js.map +1 -0
  117. package/dist/esm/types/validation/validator.js +2 -0
  118. package/dist/esm/types/validation/validator.js.map +1 -0
  119. package/dist/esm/utils/arkos-router/arkos-router-openapi-manager.js +68 -34
  120. package/dist/esm/utils/arkos-router/arkos-router-openapi-manager.js.map +1 -1
  121. package/dist/esm/utils/arkos-router/index.js +37 -130
  122. package/dist/esm/utils/arkos-router/index.js.map +1 -1
  123. package/dist/esm/utils/arkos-router/route-config-registry.js +2 -3
  124. package/dist/esm/utils/arkos-router/route-config-registry.js.map +1 -1
  125. package/dist/esm/utils/arkos-router/types/index.js.map +1 -1
  126. package/dist/esm/utils/arkos-router/types/openapi-config.js.map +1 -1
  127. package/dist/esm/utils/arkos-router/types/upload-config.js.map +1 -1
  128. package/dist/esm/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.js +188 -0
  129. package/dist/esm/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.js.map +1 -0
  130. package/dist/esm/utils/arkos-router/utils/helpers/index.js +88 -29
  131. package/dist/esm/utils/arkos-router/utils/helpers/index.js.map +1 -1
  132. package/dist/esm/utils/arkos-router/utils/helpers/upload-manager.js +364 -89
  133. package/dist/esm/utils/arkos-router/utils/helpers/upload-manager.js.map +1 -1
  134. package/dist/esm/utils/bundler.js +6 -6
  135. package/dist/esm/utils/bundler.js.map +1 -1
  136. package/dist/esm/utils/cli/build.js +16 -7
  137. package/dist/esm/utils/cli/build.js.map +1 -1
  138. package/dist/esm/utils/cli/dev.js +18 -28
  139. package/dist/esm/utils/cli/dev.js.map +1 -1
  140. package/dist/esm/utils/cli/export-auth-action.js +5 -4
  141. package/dist/esm/utils/cli/export-auth-action.js.map +1 -1
  142. package/dist/esm/utils/cli/generate.js +70 -56
  143. package/dist/esm/utils/cli/generate.js.map +1 -1
  144. package/dist/esm/utils/cli/index.js +54 -50
  145. package/dist/esm/utils/cli/index.js.map +1 -1
  146. package/dist/esm/utils/cli/prisma-generate.js +8 -37
  147. package/dist/esm/utils/cli/prisma-generate.js.map +1 -1
  148. package/dist/esm/utils/cli/start.js +25 -14
  149. package/dist/esm/utils/cli/start.js.map +1 -1
  150. package/dist/esm/utils/cli/utils/cli.helpers.js +1 -1
  151. package/dist/esm/utils/cli/utils/runtime-cli-commander.js +7 -4
  152. package/dist/esm/utils/cli/utils/runtime-cli-commander.js.map +1 -1
  153. package/dist/esm/utils/cli/utils/smart-fs-watcher.js +3 -0
  154. package/dist/esm/utils/cli/utils/smart-fs-watcher.js.map +1 -1
  155. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js +307 -11
  156. package/dist/esm/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js.map +1 -1
  157. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js +16 -7
  158. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +1 -1
  159. package/dist/esm/utils/cli/utils/template-generator/templates/generate-multiple-components.js +117 -65
  160. package/dist/esm/utils/cli/utils/template-generator/templates/generate-multiple-components.js.map +1 -1
  161. package/dist/esm/utils/cli/utils/template-generator/templates/policy-template.js +6 -8
  162. package/dist/esm/utils/cli/utils/template-generator/templates/policy-template.js.map +1 -1
  163. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js +13 -2
  164. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js.map +1 -1
  165. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js +2 -2
  166. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js.map +1 -1
  167. package/dist/esm/utils/cli/utils/template-generator/templates/zod-schema-generator.js +213 -19
  168. package/dist/esm/utils/cli/utils/template-generator/templates/zod-schema-generator.js.map +1 -1
  169. package/dist/esm/utils/cli/utils/template-generators.js +31 -18
  170. package/dist/esm/utils/cli/utils/template-generators.js.map +1 -1
  171. package/dist/esm/utils/define-config.js +14 -0
  172. package/dist/esm/utils/define-config.js.map +1 -1
  173. package/dist/esm/utils/docs-links.js +2 -0
  174. package/dist/esm/utils/docs-links.js.map +1 -0
  175. package/dist/esm/utils/dotenv.helpers.js +0 -6
  176. package/dist/esm/utils/dotenv.helpers.js.map +1 -1
  177. package/dist/esm/utils/dynamic-loader.js +2 -1
  178. package/dist/esm/utils/dynamic-loader.js.map +1 -1
  179. package/dist/esm/utils/features/api.features.js +46 -27
  180. package/dist/esm/utils/features/api.features.js.map +1 -1
  181. package/dist/esm/utils/features/port-and-host-allocator.js +4 -3
  182. package/dist/esm/utils/features/port-and-host-allocator.js.map +1 -1
  183. package/dist/esm/utils/helpers/api.features.helpers.js +20 -0
  184. package/dist/esm/utils/helpers/api.features.helpers.js.map +1 -1
  185. package/dist/esm/utils/helpers/arkos-config.helpers.js +20 -2
  186. package/dist/esm/utils/helpers/arkos-config.helpers.js.map +1 -1
  187. package/dist/esm/utils/helpers/exit-error.js +1 -0
  188. package/dist/esm/utils/helpers/exit-error.js.map +1 -1
  189. package/dist/esm/utils/helpers/fs.helpers.js +26 -33
  190. package/dist/esm/utils/helpers/fs.helpers.js.map +1 -1
  191. package/dist/esm/utils/helpers/global.helpers.js +1 -1
  192. package/dist/esm/utils/helpers/global.helpers.js.map +1 -1
  193. package/dist/esm/utils/helpers/prisma.helpers.js +10 -7
  194. package/dist/esm/utils/helpers/prisma.helpers.js.map +1 -1
  195. package/dist/esm/utils/helpers/query-parser.helpers.js +7 -22
  196. package/dist/esm/utils/helpers/query-parser.helpers.js.map +1 -1
  197. package/dist/esm/utils/helpers/routers.helpers.js +2 -2
  198. package/dist/esm/utils/helpers/routers.helpers.js.map +1 -1
  199. package/dist/esm/utils/helpers/url-helpers.js +11 -0
  200. package/dist/esm/utils/helpers/url-helpers.js.map +1 -0
  201. package/dist/esm/utils/initialize-app.js +41 -17
  202. package/dist/esm/utils/initialize-app.js.map +1 -1
  203. package/dist/esm/utils/prisma/prisma-json-schema-generator.js +154 -226
  204. package/dist/esm/utils/prisma/prisma-json-schema-generator.js.map +1 -1
  205. package/dist/esm/utils/prisma/prisma-schema-parser.js +37 -11
  206. package/dist/esm/utils/prisma/prisma-schema-parser.js.map +1 -1
  207. package/dist/esm/utils/prisma/types.js.map +1 -1
  208. package/dist/esm/utils/remove-dir.js +1 -1
  209. package/dist/esm/utils/remove-dir.js.map +1 -1
  210. package/dist/esm/utils/setup-app.js +59 -42
  211. package/dist/esm/utils/setup-app.js.map +1 -1
  212. package/dist/esm/utils/validate-schema.js +23 -21
  213. package/dist/esm/utils/validate-schema.js.map +1 -1
  214. package/dist/types/app.d.ts +10 -7
  215. package/dist/types/components/arkos-gateway/arkos-gateway.d.ts +121 -0
  216. package/dist/types/components/arkos-gateway/socket-extensions.d.ts +79 -0
  217. package/dist/types/components/arkos-gateway/types.d.ts +364 -0
  218. package/dist/types/components/arkos-gateway/utils/helpers.d.ts +9 -0
  219. package/dist/types/components/arkos-gateway/utils/memory-gateway-store.d.ts +14 -0
  220. package/dist/types/components/arkos-gateway/utils/multi-tier-arkos-gateway-store.d.ts +20 -0
  221. package/dist/types/components/arkos-gateway/utils/rate-limiter.d.ts +11 -0
  222. package/dist/types/components/arkos-route-hook/index.d.ts +11 -5
  223. package/dist/types/components/arkos-route-hook/reader.d.ts +4 -7
  224. package/dist/types/components/arkos-route-hook/types.d.ts +9 -5
  225. package/dist/types/exports/error-handler/index.d.ts +1 -0
  226. package/dist/types/exports/index.d.ts +5 -5
  227. package/dist/types/exports/middlewares/index.d.ts +1 -1
  228. package/dist/types/exports/services/index.d.ts +3 -3
  229. package/dist/types/exports/websockets.d.ts +5 -0
  230. package/dist/types/modules/auth/auth.service.d.ts +80 -51
  231. package/dist/types/modules/auth/utils/auth-hooks-manager.d.ts +63 -0
  232. package/dist/types/modules/auth/utils/auth-openapi-generator.d.ts +9 -0
  233. package/dist/types/modules/auth/utils/auth-prisma-json-schema-generator.d.ts +13 -0
  234. package/dist/types/modules/auth/utils/docs-links.d.ts +3 -0
  235. package/dist/types/modules/auth/utils/services/auth-action.service.d.ts +2 -2
  236. package/dist/types/modules/base/base.controller.d.ts +4 -4
  237. package/dist/types/modules/base/base.middlewares.d.ts +1 -7
  238. package/dist/types/modules/base/base.service.d.ts +8 -17
  239. package/dist/types/modules/base/types/base.service.types.d.ts +11 -0
  240. package/dist/types/modules/base/utils/helpers/base.service.helpers.d.ts +1 -1
  241. package/dist/types/modules/base/utils/model-openapi-generator.d.ts +12 -0
  242. package/dist/types/modules/email/email.service.d.ts +1 -1
  243. package/dist/types/modules/error-handler/utils/app-error.d.ts +0 -2
  244. package/dist/types/modules/error-handler/utils/catch-async.d.ts +2 -2
  245. package/dist/types/modules/error-handler/utils/error-handler.helpers.d.ts +1 -27
  246. package/dist/types/modules/error-handler/utils/errors.d.ts +176 -0
  247. package/dist/types/modules/error-handler/utils/get-handled-error.d.ts +1 -0
  248. package/dist/types/modules/error-handler/utils/multer-error-handler.d.ts +7 -0
  249. package/dist/types/modules/file-upload/file-upload.controller.d.ts +7 -2
  250. package/dist/types/modules/file-upload/utils/file-upload-json-schema-generator.d.ts +12 -0
  251. package/dist/types/modules/swagger/swagger.router.d.ts +1 -2
  252. package/dist/types/modules/swagger/utils/get-open-api-login-html.d.ts +1 -0
  253. package/dist/types/modules/swagger/utils/helpers/get-swagger-default-configs.d.ts +48 -3
  254. package/dist/types/modules/swagger/utils/helpers/openapi-schema-converter.d.ts +6 -1
  255. package/dist/types/types/arkos-config/utils.d.ts +68 -0
  256. package/dist/types/types/arkos-prisma-input.d.ts +4 -3
  257. package/dist/types/types/arkos.d.ts +5 -15
  258. package/dist/types/types/auth.d.ts +4 -4
  259. package/dist/types/types/index.d.ts +10 -58
  260. package/dist/types/types/new-arkos-config.d.ts +326 -36
  261. package/dist/types/types/router-config.d.ts +0 -63
  262. package/dist/types/types/upload.d.ts +10 -0
  263. package/dist/types/types/validation/validation-manager.d.ts +27 -0
  264. package/dist/types/types/validation/validator.d.ts +2 -0
  265. package/dist/types/utils/arkos-router/arkos-router-openapi-manager.d.ts +14 -1
  266. package/dist/types/utils/arkos-router/index.d.ts +83 -8
  267. package/dist/types/utils/arkos-router/types/index.d.ts +74 -23
  268. package/dist/types/utils/arkos-router/types/openapi-config.d.ts +3 -2
  269. package/dist/types/utils/arkos-router/types/upload-config.d.ts +65 -8
  270. package/dist/types/utils/arkos-router/utils/helpers/apply-arkos-router-proxy.d.ts +6 -0
  271. package/dist/types/utils/arkos-router/utils/helpers/index.d.ts +4 -6
  272. package/dist/types/utils/arkos-router/utils/helpers/upload-manager.d.ts +1 -36
  273. package/dist/types/utils/bundler.d.ts +1 -1
  274. package/dist/types/utils/cli/build.d.ts +1 -1
  275. package/dist/types/utils/cli/generate.d.ts +15 -6
  276. package/dist/types/utils/cli/start.d.ts +3 -1
  277. package/dist/types/utils/cli/utils/template-generator/templates/class-validator-dto-generator.d.ts +11 -0
  278. package/dist/types/utils/cli/utils/template-generator/templates/zod-schema-generator.d.ts +4 -0
  279. package/dist/types/utils/define-config.d.ts +1 -1
  280. package/dist/types/utils/docs-links.d.ts +1 -0
  281. package/dist/types/utils/dynamic-loader.d.ts +2 -2
  282. package/dist/types/utils/features/api.features.d.ts +1 -2
  283. package/dist/types/utils/helpers/arkos-config.helpers.d.ts +7 -0
  284. package/dist/types/utils/helpers/fs.helpers.d.ts +1 -16
  285. package/dist/types/utils/helpers/global.helpers.d.ts +1 -0
  286. package/dist/types/utils/helpers/prisma.helpers.d.ts +1 -1
  287. package/dist/types/utils/helpers/query-parser.helpers.d.ts +1 -1
  288. package/dist/types/utils/helpers/url-helpers.d.ts +1 -0
  289. package/dist/types/utils/initialize-app.d.ts +1 -0
  290. package/dist/types/utils/prisma/prisma-json-schema-generator.d.ts +12 -30
  291. package/dist/types/utils/prisma/prisma-schema-parser.d.ts +4 -0
  292. package/dist/types/utils/prisma/types.d.ts +3 -2
  293. package/package.json +117 -84
  294. package/dist/cjs/app.js +0 -79
  295. package/dist/cjs/app.js.map +0 -1
  296. package/dist/cjs/components/arkos-loadable-registry/index.js +0 -28
  297. package/dist/cjs/components/arkos-loadable-registry/index.js.map +0 -1
  298. package/dist/cjs/components/arkos-loadable-translator/index.js +0 -144
  299. package/dist/cjs/components/arkos-loadable-translator/index.js.map +0 -1
  300. package/dist/cjs/components/arkos-policy/index.js +0 -36
  301. package/dist/cjs/components/arkos-policy/index.js.map +0 -1
  302. package/dist/cjs/components/arkos-policy/types.js +0 -3
  303. package/dist/cjs/components/arkos-policy/types.js.map +0 -1
  304. package/dist/cjs/components/arkos-route-hook/index.js +0 -50
  305. package/dist/cjs/components/arkos-route-hook/index.js.map +0 -1
  306. package/dist/cjs/components/arkos-route-hook/reader.js +0 -47
  307. package/dist/cjs/components/arkos-route-hook/reader.js.map +0 -1
  308. package/dist/cjs/components/arkos-route-hook/types.js +0 -3
  309. package/dist/cjs/components/arkos-route-hook/types.js.map +0 -1
  310. package/dist/cjs/components/arkos-service-hook/index.js +0 -35
  311. package/dist/cjs/components/arkos-service-hook/index.js.map +0 -1
  312. package/dist/cjs/components/arkos-service-hook/reader.js +0 -30
  313. package/dist/cjs/components/arkos-service-hook/reader.js.map +0 -1
  314. package/dist/cjs/components/arkos-service-hook/types.js +0 -3
  315. package/dist/cjs/components/arkos-service-hook/types.js.map +0 -1
  316. package/dist/cjs/exports/auth/index.js +0 -6
  317. package/dist/cjs/exports/auth/index.js.map +0 -1
  318. package/dist/cjs/exports/config.js +0 -6
  319. package/dist/cjs/exports/config.js.map +0 -1
  320. package/dist/cjs/exports/controllers/index.js +0 -42
  321. package/dist/cjs/exports/controllers/index.js.map +0 -1
  322. package/dist/cjs/exports/error-handler/index.js +0 -11
  323. package/dist/cjs/exports/error-handler/index.js.map +0 -1
  324. package/dist/cjs/exports/index.js +0 -23
  325. package/dist/cjs/exports/index.js.map +0 -1
  326. package/dist/cjs/exports/middlewares/index.js +0 -7
  327. package/dist/cjs/exports/middlewares/index.js.map +0 -1
  328. package/dist/cjs/exports/prisma/index.js +0 -13
  329. package/dist/cjs/exports/prisma/index.js.map +0 -1
  330. package/dist/cjs/exports/services/index.js +0 -53
  331. package/dist/cjs/exports/services/index.js.map +0 -1
  332. package/dist/cjs/exports/utils/index.js +0 -26
  333. package/dist/cjs/exports/utils/index.js.map +0 -1
  334. package/dist/cjs/exports/validation/index.js +0 -11
  335. package/dist/cjs/exports/validation/index.js.map +0 -1
  336. package/dist/cjs/generated.js +0 -7
  337. package/dist/cjs/generated.js.map +0 -1
  338. package/dist/cjs/modules/auth/auth.controller.js +0 -254
  339. package/dist/cjs/modules/auth/auth.controller.js.map +0 -1
  340. package/dist/cjs/modules/auth/auth.router.js +0 -113
  341. package/dist/cjs/modules/auth/auth.router.js.map +0 -1
  342. package/dist/cjs/modules/auth/auth.service.js +0 -277
  343. package/dist/cjs/modules/auth/auth.service.js.map +0 -1
  344. package/dist/cjs/modules/auth/utils/auth-error-objects.js +0 -10
  345. package/dist/cjs/modules/auth/utils/auth-error-objects.js.map +0 -1
  346. package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js +0 -83
  347. package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js.map +0 -1
  348. package/dist/cjs/modules/auth/utils/services/auth-action.service.js +0 -150
  349. package/dist/cjs/modules/auth/utils/services/auth-action.service.js.map +0 -1
  350. package/dist/cjs/modules/base/base.controller.js +0 -275
  351. package/dist/cjs/modules/base/base.controller.js.map +0 -1
  352. package/dist/cjs/modules/base/base.middlewares.js +0 -231
  353. package/dist/cjs/modules/base/base.middlewares.js.map +0 -1
  354. package/dist/cjs/modules/base/base.router.js +0 -112
  355. package/dist/cjs/modules/base/base.router.js.map +0 -1
  356. package/dist/cjs/modules/base/base.service.js +0 -432
  357. package/dist/cjs/modules/base/base.service.js.map +0 -1
  358. package/dist/cjs/modules/base/types/base.service.types.js +0 -3
  359. package/dist/cjs/modules/base/types/base.service.types.js.map +0 -1
  360. package/dist/cjs/modules/base/utils/error-prettifier.js +0 -188
  361. package/dist/cjs/modules/base/utils/error-prettifier.js.map +0 -1
  362. package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js +0 -49
  363. package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js.map +0 -1
  364. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +0 -13
  365. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js.map +0 -1
  366. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +0 -222
  367. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js.map +0 -1
  368. package/dist/cjs/modules/base/utils/router-validator.js +0 -13
  369. package/dist/cjs/modules/base/utils/router-validator.js.map +0 -1
  370. package/dist/cjs/modules/base/utils/service-hooks-manager.js +0 -19
  371. package/dist/cjs/modules/base/utils/service-hooks-manager.js.map +0 -1
  372. package/dist/cjs/modules/debugger/debugger.service.js +0 -59
  373. package/dist/cjs/modules/debugger/debugger.service.js.map +0 -1
  374. package/dist/cjs/modules/email/email.service.js +0 -106
  375. package/dist/cjs/modules/email/email.service.js.map +0 -1
  376. package/dist/cjs/modules/error-handler/error-handler.controller.js +0 -192
  377. package/dist/cjs/modules/error-handler/error-handler.controller.js.map +0 -1
  378. package/dist/cjs/modules/error-handler/utils/app-error.js +0 -28
  379. package/dist/cjs/modules/error-handler/utils/app-error.js.map +0 -1
  380. package/dist/cjs/modules/error-handler/utils/catch-async.js +0 -21
  381. package/dist/cjs/modules/error-handler/utils/catch-async.js.map +0 -1
  382. package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js +0 -218
  383. package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js.map +0 -1
  384. package/dist/cjs/modules/file-upload/file-upload.controller.js +0 -256
  385. package/dist/cjs/modules/file-upload/file-upload.controller.js.map +0 -1
  386. package/dist/cjs/modules/file-upload/file-upload.router.js +0 -80
  387. package/dist/cjs/modules/file-upload/file-upload.router.js.map +0 -1
  388. package/dist/cjs/modules/file-upload/file-upload.service.js +0 -343
  389. package/dist/cjs/modules/file-upload/file-upload.service.js.map +0 -1
  390. package/dist/cjs/modules/file-upload/utils/helpers/file-extensions.js +0 -134
  391. package/dist/cjs/modules/file-upload/utils/helpers/file-extensions.js.map +0 -1
  392. package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js +0 -100
  393. package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js.map +0 -1
  394. package/dist/cjs/modules/swagger/swagger.router.js +0 -65
  395. package/dist/cjs/modules/swagger/swagger.router.js.map +0 -1
  396. package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js +0 -7
  397. package/dist/cjs/modules/swagger/utils/built-in-route-path-object-manager.js.map +0 -1
  398. package/dist/cjs/modules/swagger/utils/helpers/class-validator-to-json-schema.js +0 -53
  399. package/dist/cjs/modules/swagger/utils/helpers/class-validator-to-json-schema.js.map +0 -1
  400. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +0 -473
  401. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +0 -1
  402. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +0 -491
  403. package/dist/cjs/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +0 -1
  404. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +0 -73
  405. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js.map +0 -1
  406. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +0 -37
  407. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +0 -1
  408. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +0 -61
  409. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +0 -1
  410. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +0 -31
  411. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +0 -1
  412. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +0 -49
  413. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +0 -1
  414. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +0 -39
  415. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +0 -1
  416. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +0 -468
  417. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +0 -1
  418. package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js +0 -260
  419. package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +0 -1
  420. package/dist/cjs/modules/swagger/utils/helpers/openapi-schema-converter.js +0 -331
  421. package/dist/cjs/modules/swagger/utils/helpers/openapi-schema-converter.js.map +0 -1
  422. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +0 -109
  423. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js.map +0 -1
  424. package/dist/cjs/package.json +0 -3
  425. package/dist/cjs/server.js +0 -60
  426. package/dist/cjs/server.js.map +0 -1
  427. package/dist/cjs/types/arkos-prisma-input.js +0 -3
  428. package/dist/cjs/types/arkos-prisma-input.js.map +0 -1
  429. package/dist/cjs/types/arkos.js +0 -3
  430. package/dist/cjs/types/arkos.js.map +0 -1
  431. package/dist/cjs/types/auth.js +0 -3
  432. package/dist/cjs/types/auth.js.map +0 -1
  433. package/dist/cjs/types/index.js +0 -3
  434. package/dist/cjs/types/index.js.map +0 -1
  435. package/dist/cjs/types/new-arkos-config.js +0 -3
  436. package/dist/cjs/types/new-arkos-config.js.map +0 -1
  437. package/dist/cjs/types/router-config.js +0 -3
  438. package/dist/cjs/types/router-config.js.map +0 -1
  439. package/dist/cjs/utils/arkos-env.js +0 -9
  440. package/dist/cjs/utils/arkos-env.js.map +0 -1
  441. package/dist/cjs/utils/arkos-router/arkos-router-openapi-manager.js +0 -126
  442. package/dist/cjs/utils/arkos-router/arkos-router-openapi-manager.js.map +0 -1
  443. package/dist/cjs/utils/arkos-router/index.js +0 -253
  444. package/dist/cjs/utils/arkos-router/index.js.map +0 -1
  445. package/dist/cjs/utils/arkos-router/route-config-registry.js +0 -16
  446. package/dist/cjs/utils/arkos-router/route-config-registry.js.map +0 -1
  447. package/dist/cjs/utils/arkos-router/route-config-validator.js +0 -56
  448. package/dist/cjs/utils/arkos-router/route-config-validator.js.map +0 -1
  449. package/dist/cjs/utils/arkos-router/types/body-parser-config.js +0 -3
  450. package/dist/cjs/utils/arkos-router/types/body-parser-config.js.map +0 -1
  451. package/dist/cjs/utils/arkos-router/types/index.js +0 -3
  452. package/dist/cjs/utils/arkos-router/types/index.js.map +0 -1
  453. package/dist/cjs/utils/arkos-router/types/openapi-config.js +0 -3
  454. package/dist/cjs/utils/arkos-router/types/openapi-config.js.map +0 -1
  455. package/dist/cjs/utils/arkos-router/types/upload-config.js +0 -3
  456. package/dist/cjs/utils/arkos-router/types/upload-config.js.map +0 -1
  457. package/dist/cjs/utils/arkos-router/utils/helpers/index.js +0 -163
  458. package/dist/cjs/utils/arkos-router/utils/helpers/index.js.map +0 -1
  459. package/dist/cjs/utils/arkos-router/utils/helpers/upload-manager.js +0 -283
  460. package/dist/cjs/utils/arkos-router/utils/helpers/upload-manager.js.map +0 -1
  461. package/dist/cjs/utils/bundler.js +0 -163
  462. package/dist/cjs/utils/bundler.js.map +0 -1
  463. package/dist/cjs/utils/cli/build.js +0 -199
  464. package/dist/cjs/utils/cli/build.js.map +0 -1
  465. package/dist/cjs/utils/cli/dev.js +0 -128
  466. package/dist/cjs/utils/cli/dev.js.map +0 -1
  467. package/dist/cjs/utils/cli/export-auth-action.js +0 -79
  468. package/dist/cjs/utils/cli/export-auth-action.js.map +0 -1
  469. package/dist/cjs/utils/cli/generate.js +0 -229
  470. package/dist/cjs/utils/cli/generate.js.map +0 -1
  471. package/dist/cjs/utils/cli/index.js +0 -191
  472. package/dist/cjs/utils/cli/index.js.map +0 -1
  473. package/dist/cjs/utils/cli/prisma-generate.js +0 -112
  474. package/dist/cjs/utils/cli/prisma-generate.js.map +0 -1
  475. package/dist/cjs/utils/cli/start.js +0 -72
  476. package/dist/cjs/utils/cli/start.js.map +0 -1
  477. package/dist/cjs/utils/cli/utils/cli.helpers.js +0 -24
  478. package/dist/cjs/utils/cli/utils/cli.helpers.js.map +0 -1
  479. package/dist/cjs/utils/cli/utils/runtime-cli-commander.js +0 -115
  480. package/dist/cjs/utils/cli/utils/runtime-cli-commander.js.map +0 -1
  481. package/dist/cjs/utils/cli/utils/smart-fs-watcher.js +0 -73
  482. package/dist/cjs/utils/cli/utils/smart-fs-watcher.js.map +0 -1
  483. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js +0 -550
  484. package/dist/cjs/utils/cli/utils/template-generator/templates/class-validator-dto-generator.js.map +0 -1
  485. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -52
  486. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
  487. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-multiple-components.js +0 -139
  488. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-multiple-components.js.map +0 -1
  489. package/dist/cjs/utils/cli/utils/template-generator/templates/policy-template.js +0 -53
  490. package/dist/cjs/utils/cli/utils/template-generator/templates/policy-template.js.map +0 -1
  491. package/dist/cjs/utils/cli/utils/template-generator/templates/route-hook.template.js +0 -39
  492. package/dist/cjs/utils/cli/utils/template-generator/templates/route-hook.template.js.map +0 -1
  493. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js +0 -19
  494. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js.map +0 -1
  495. package/dist/cjs/utils/cli/utils/template-generator/templates/service-hook.template.js +0 -32
  496. package/dist/cjs/utils/cli/utils/template-generator/templates/service-hook.template.js.map +0 -1
  497. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js +0 -50
  498. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js.map +0 -1
  499. package/dist/cjs/utils/cli/utils/template-generator/templates/zod-schema-generator.js +0 -351
  500. package/dist/cjs/utils/cli/utils/template-generator/templates/zod-schema-generator.js.map +0 -1
  501. package/dist/cjs/utils/cli/utils/template-generators.js +0 -52
  502. package/dist/cjs/utils/cli/utils/template-generators.js.map +0 -1
  503. package/dist/cjs/utils/cli/utils/watermark-stamper.js +0 -26
  504. package/dist/cjs/utils/cli/utils/watermark-stamper.js.map +0 -1
  505. package/dist/cjs/utils/define-config.js +0 -46
  506. package/dist/cjs/utils/define-config.js.map +0 -1
  507. package/dist/cjs/utils/dotenv.helpers.js +0 -52
  508. package/dist/cjs/utils/dotenv.helpers.js.map +0 -1
  509. package/dist/cjs/utils/dynamic-loader.js +0 -22
  510. package/dist/cjs/utils/dynamic-loader.js.map +0 -1
  511. package/dist/cjs/utils/expand-env.js +0 -72
  512. package/dist/cjs/utils/expand-env.js.map +0 -1
  513. package/dist/cjs/utils/features/api.features.js +0 -201
  514. package/dist/cjs/utils/features/api.features.js.map +0 -1
  515. package/dist/cjs/utils/features/port-and-host-allocator.js +0 -129
  516. package/dist/cjs/utils/features/port-and-host-allocator.js.map +0 -1
  517. package/dist/cjs/utils/helpers/api.features.helpers.js +0 -327
  518. package/dist/cjs/utils/helpers/api.features.helpers.js.map +0 -1
  519. package/dist/cjs/utils/helpers/arkos-config.helpers.js +0 -86
  520. package/dist/cjs/utils/helpers/arkos-config.helpers.js.map +0 -1
  521. package/dist/cjs/utils/helpers/change-case.helpers.js +0 -177
  522. package/dist/cjs/utils/helpers/change-case.helpers.js.map +0 -1
  523. package/dist/cjs/utils/helpers/deepmerge.helper.js +0 -115
  524. package/dist/cjs/utils/helpers/deepmerge.helper.js.map +0 -1
  525. package/dist/cjs/utils/helpers/exit-error.js +0 -12
  526. package/dist/cjs/utils/helpers/exit-error.js.map +0 -1
  527. package/dist/cjs/utils/helpers/fs.helpers.js +0 -60
  528. package/dist/cjs/utils/helpers/fs.helpers.js.map +0 -1
  529. package/dist/cjs/utils/helpers/global.helpers.js +0 -105
  530. package/dist/cjs/utils/helpers/global.helpers.js.map +0 -1
  531. package/dist/cjs/utils/helpers/prisma.helpers.js +0 -53
  532. package/dist/cjs/utils/helpers/prisma.helpers.js.map +0 -1
  533. package/dist/cjs/utils/helpers/query-parser.helpers.js +0 -69
  534. package/dist/cjs/utils/helpers/query-parser.helpers.js.map +0 -1
  535. package/dist/cjs/utils/helpers/routers.helpers.js +0 -36
  536. package/dist/cjs/utils/helpers/routers.helpers.js.map +0 -1
  537. package/dist/cjs/utils/helpers/text.helpers.js +0 -28
  538. package/dist/cjs/utils/helpers/text.helpers.js.map +0 -1
  539. package/dist/cjs/utils/initialize-app.js +0 -55
  540. package/dist/cjs/utils/initialize-app.js.map +0 -1
  541. package/dist/cjs/utils/prisma/prisma-json-schema-generator.js +0 -437
  542. package/dist/cjs/utils/prisma/prisma-json-schema-generator.js.map +0 -1
  543. package/dist/cjs/utils/prisma/prisma-schema-parser.js +0 -360
  544. package/dist/cjs/utils/prisma/prisma-schema-parser.js.map +0 -1
  545. package/dist/cjs/utils/prisma/types.js +0 -3
  546. package/dist/cjs/utils/prisma/types.js.map +0 -1
  547. package/dist/cjs/utils/remove-dir.js +0 -14
  548. package/dist/cjs/utils/remove-dir.js.map +0 -1
  549. package/dist/cjs/utils/setup-app.js +0 -119
  550. package/dist/cjs/utils/setup-app.js.map +0 -1
  551. package/dist/cjs/utils/sheu.js +0 -131
  552. package/dist/cjs/utils/sheu.js.map +0 -1
  553. package/dist/cjs/utils/validate-dto.js +0 -19
  554. package/dist/cjs/utils/validate-dto.js.map +0 -1
  555. package/dist/cjs/utils/validate-schema.js +0 -75
  556. package/dist/cjs/utils/validate-schema.js.map +0 -1
  557. package/dist/esm/components/arkos-loadable-translator/index.js +0 -138
  558. package/dist/esm/components/arkos-loadable-translator/index.js.map +0 -1
  559. package/dist/esm/components/arkos-service-hook/index.js +0 -32
  560. package/dist/esm/components/arkos-service-hook/index.js.map +0 -1
  561. package/dist/esm/components/arkos-service-hook/reader.js +0 -24
  562. package/dist/esm/components/arkos-service-hook/reader.js.map +0 -1
  563. package/dist/esm/components/arkos-service-hook/types.js +0 -2
  564. package/dist/esm/components/arkos-service-hook/types.js.map +0 -1
  565. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js +0 -10
  566. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js.map +0 -1
  567. package/dist/esm/modules/base/utils/service-hooks-manager.js +0 -17
  568. package/dist/esm/modules/base/utils/service-hooks-manager.js.map +0 -1
  569. package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js +0 -5
  570. package/dist/esm/modules/swagger/utils/built-in-route-path-object-manager.js.map +0 -1
  571. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +0 -469
  572. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js.map +0 -1
  573. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js +0 -485
  574. package/dist/esm/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.js.map +0 -1
  575. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +0 -34
  576. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js.map +0 -1
  577. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +0 -55
  578. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +0 -1
  579. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +0 -25
  580. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js.map +0 -1
  581. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +0 -46
  582. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js.map +0 -1
  583. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +0 -33
  584. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js.map +0 -1
  585. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +0 -462
  586. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js.map +0 -1
  587. package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js +0 -255
  588. package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +0 -1
  589. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +0 -98
  590. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js.map +0 -1
  591. package/dist/esm/utils/cli/utils/template-generator/templates/route-hook.template.js +0 -36
  592. package/dist/esm/utils/cli/utils/template-generator/templates/route-hook.template.js.map +0 -1
  593. package/dist/esm/utils/cli/utils/template-generator/templates/service-hook.template.js +0 -29
  594. package/dist/esm/utils/cli/utils/template-generator/templates/service-hook.template.js.map +0 -1
  595. package/dist/types/components/arkos-loadable-translator/index.d.ts +0 -53
  596. package/dist/types/components/arkos-service-hook/index.d.ts +0 -41
  597. package/dist/types/components/arkos-service-hook/reader.d.ts +0 -35
  598. package/dist/types/components/arkos-service-hook/types.d.ts +0 -240
  599. package/dist/types/modules/base/utils/helpers/base.router.helpers.d.ts +0 -3
  600. package/dist/types/modules/base/utils/service-hooks-manager.d.ts +0 -10
  601. package/dist/types/modules/swagger/utils/built-in-route-path-object-manager.d.ts +0 -4
  602. package/dist/types/modules/swagger/utils/helpers/get-authentication-json-schema-paths.d.ts +0 -5
  603. package/dist/types/modules/swagger/utils/helpers/get-file-upload-json-schema-paths.d.ts +0 -3
  604. package/dist/types/modules/swagger/utils/helpers/get-system-json-schema-paths.d.ts +0 -2
  605. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.d.ts +0 -1
  606. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.d.ts +0 -1
  607. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.d.ts +0 -4
  608. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.d.ts +0 -1
  609. package/dist/types/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.d.ts +0 -2
  610. package/dist/types/modules/swagger/utils/helpers/missing-json-schemas-generator.d.ts +0 -76
  611. package/dist/types/modules/swagger/utils/helpers/swagger.router.helpers.d.ts +0 -19
  612. package/dist/types/utils/cli/utils/template-generator/templates/route-hook.template.d.ts +0 -2
  613. package/dist/types/utils/cli/utils/template-generator/templates/service-hook.template.d.ts +0 -2
@@ -1,5 +1,5 @@
1
1
  import cors from "cors";
2
- import express from "express";
2
+ import express, { CookieOptions } from "express";
3
3
  import { Options as RateLimitOptions } from "express-rate-limit";
4
4
  import cookieParser from "cookie-parser";
5
5
  import compression from "compression";
@@ -11,16 +11,52 @@ import type { ApiReferenceConfiguration } from "@scalar/express-api-reference" w
11
11
  import nodemailer from "nodemailer";
12
12
  import { ArkosRequestHandler } from ".";
13
13
  import { PrismaClient } from "../generated";
14
+ import { AuthenticateHookHandler, AuthenticateAfterHookHandler, AuthenticateErrorHookHandler, AuthorizeHookHandler, AuthorizeAfterHookHandler, AuthorizeErrorHookHandler } from "./arkos-config/utils";
14
15
  /**
15
16
  * Defines the initial configs of the api to be loaded at startup when arkos.init() is called.
16
17
  */
17
18
  export type ArkosConfig = {
19
+ /**
20
+ * Configuration for resolving your Arkos application's source files at runtime.
21
+ *
22
+ * @since 1.6.1-canary.2
23
+ *
24
+ */
25
+ source?: {
26
+ /**
27
+ * The entry point file of your Arkos application, resolved at runtime.
28
+ *
29
+ * This should point to the file where `app.listen()` or `app.listen(server)`
30
+ * is called to start the HTTP server.
31
+ *
32
+ * Supports both TypeScript and JavaScript projects.
33
+ *
34
+ * @type {string}
35
+ *
36
+ * @default "src/app.ts" (TypeScript) | "src/app.js" (JavaScript)
37
+ *
38
+ * @since 1.6.1-canary.2
39
+ *
40
+ * @example
41
+ * ```ts
42
+ * // TypeScript project
43
+ * entryPoint: "src/app.ts"
44
+ *
45
+ * // JavaScript project
46
+ * entryPoint: "src/app.js"
47
+ *
48
+ * // Custom path
49
+ * entryPoint: "src/server/main.ts"
50
+ * ```
51
+ */
52
+ entryPoint?: string;
53
+ };
18
54
  /**
19
55
  * The global prefixer for the whole application
20
56
  *
21
57
  * @default "/api"
22
58
  */
23
- globalPrefix?: string;
59
+ readonly globalPrefix?: string;
24
60
  /**
25
61
  * Allows to configure request configs
26
62
  */
@@ -66,14 +102,137 @@ export type ArkosConfig = {
66
102
  /**
67
103
  * Defines authentication related configurations, by default is undefined.
68
104
  *
69
- * See [www.arkosjs.com/docs/core-concepts/authentication-system](https://www.arkosjs.com/docs/core-concepts/authentication-system) for details.
105
+ * See [www.arkosjs.com/docs/core-concepts/authentication/setup](https://www.arkosjs.com/docs/core-concepts/authentication/setup) for details.
70
106
  */
71
107
  authentication?: {
108
+ /**
109
+ * Lifecycle hooks for the built-in authentication and authorization pipeline.
110
+ *
111
+ * These hooks only apply to **auto-generated Arkos routes**. On custom routes using
112
+ * `authService.authenticate` directly, chain them manually as standard middlewares.
113
+ *
114
+ * Hooks run as standard Express middlewares — call `next()` to continue or
115
+ * `next(error)` to abort and forward to the global error handler.
116
+ *
117
+ * @see {@link https://www.arkosjs.com/docs/core-concepts/authentication/hooks}
118
+ */
119
+ hooks?: {
120
+ authenticate?: {
121
+ /**
122
+ * Runs before JWT extraction and verification.
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * before: ({ req, skip, action, resource, rule }) => {
127
+ * req.authContext = { startedAt: Date.now() };
128
+ * }
129
+ * ```
130
+ *
131
+ * @example Skip core logic entirely (e.g. custom auth)
132
+ * ```ts
133
+ * before: ({ req, skip, action, resource, rule }) => {
134
+ * req.user = myCustomAuth(req);
135
+ * skip();
136
+ * }
137
+ * ```
138
+ */
139
+ before?: AuthenticateHookHandler | AuthenticateHookHandler[];
140
+ /**
141
+ * Runs after `req.user` has been set.
142
+ *
143
+ * @example
144
+ * ```ts
145
+ * after: ({ req }) => {
146
+ * if (!req.user.hasChangedPassword) {
147
+ * throw new AppError("Password change required.", 403, "PasswordChangeRequired");
148
+ * }
149
+ * }
150
+ * ```
151
+ */
152
+ after?: AuthenticateAfterHookHandler | AuthenticateAfterHookHandler[];
153
+ /**
154
+ * Runs when authentication throws — invalid token, expired token, user not found, etc.
155
+ * Throw to forward to the global error handler, or call `skip()` to suppress and jump to `after` hooks.
156
+ *
157
+ * @example
158
+ * ```ts
159
+ * onError: ({ req, error, skip, action, resource, rule }) => {
160
+ * console.warn(`Auth failed:`, error);
161
+ * throw error;
162
+ * }
163
+ * ```
164
+ *
165
+ * @example Suppress error and continue
166
+ * ```ts
167
+ * onError: ({ req, skip, action, resource, rule }) => {
168
+ * req.user = guestUser;
169
+ * skip();
170
+ * }
171
+ * ```
172
+ */
173
+ onError?: AuthenticateErrorHookHandler | AuthenticateErrorHookHandler[];
174
+ };
175
+ authorize?: {
176
+ /**
177
+ * Runs before the role/permission check.
178
+ *
179
+ * @example
180
+ * ```ts
181
+ * before: ({ req }) => {
182
+ * if (req.headers["x-elevated-access"] === process.env.ELEVATION_KEY) {
183
+ * req.user.role = "admin";
184
+ * }
185
+ * }
186
+ * ```
187
+ *
188
+ * @example Skip permission check entirely
189
+ * ```ts
190
+ * before: ({ req, skip, action, resource, rule }) => {
191
+ * req.user.role = myCustomRoleResolver(req);
192
+ * skip();
193
+ * }
194
+ * ```
195
+ */
196
+ before?: AuthorizeHookHandler | AuthorizeHookHandler[];
197
+ /**
198
+ * Runs after the permission check passes.
199
+ *
200
+ * @example
201
+ * ```ts
202
+ * after: ({ req }) => {
203
+ * auditLog.record({ userId: req.user.id, path: req.path });
204
+ * }
205
+ * ```
206
+ */
207
+ after?: AuthorizeAfterHookHandler | AuthorizeAfterHookHandler[];
208
+ /**
209
+ * Runs when the user lacks sufficient permissions (403).
210
+ * Throw to forward to the global error handler, or call `skip()` to suppress and jump to `after` hooks.
211
+ *
212
+ * @example
213
+ * ```ts
214
+ * onError: ({ req, error, action, resource, rule }) => {
215
+ * auditLog.record({ userId: req.user?.id, reason: "insufficient_permissions" });
216
+ * throw error;
217
+ * }
218
+ * ```
219
+ *
220
+ * @example Suppress error and continue
221
+ * ```ts
222
+ * onError: ({ req, skip, action, resource, rule }) => {
223
+ * req.user.role = "guest";
224
+ * skip();
225
+ * }
226
+ * ```
227
+ */
228
+ onError?: AuthorizeErrorHookHandler | AuthorizeErrorHookHandler[];
229
+ };
230
+ };
72
231
  enabled?: boolean;
73
232
  /**
74
233
  * Defines whether to use Static or Dynamic Role-Based Acess Control
75
234
  *
76
- * Visit [www.arkosjs.com/docs/core-concepts/authentication-system](https://www.arkosjs.com/docs/core-concepts/authentication-system) for more details.
235
+ * Visit [www.arkosjs.com/docs/core-concepts/authentication/setup](https://www.arkosjs.com/docs/core-concepts/authentication/setup) for more details.
77
236
  */
78
237
  mode: "static" | "dynamic";
79
238
  /**
@@ -96,7 +255,7 @@ export type ArkosConfig = {
96
255
  * POST /api/auth/login?usernameField=email
97
256
  * ```
98
257
  *
99
- * See more at [www.arkosjs.com/docs/core-concepts/authentication-system#login-with-different-fileds](https://www.arkosjs.com/docs/core-concepts/authentication-system#login-with-different-fileds)
258
+ * See more at [www.arkosjs.com/docs/core-concepts/authentication/setup#login-with-different-fileds](https://www.arkosjs.com/docs/core-concepts/authentication/setup#login-with-different-fileds)
100
259
  *
101
260
  * By specifing here another field for username, for example passing "email", "companyCode" or something else your json will be like:
102
261
  *
@@ -113,19 +272,6 @@ export type ArkosConfig = {
113
272
  /** Defines wether to send the access token in response after login or only send as cookie, defeault is both.*/
114
273
  sendAccessTokenThrough?: "cookie-only" | "response-only" | "both";
115
274
  };
116
- /**
117
- * Specifies the regex pattern used by the authentication system to enforce password strength requirements.
118
- *
119
- * **Important**: If using validation libraries like Zod or class-validator, this will be completely overwritten.
120
- *
121
- * **Default**: ```/^(?=.*[A-Z])(?=.*[a-z])(?=.*\d).+$/``` - Ensures the password contains at least one uppercase letter, one lowercase letter, and one numeric digit.
122
- *
123
- * **message**: (Optional) A custom error message to display when the password does not meet the required strength criteria.
124
- */
125
- passwordValidation?: {
126
- regex: RegExp;
127
- message?: string;
128
- };
129
275
  /**
130
276
  * Allows to specify the request rate limit for all authentication endpoints but `/api/users/me`.
131
277
  *
@@ -172,20 +318,42 @@ export type ArkosConfig = {
172
318
  /**
173
319
  * Whether the cookie should be marked as secure (sent only over HTTPS).
174
320
  * Defaults to `true` in production and `false` in development.
321
+ *
322
+ * @env `JWT_COOKIE_SECURE`
175
323
  */
176
324
  secure?: boolean;
177
325
  /**
178
326
  * Whether the cookie should be marked as HTTP-only.
179
327
  * Default is `true` to prevent access via JavaScript.
328
+ *
329
+ * @env `JWT_COOKIE_HTTP_ONLY`
180
330
  */
181
331
  httpOnly?: boolean;
182
332
  /**
183
333
  * Controls the SameSite attribute of the cookie.
184
334
  * Defaults to "none" in production and "lax" in development.
185
335
  * Options: "lax" | "strict" | "none"
336
+ *
337
+ * @env `JWT_COOKIE_SAME_SITE`
186
338
  */
187
339
  sameSite?: "lax" | "strict" | "none";
188
- };
340
+ /**
341
+ * Expiry date of the cookie in GMT. If not specified (undefined), creates a session cookie.
342
+ *
343
+ * @default `now() + authentication.jwt.expireIn | JWT_EXPIRES_IN`
344
+ *
345
+ * @since 1.5.11-beta
346
+ */
347
+ expires?: Date | undefined;
348
+ /**
349
+ * Domain for the cookie. Use a leading dot (e.g. `.example.com`) to include all subdomains.
350
+ *
351
+ * @env `JWT_COOKIE_DOMAIN`
352
+ *
353
+ * @since 1.5.11-beta
354
+ */
355
+ domain?: string | undefined;
356
+ } & Omit<CookieOptions, "secure" | "httpOnly" | "sameSite" | "expires" | "domain">;
189
357
  };
190
358
  };
191
359
  /** Allows to customize and toggle the built-in validation, by default it is set to `false`. If true is passed it will use validation with the default resolver set to `class-validator` if you intend to change the resolver to `zod` do the following:
@@ -201,7 +369,7 @@ export type ArkosConfig = {
201
369
  * })
202
370
  * ```
203
371
  *
204
- * @See [www.arkosjs.com/docs/core-concepts/request-data-validation](https://www.arkosjs.com/docs/core-concepts/request-data-validation) for more details.
372
+ * @See [www.arkosjs.com/docs/guides/validation/setup](https://www.arkosjs.com/docs/guides/validation/setup) for more details.
205
373
  */
206
374
  validation?: {
207
375
  /**
@@ -225,6 +393,8 @@ export type ArkosConfig = {
225
393
  * })
226
394
  *
227
395
  * ```
396
+ *
397
+ * @since 1.4.0-beta
228
398
  */
229
399
  strict?: boolean;
230
400
  } & ({
@@ -243,6 +413,9 @@ export type ArkosConfig = {
243
413
  validationOptions?: ValidatorOptions;
244
414
  } | {
245
415
  resolver: "zod";
416
+ /**
417
+ * @since v1.5.0-beta
418
+ */
246
419
  validationOptions?: {
247
420
  /**
248
421
  * Throws an error for know whitelisted fields
@@ -255,9 +428,15 @@ export type ArkosConfig = {
255
428
  /**
256
429
  * Defines file upload configurations
257
430
  *
258
- * See [www.arkosjs.com/docs/core-concepts/file-upload#costum-configurations](https://www.arkosjs.com/docs/core-concepts/file-upload#costum-configurations)
431
+ * See {@link https://www.arkosjs.com/docs/guides/file-handling/file-uploads/setup}
259
432
  */
260
433
  fileUpload?: {
434
+ /**
435
+ * Disables built-in file upload
436
+ *
437
+ * @since 1.5.11-beta
438
+ */
439
+ enabled?: boolean;
261
440
  /**
262
441
  * Defiens the base file upload directory, default is set to /uploads (on root directory)
263
442
  *
@@ -292,7 +471,7 @@ export type ArkosConfig = {
292
471
  etag: true,
293
472
  lastModified: true,
294
473
  dotfiles: "ignore",
295
- fallthrough: true,
474
+ fallthrough: false,
296
475
  index: false,
297
476
  cacheControl: true,
298
477
  }
@@ -312,7 +491,7 @@ export type ArkosConfig = {
312
491
  * Passing an object without overriding everything will only cause it
313
492
  * to be deepmerged with the default options.
314
493
  *
315
- * See [www.arkosjs.com/docs/api-reference/default-supported-upload-files](https://www.arkosjs.com/docs/api-reference/default-supported-upload-files) for detailed explanation about default values.
494
+ * See [www.arkosjs.com/docs/reference/default-supported-upload-files](https://www.arkosjs.com/docs/reference/default-supported-upload-files) for detailed explanation about default values.
316
495
  * ```
317
496
  */
318
497
  restrictions?: {
@@ -371,25 +550,35 @@ export type ArkosConfig = {
371
550
  /**
372
551
  * Configuration for CORS (Cross-Origin Resource Sharing).
373
552
  *
374
- * @property {string | string[] | "all"} [allowedOrigins] - List of allowed origins. If set to `"all"`, all origins are accepted.
375
- * @property {import('cors').CorsOptions} [options] - Additional CORS options passed directly to the `cors` middleware.
376
- * @property {import('cors').CorsOptionsDelegate} [customHandler] - A custom middleware function that overrides the default behavior.
553
+ * Accepts:
554
+ * - `false` disables CORS middleware entirely.
555
+ * - `cors.CorsOptions` passed directly to the `cors` middleware.
556
+ * - `cors.CorsOptionsDelegate` — a delegate function passed directly to the `cors` middleware.
557
+ * - `ArkosRequestHandler` — a full Express middleware that replaces the cors middleware entirely.
558
+ * - An object with deprecated `allowedOrigins`, `options`, and `customHandler` properties.
377
559
  *
378
- * @remarks
379
- * If `customHandler` is provided, both `allowedOrigins` and `options` will be ignored in favor of the custom logic.
560
+ * In development, defaults to `origin: true, credentials: true`.
561
+ * In production, defaults to `origin: "*"` (equivalent to plain `cors()`).
380
562
  *
381
563
  * See https://www.npmjs.com/package/cors
382
564
  */
383
- cors?: false | {
565
+ cors?: false | cors.CorsOptions | cors.CorsOptionsDelegate | {
566
+ /**
567
+ * Defines allowed origins to access the API.
568
+ *
569
+ * @deprecated Use `cors: { origin: string | string[] }` (cors.CorsOptions) directly instead.
570
+ */
571
+ allowedOrigins?: string | string[] | "*" | true;
384
572
  /**
385
- * Defines allowed origins to acess the API.
573
+ * Additional cors options.
574
+ *
575
+ * @deprecated Pass cors.CorsOptions directly instead: `cors: { origin: "...", credentials: true }`.
386
576
  */
387
- allowedOrigins?: string | string[] | "*";
388
577
  options?: cors.CorsOptions;
389
578
  /**
390
- * If you would like to override the entire middleware
579
+ * If you would like to override the entire middleware.
391
580
  *
392
- * see
581
+ * @deprecated Pass the handler directly instead: `cors: myCorsHandler`.
393
582
  */
394
583
  customHandler?: cors.CorsOptionsDelegate;
395
584
  } | ArkosRequestHandler;
@@ -404,7 +593,10 @@ export type ArkosConfig = {
404
593
  *
405
594
  * See [www.npmjs.com/package/cookie-parser](https://www.npmjs.com/package/cookie-parser) for further details.
406
595
  */
407
- cookieParser?: false | Parameters<typeof cookieParser> | ArkosRequestHandler;
596
+ cookieParser?: false | {
597
+ secret?: string | string[];
598
+ options?: Parameters<typeof cookieParser>[1];
599
+ } | ArkosRequestHandler;
408
600
  /**
409
601
  * Options to define how query must be parsed.
410
602
  *
@@ -479,7 +671,7 @@ export type ArkosConfig = {
479
671
  /**
480
672
  * Allows to configure email configurations for sending emails through `emailService`
481
673
  *
482
- * See [www.arkosjs.com/docs/core-concepts/sending-emails](https://www.arkosjs.com/docs/core-concepts/sending-emails)
674
+ * See [www.arkosjs.com/docs/guides/email-service](https://www.arkosjs.com/docs/guides/email-service)
483
675
  */
484
676
  email?: {
485
677
  /**
@@ -542,13 +734,18 @@ export type ArkosConfig = {
542
734
  * }
543
735
  * })
544
736
  * ```
545
- * @see {@link https://www.arkosjs.com/docs/core-concepts/open-api-documentation}
737
+ * @see {@link https://www.arkosjs.com/docs/guides/open-api-documentation/setup}
546
738
  */
547
739
  swagger?: {
548
740
  /**
549
741
  * By default Arkos will disable API Documentation when the project is built `npm run build`, it does not matter what node environment is set. If you want to use it even after the `arkos build` command just set this to `true`.
550
742
  * */
551
743
  enableAfterBuild?: boolean;
744
+ /**
745
+ * Whether to require superUser authentication to access docs in production.
746
+ * Default: true after build
747
+ */
748
+ authenticate?: boolean;
552
749
  /**
553
750
  * Endpoint where the Swagger UI will be available.
554
751
  *
@@ -732,4 +929,97 @@ export type ArkosConfig = {
732
929
  */
733
930
  instance: PrismaClient;
734
931
  };
932
+ /**
933
+ * Allows to suppress specific warnings emitted by Arkos at startup or runtime.
934
+ *
935
+ * @since 1.5.10-beta
936
+ */
937
+ warnings?: {
938
+ /**
939
+ * Suppresses specific warning messages.
940
+ */
941
+ suppress?: {
942
+ /**
943
+ * Suppresses Prisma-related warnings.
944
+ */
945
+ prisma?: {
946
+ /**
947
+ * Suppresses the warning emitted when no Prisma instance is found.
948
+ */
949
+ noInstanceFound?: boolean;
950
+ /**
951
+ * Suppresses the warning emitted when no Prisma schema is found.
952
+ */
953
+ noSchemaFound?: boolean;
954
+ };
955
+ };
956
+ };
957
+ /**
958
+ * Defines static file serving configurations.
959
+ *
960
+ * Arkos will automatically serve files from the configured folder using `express.static`.
961
+ * If the folder does not exist at startup, a warning will be emitted.
962
+ *
963
+ * **Note:** The static files route is **not** prefixed with the `globalPrefix`.
964
+ *
965
+ * @since 1.7.0-canary.16
966
+ *
967
+ * @example
968
+ * ```ts
969
+ * import { defineConfig } from "arkos"
970
+ *
971
+ * export default defineConfig({
972
+ * staticFiles: {
973
+ * folder: "assets",
974
+ * prefix: "/static",
975
+ * }
976
+ * }) */
977
+ staticFiles?: {
978
+ /**
979
+ * Whether to enable static file serving.
980
+ *
981
+ * Set to `false` to disable static file serving entirely and suppress
982
+ * the warning when the folder is not found.
983
+ *
984
+ * @default true
985
+ */
986
+ enabled?: boolean;
987
+ /**
988
+ * The folder to serve static files from, relative to the project root.
989
+ *
990
+ * @default "public"
991
+ */
992
+ folder?: string;
993
+ /**
994
+ * The URL path prefix under which static files will be served.
995
+ *
996
+ * **Note:** This is not affected by `globalPrefix`.
997
+ *
998
+ * @default "/"
999
+ *
1000
+ * @example "/static" // files served at /static/image.png
1001
+ */
1002
+ prefix?: string;
1003
+ /**
1004
+ * Options passed directly to `express.static()`.
1005
+ *
1006
+ * By passing custom options, they will be deep merged with the defaults.
1007
+ *
1008
+ * #### Default:
1009
+ * ```ts
1010
+ * {
1011
+ * maxAge: "1y",
1012
+ * etag: true,
1013
+ * lastModified: true,
1014
+ * dotfiles: "ignore",
1015
+ * fallthrough: true,
1016
+ * index: false,
1017
+ * cacheControl: true,
1018
+ * }
1019
+ * ```
1020
+ *
1021
+ * @see {@link https://expressjs.com/en/4x/api.html#express.static}
1022
+ */
1023
+ expressStatic?: Parameters<typeof express.static>[1];
1024
+ };
735
1025
  };
@@ -1,66 +1,3 @@
1
- import { ArkosRouteConfig } from "../exports";
2
1
  export type RouterEndpoint = "createOne" | "findOne" | "updateOne" | "deleteOne" | "findMany" | "createMany" | "updateMany" | "deleteMany";
3
2
  export type AuthRouterEndpoint = "getMe" | "updateMe" | "deleteMe" | "login" | "logout" | "signup" | "updatePassword" | "findManyAuthAction" | "findOneAuthAction";
4
3
  export type FileUploadRouterEndpoint = "findFile" | "uploadFile" | "updateFile" | "deleteFile";
5
- type BaseRouterConfig = {
6
- /**
7
- * Backward compatibility (prior 1.4.0-beta) - disables/enables endpoints
8
- *
9
- * prefer to rather to use the following:
10
- *
11
- * ```ts
12
- * export const config = {
13
- * findMany: {
14
- * disabled: true
15
- * }
16
- * }
17
- * ```
18
- */
19
- disable?: boolean | {
20
- [K in RouterEndpoint]?: boolean;
21
- };
22
- } & {
23
- [K in RouterEndpoint]?: Omit<ArkosRouteConfig, "path">;
24
- };
25
- type AuthRouterConfig = {
26
- /**
27
- * Backward compatibility (prior 1.4.0-beta) - disables/enables endpoints
28
- *
29
- * prefer to rather to use the following:
30
- *
31
- * ```ts
32
- * export const config = {
33
- * getMe: {
34
- * disabled: true
35
- * }
36
- * }
37
- * ```
38
- */
39
- disable?: boolean | {
40
- [K in AuthRouterEndpoint]?: boolean;
41
- };
42
- } & {
43
- [K in AuthRouterEndpoint]?: Omit<ArkosRouteConfig, "path">;
44
- };
45
- type FileUploadRouterConfig = {
46
- /**
47
- * Backward compatibility (prior 1.4.0-beta) - disables/enables endpoints
48
- *
49
- * prefer to rather to use the following:
50
- *
51
- * ```ts
52
- * export const config = {
53
- * deleteFile: {
54
- * disabled: true
55
- * }
56
- * }
57
- * ```
58
- */
59
- disable?: boolean | {
60
- [K in FileUploadRouterEndpoint]?: boolean;
61
- };
62
- } & {
63
- [K in FileUploadRouterEndpoint]?: Omit<ArkosRouteConfig, "path" | "uploads">;
64
- };
65
- export type RouterConfig<T extends string = string> = T extends "auth" ? AuthRouterConfig : T extends "file-upload" ? FileUploadRouterConfig : BaseRouterConfig;
66
- export {};
@@ -0,0 +1,10 @@
1
+ export interface ArkosFile extends Express.Multer.File {
2
+ /**
3
+ * The file pathname without the server host
4
+ */
5
+ pathname: string;
6
+ /**
7
+ * The file full URL
8
+ */
9
+ url: string;
10
+ }
@@ -0,0 +1,27 @@
1
+ import validateDto from "../../utils/validate-dto";
2
+ import validateSchema from "../../utils/validate-schema";
3
+ import { ArkosConfig } from "../new-arkos-config";
4
+ import { Validator } from "./validator";
5
+ declare class ValidationManager {
6
+ arkosConfig: ArkosConfig;
7
+ get validationConfig(): ({
8
+ strict?: boolean;
9
+ } & ({
10
+ resolver: "class-validator";
11
+ validationOptions?: import("class-validator").ValidatorOptions;
12
+ } | {
13
+ resolver: "zod";
14
+ validationOptions?: {
15
+ forbidNonWhitelisted?: boolean;
16
+ };
17
+ })) | undefined;
18
+ get validatorName(): "zod schema" | "class-validator dto";
19
+ get validationFn(): typeof validateSchema | typeof validateDto;
20
+ get validatorNameType(): "Schema" | "Dto";
21
+ isValidValidator: (validator: Validator) => boolean;
22
+ isValidator: (validator: Validator) => boolean;
23
+ shouldValidate: (validator: Validator, data: any) => "prohibit" | "passthrough" | "validate";
24
+ getInvalidValidatorError(): void;
25
+ }
26
+ declare const validationManager: ValidationManager;
27
+ export default validationManager;
@@ -0,0 +1,2 @@
1
+ import { ZodSchema } from "zod";
2
+ export type Validator = ZodSchema | (new (...args: any[]) => object) | null | false;
@@ -1,6 +1,7 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
2
  import { UploadConfig } from "./types/upload-config";
3
3
  declare class ArkosRouterOpenAPIManager {
4
+ private resolveSchemaFieldName;
4
5
  /**
5
6
  * Generates OpenAPI schema for file upload fields in multipart/form-data requests.
6
7
  * Converts upload configuration into OpenAPI-compliant schema and merges with existing body schema.
@@ -20,9 +21,21 @@ declare class ArkosRouterOpenAPIManager {
20
21
  *
21
22
  * @example
22
23
  * // Multiple fields upload
23
- * addUploadFields({ type: 'fields', fields: [{ name: 'avatar', maxCount: 1 }, { name: 'resume', maxCount: 1 }] })
24
+ * addUploadFields({
25
+ * type: 'fields',
26
+ * fields: [
27
+ * { name: 'avatar', type: 'single', uploadDir: 'images' },
28
+ * { name: 'gallery', type: 'array', maxCount: 6, uploadDir: 'gallery' },
29
+ * { name: 'banners[][images]', type: 'array', maxCount: 5, uploadDir: 'banners' }
30
+ * ]
31
+ * })
24
32
  */
25
33
  addUploadFields(uploadConfig: UploadConfig, existingSchema?: OpenAPIV3.SchemaObject): OpenAPIV3.SchemaObject;
34
+ /**
35
+ * Builds the OpenAPI property schema for a single field entry.
36
+ * Legacy entries (no type) are treated as array.
37
+ */
38
+ private buildFieldSchema;
26
39
  /**
27
40
  * Validates that a user-defined multipart/form-data schema includes all required upload fields
28
41
  * with correct types, formats, and required flags.