arkos 2.0.0-next.2 → 2.0.0-next.20

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,6 +1,85 @@
1
1
  import { RouterOptions } from "express";
2
2
  import { IArkosRouter } from "./types";
3
3
  import { OpenAPIV3 } from "openapi-types";
4
+ import { Arkos } from "../../types/arkos";
5
+ import { ArkosRouterBaseUploadConfig } from "./types/upload-config";
6
+ export type ArkosRouterOptions = {
7
+ /**
8
+ * Prefix to apply to all routes in this router.
9
+ * Nested routers inherit and concatenate prefixes from parent routers.
10
+ *
11
+ * @since 1.5.0-beta
12
+ * @example
13
+ * // All routes in this router will be prefixed with "/api"
14
+ * prefix: "/api"
15
+ */
16
+ prefix?: string | RegExp | Array<string | RegExp>;
17
+ /**
18
+ * OpenAPI metadata to apply to all routes in this router.
19
+ * Nested routers inherit from parent routers unless explicitly overridden.
20
+ * Route-level openapi config fully replaces inherited values when defined.
21
+ *
22
+ * @since 1.6.0-beta
23
+ * @example
24
+ * openapi: {
25
+ * tags: ["Users"],
26
+ * security: [{ bearerAuth: [] }]
27
+ * }
28
+ */
29
+ openapi?: {
30
+ /**
31
+ * Tags to apply to all routes in this router, used to group them in OpenAPI documentation.
32
+ * Route-level tags fully replaces this value when defined.
33
+ *
34
+ * @since 1.6.0-beta
35
+ * @example
36
+ * // Group all routes in this router under "Users"
37
+ * tags: ["Users"]
38
+ */
39
+ tags?: string[];
40
+ /**
41
+ * Security requirements to apply to all routes in this router.
42
+ * Route-level security fully replaces this value when defined.
43
+ *
44
+ * @since 1.6.2-canary.1
45
+ * @example
46
+ * // Require bearer auth for all routes in this router
47
+ * security: [{ bearerAuth: [] }]
48
+ *
49
+ * // Explicitly make all routes public (overridable per route)
50
+ * security: []
51
+ */
52
+ security?: OpenAPIV3.SecurityRequirementObject[];
53
+ /**
54
+ * Server definitions to apply to all routes in this router.
55
+ * Follows the OpenAPI 3.0 Server Object specification.
56
+ * Route-level servers fully replaces this value when defined.
57
+ *
58
+ * @since 1.6.2-canary.1
59
+ * @example
60
+ * servers: [{ url: "https://api.example.com/v2", description: "V2 API" }]
61
+ */
62
+ servers?: OpenAPIV3.ServerObject[];
63
+ /**
64
+ * External documentation to apply to all routes in this router.
65
+ * Route-level externalDocs fully replaces this value when defined.
66
+ *
67
+ * @since 1.6.2-canary.1
68
+ * @example
69
+ * externalDocs: {
70
+ * description: "Find more information here",
71
+ * url: "https://docs.example.com/users"
72
+ * }
73
+ */
74
+ externalDocs?: OpenAPIV3.ExternalDocumentationObject;
75
+ };
76
+ /**
77
+ * Allow customizing uploads on route level
78
+ *
79
+ * @since 1.7.0-canary.39
80
+ */
81
+ uploads?: ArkosRouterBaseUploadConfig;
82
+ };
4
83
  /**
5
84
  * Creates an enhanced Express Router with features like OpenAPI documentation capabilities and smart data validation.
6
85
  *
@@ -23,15 +102,11 @@ import { OpenAPIV3 } from "openapi-types";
23
102
  *
24
103
  * @returns {IArkosRouter} A proxied Express Router instance with enhanced OpenAPI capabilities
25
104
  *
26
- * @see {@link ArkosRouteConfig} for configuration options
105
+ * @see {@link https://www.arkosjs.com/docs/reference/arkos-router} for configuration options
106
+ * @since 1.4.0-beta
27
107
  */
28
- export default function ArkosRouter(options?: RouterOptions & {
29
- prefix?: string | RegExp | Array<string | RegExp>;
30
- openapi?: {
31
- tags?: string[];
32
- };
33
- }): IArkosRouter;
34
- export declare function generateOpenAPIFromApp(app: any): Record<string, Record<string, Partial<{
108
+ export default function ArkosRouter(options?: RouterOptions & ArkosRouterOptions): IArkosRouter;
109
+ export declare function generateOpenAPIFromApp(app: Arkos): Record<string, Record<string, Partial<{
35
110
  tags?: string[];
36
111
  summary?: string;
37
112
  description?: string;
@@ -1,15 +1,31 @@
1
- import { IRoute, IRouter } from "express";
2
- import { ZodSchema } from "zod";
1
+ import { Application, IRoute, IRouter, IRouterHandler, IRouterMatcher, Locals } from "express";
2
+ import { ZodType } from "zod";
3
3
  import { Options as RateLimitOptions } from "express-rate-limit";
4
4
  import { Options as QueryParserOptions } from "../../../utils/helpers/query-parser.helpers";
5
5
  import { DetailedAccessControlRule } from "../../../types/auth";
6
- import { ArkosErrorRequestHandler, ArkosRequestHandler } from "../../../types";
6
+ import { ArkosAnyRequestHandler, ArkosErrorRequestHandler, ArkosRequestHandler } from "../../../types";
7
7
  import compression from "compression";
8
8
  import { OpenApiConfig } from "./openapi-config";
9
9
  import { UploadConfig } from "./upload-config";
10
10
  import { BodyParserConfig } from "./body-parser-config";
11
+ import { ArkosRouterOptions } from "..";
12
+ import { Validator } from "../../../types/validation/validator";
13
+ import { ArkosLoadable } from "../../../exports";
14
+ export type ArkosUseConfig = Pick<ArkosRouteConfig, "authentication" | "rateLimit" | "compression" | "queryParser" | "bodyParser" | "disabled"> & {
15
+ path?: PathParams;
16
+ };
17
+ type InferValidationType<T, Fallback> = T extends ZodType ? T : T extends new (...args: any[]) => infer I ? I : Fallback;
11
18
  export type PathParams = string | RegExp | Array<string | RegExp>;
12
- export type ArkosAnyRequestHandler = ArkosRequestHandler | ArkosErrorRequestHandler | Array<ArkosRequestHandler | ArkosErrorRequestHandler>;
19
+ export type InternalIArkosRouter = IArkosRouter & {
20
+ _arkos: {
21
+ options?: ArkosRouterOptions;
22
+ routes: Array<{
23
+ handler: ArkosAnyRequestHandler;
24
+ config: ArkosRouteConfig;
25
+ method: string;
26
+ }>;
27
+ };
28
+ };
13
29
  /**
14
30
  * Handler function for HTTP methods that accepts route configuration and request handlers.
15
31
  *
@@ -17,9 +33,30 @@ export type ArkosAnyRequestHandler = ArkosRequestHandler | ArkosErrorRequestHand
17
33
  * @param {...(ArkosRequestHandler | ArkosErrorRequestHandler)[]} handlers - Request and error handlers for the route.
18
34
  * @returns {IRouter} The Express router instance.
19
35
  */
20
- type RouterMethodHandler<T> = (config: ArkosRouteConfig | PathParams, ...handlers: Array<ArkosAnyRequestHandler>) => T;
21
- export type ArkosRouteMethodHandler<T> = (config: ArkosAnyRequestHandler | Omit<ArkosRouteConfig, "path">, ...handlers: Array<ArkosRequestHandler | ArkosErrorRequestHandler | Array<ArkosRequestHandler | ArkosErrorRequestHandler>>) => T;
22
- export interface ArkosIRoute extends IRoute {
36
+ type IArkosRouterMethodHandler<T> = IRouterHandler<T> & IRouterMatcher<T> & {
37
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: ArkosRouteConfig<TQuery, TBody, TParams>, ...handlers: Array<ArkosRequestHandler<InferValidationType<TParams, Record<string, any>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, any> | Array<ArkosRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, any>>>): T;
38
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: ArkosRouteConfig<TQuery, TBody, TParams> | PathParams, ...handlers: Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, any> | Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, any> | Array<ArkosErrorRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, any>>>>): T;
39
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: ArkosRouteConfig<TQuery, TBody, TParams>, subApplication: Application): T;
40
+ };
41
+ export type ArkosRouteMethodHandler<T> = {
42
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: ArkosAnyRequestHandler | Omit<ArkosRouteConfig, "path">, ...handlers: Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, Locals>>): T;
43
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: Omit<ArkosRouteConfig<TQuery, TBody, TParams>, "path">, ...handlers: Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, Locals> | Array<ArkosRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, Locals>>>): T;
44
+ <TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any>(config: Omit<ArkosRouteConfig<TQuery, TBody, TParams>, "path">, ...handlers: Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, Locals> | Array<ArkosAnyRequestHandler<InferValidationType<TParams, Record<string, string>>, any, InferValidationType<TBody, any>, InferValidationType<TQuery, qs.ParsedQs>, Locals>>>): T;
45
+ };
46
+ /**
47
+ * Handler function for `use` that accepts route configuration and middleware handlers.
48
+ *
49
+ * @param {ArkosUseConfig} config - The use configuration object or path.
50
+ * @param {...ArkosAnyRequestHandler} handlers - Middleware handlers.
51
+ * @returns {T} The router instance.
52
+ */
53
+ export type UseMethodHandler<T> = IRouterHandler<T> & IRouterMatcher<T> & {
54
+ (config: ArkosUseConfig, ...handlers: Array<ArkosRequestHandler | Array<ArkosRequestHandler>>): T;
55
+ (config: ArkosUseConfig, ...handlers: Array<ArkosErrorRequestHandler | Array<ArkosErrorRequestHandler>>): T;
56
+ (config: ArkosUseConfig, ...handlers: Array<ArkosRequestHandler | ArkosErrorRequestHandler | Array<ArkosRequestHandler | ArkosErrorRequestHandler>>): T;
57
+ (...handlers: Array<ArkosRequestHandler | ArkosErrorRequestHandler | Array<ArkosRequestHandler | ArkosErrorRequestHandler>>): T;
58
+ };
59
+ export interface IArkosRoute extends IRoute {
23
60
  /** GET method handler with route configuration support */
24
61
  get: ArkosRouteMethodHandler<this>;
25
62
  /** POST method handler with route configuration support */
@@ -64,29 +101,42 @@ export interface ArkosIRoute extends IRoute {
64
101
  */
65
102
  export interface IArkosRouter extends IRouter {
66
103
  /** GET method handler with route configuration support */
67
- get: RouterMethodHandler<this>;
104
+ get: IArkosRouterMethodHandler<this>;
68
105
  /** POST method handler with route configuration support */
69
- post: RouterMethodHandler<this>;
106
+ post: IArkosRouterMethodHandler<this>;
70
107
  /** PUT method handler with route configuration support */
71
- put: RouterMethodHandler<this>;
108
+ put: IArkosRouterMethodHandler<this>;
72
109
  /** PATCH method handler with route configuration support */
73
- patch: RouterMethodHandler<this>;
110
+ patch: IArkosRouterMethodHandler<this>;
74
111
  /** DELETE method handler with route configuration support */
75
- delete: RouterMethodHandler<this>;
112
+ delete: IArkosRouterMethodHandler<this>;
76
113
  /** OPTIONS method handler with route configuration support */
77
- options: RouterMethodHandler<this>;
114
+ options: IArkosRouterMethodHandler<this>;
78
115
  /** HEAD method handler with route configuration support */
79
- head: RouterMethodHandler<this>;
80
- trace: RouterMethodHandler<this>;
116
+ head: IArkosRouterMethodHandler<this>;
117
+ trace: IArkosRouterMethodHandler<this>;
81
118
  /** ALL methods handler with route configuration support */
82
- all: RouterMethodHandler<this>;
83
- route<T extends string>(prefix: T): ArkosIRoute;
84
- route(prefix: PathParams): ArkosIRoute;
119
+ all: IArkosRouterMethodHandler<this>;
120
+ use: UseMethodHandler<this>;
121
+ route<T extends string>(prefix: T): IArkosRoute;
122
+ route(prefix: PathParams): IArkosRoute;
123
+ /**
124
+ * Loads Arkos-specific instances into the app for internal usage.
125
+ * Unlike use(), load() has no order — it simply makes the loaded
126
+ * data available for Arkos to apply where needed.
127
+ */
128
+ load(...items: ArkosLoadable[]): this;
129
+ /**
130
+ * Loads Arkos-specific instances into the app for internal usage.
131
+ * Unlike use(), load() has no order — it simply makes the loaded
132
+ * data available for Arkos to apply where needed.
133
+ */
134
+ load(items: ArkosLoadable[] | ArkosLoadable): this;
85
135
  }
86
136
  /**
87
137
  * Configuration object for defining routes in Arkos.js.
88
138
  */
89
- export type ArkosRouteConfig = {
139
+ export type ArkosRouteConfig<TQuery extends Validator = any, TBody extends Validator = any, TParams extends Validator = any> = {
90
140
  /**
91
141
  * Disables the route by not mounting it internally.
92
142
  */
@@ -115,13 +165,14 @@ export type ArkosRouteConfig = {
115
165
  *
116
166
  * @remarks
117
167
  * - Set to `false` to disable all validation.
168
+ * - Set to `null` to forbidden all request inputs.
118
169
  * - Provide an object with `query`, `body`, and/or `params` properties to validate specific parts of the request.
119
170
  * - Each property accepts a Zod schema, a class constructor, or `false` to disable validation for that part.
120
171
  */
121
- validation?: false | {
122
- query?: ZodSchema | (new (...args: any[]) => object) | false;
123
- body?: ZodSchema | (new (...args: any[]) => object) | false;
124
- params?: ZodSchema | (new (...args: any[]) => object) | false;
172
+ validation?: false | null | {
173
+ query?: TQuery;
174
+ body?: TBody;
175
+ params?: TParams;
125
176
  };
126
177
  /**
127
178
  * Rate limiting configuration for this route.
@@ -1,10 +1,11 @@
1
1
  import { OpenAPIV3 } from "openapi-types";
2
2
  import { ZodSchema } from "zod";
3
+ import { JsonSchema } from "../../prisma/types";
3
4
  /**
4
5
  * Represents a schema-like object that can be used for OpenAPI documentation.
5
6
  * Accepts Zod schemas, class constructors (DTOs), or plain JSON Schema objects.
6
7
  */
7
- type SchemaLike = ZodSchema | (new (...args: any[]) => object) | OpenAPIV3.SchemaObject;
8
+ type SchemaLike = ZodSchema | (new (...args: any[]) => object) | OpenAPIV3.SchemaObject | JsonSchema;
8
9
  /**
9
10
  * Extended media type object that accepts SchemaLike in addition to standard OpenAPI schemas.
10
11
  */
@@ -131,7 +132,7 @@ type RequestBodyDefinition = SchemaLike | {
131
132
  * Defining both validation and openapi schemas for the same field will cause
132
133
  * a startup error to prevent documentation drift.
133
134
  */
134
- type ExtendedOperationObject = Omit<OpenAPIV3.OperationObject, "responses" | "requestBody"> & {
135
+ export type ExtendedOperationObject = Omit<OpenAPIV3.OperationObject, "responses" | "requestBody"> & {
135
136
  /**
136
137
  * Response definitions keyed by HTTP status code.
137
138
  * Supports shorthand, medium, and full OpenAPI formats.
@@ -1,3 +1,4 @@
1
+ import { ArkosFile } from "../../../exports";
1
2
  export type UploadConfig =
2
3
  /**
3
4
  * Creates middleware that processes a single file associated with the
@@ -16,7 +17,7 @@ export type UploadConfig =
16
17
  */
17
18
  ({
18
19
  type: "single";
19
- /** Name of the multipart form field to process */
20
+ /** Name of the multipart form field to process. Supports bracket notation, including nested array paths (e.g. "banners[][image]") */
20
21
  field: string;
21
22
  } & ArkosRouterBaseUploadConfig)
22
23
  /**
@@ -39,10 +40,12 @@ export type UploadConfig =
39
40
  */
40
41
  | ({
41
42
  type: "array";
42
- /** Shared name of the multipart form fields to process */
43
+ /** Shared name of the multipart form fields to process. Supports bracket notation, including nested array paths (e.g. "banners[][images]") */
43
44
  field: string;
44
45
  /** Maximum number of files to process (defaults to framework config) */
45
46
  maxCount?: number;
47
+ /** Minimum number of files required */
48
+ minCount?: number;
46
49
  } & ArkosRouterBaseUploadConfig)
47
50
  /**
48
51
  * Creates middleware that processes multiple files associated with the
@@ -52,18 +55,25 @@ export type UploadConfig =
52
55
  * maps each field name to an array of the associated file information
53
56
  * objects.
54
57
  *
55
- * @throws `MulterError('LIMIT_UNEXPECTED_FILE')` if more than `maxCount` files are associated with `fieldName` for any field
58
+ * Each field entry is a full single or array upload config with a `name`
59
+ * property. Field names support bracket notation, including nested array
60
+ * paths (e.g. "banners[][images]").
56
61
  *
57
62
  * @example
58
63
  * uploads: {
59
64
  * type: "fields",
60
65
  * fields: [
61
- * { field: "avatar", maxCount: 1, uploadDir: "images" },
62
- * { field: "resume", maxCount: 1, uploadDir: "documents" }
66
+ * { name: "avatar", type: "single", uploadDir: "images" },
67
+ * { name: "resume", type: "single", uploadDir: "documents" },
68
+ * { name: "banners[][images]", type: "array", maxCount: 5, uploadDir: "banners" }
63
69
  * ]
64
70
  * }
65
71
  */
66
72
  | ({
73
+ type: "fields";
74
+ /** Array of field configurations describing multipart form fields to process */
75
+ fields: UploadConfigFieldEntry[];
76
+ } & Pick<ArkosRouterBaseUploadConfig, "deleteOnError">) | ({
67
77
  type: "fields";
68
78
  /** Array of field configurations describing multipart form fields to process */
69
79
  fields: {
@@ -71,12 +81,59 @@ export type UploadConfig =
71
81
  name: string;
72
82
  /** Maximum number of files for this field (defaults to framework config) */
73
83
  maxCount?: number;
84
+ minCount?: number;
74
85
  }[];
75
86
  } & ArkosRouterBaseUploadConfig);
76
87
  /**
77
- * Base configuration options for file uploads.
78
- * These settings can override framework-level defaults for specific routes.
88
+ * A single field entry inside a `fields` upload config.
89
+ * Each entry is a full single or array upload config with an additional
90
+ * `name` property identifying the form field.
91
+ *
92
+ * Field names support bracket notation, including nested array paths
93
+ * (e.g. "banners[][images]"). For nested array paths, multer validation
94
+ * is bypassed and constraints (allowedFileTypes, maxSize, minCount, maxCount)
95
+ * are enforced per group after upload.
96
+ */
97
+ export type UploadConfigFieldEntry =
98
+ /**
99
+ * A single-file field entry.
100
+ *
101
+ * @example
102
+ * { name: "avatar", type: "single", uploadDir: "images", required: true }
103
+ *
104
+ * @example
105
+ * // nested array path — one image per banner
106
+ * { name: "banners[][image]", type: "single", uploadDir: "banners" }
107
+ */
108
+ ({
109
+ /** Name of the form field. Supports bracket notation including nested array paths. */
110
+ name: string;
111
+ type: "single";
112
+ } & Omit<ArkosRouterBaseUploadConfig, "deleteOnError">)
113
+ /**
114
+ * A multi-file field entry.
115
+ *
116
+ * @example
117
+ * { name: "gallery", type: "array", maxCount: 6, uploadDir: "gallery" }
118
+ *
119
+ * @example
120
+ * // nested array path — multiple images per banner, min 1 max 5
121
+ * { name: "banners[][images]", type: "array", minCount: 1, maxCount: 5, uploadDir: "banners" }
79
122
  */
123
+ | ({
124
+ /** Name of the form field. Supports bracket notation including nested array paths. */
125
+ name: string;
126
+ type?: "array";
127
+ /** Maximum number of files for this field (defaults to framework config) */
128
+ maxCount?: number;
129
+ /** Minimum number of files required for this field */
130
+ minCount?: number;
131
+ } & Omit<ArkosRouterBaseUploadConfig, "deleteOnError">); /**
132
+
133
+ /**
134
+ * Base configuration options for file uploads.
135
+ * These settings can override framework-level defaults for specific routes.
136
+ */
80
137
  export type ArkosRouterBaseUploadConfig = {
81
138
  /**
82
139
  * Directory category where files will be stored.
@@ -105,7 +162,7 @@ export type ArkosRouterBaseUploadConfig = {
105
162
  * When using validation, the attached format will be available in your validated body.
106
163
  * For array/fields uploads, an array of the specified format will be attached.
107
164
  */
108
- attachToBody?: "pathname" | "url" | "file" | false;
165
+ attachToBody?: "pathname" | "url" | "file" | false | ((file: ArkosFile) => any);
109
166
  /**
110
167
  * Maximum file size in bytes.
111
168
  * Overrides the framework-level default for this uploadDir category.
@@ -0,0 +1,6 @@
1
+ import { IRouter, RouterOptions } from "express";
2
+ import { IArkosRouter } from "../../types";
3
+ import { ArkosRouterOptions } from "../..";
4
+ import { Arkos } from "../../../../types/arkos";
5
+ import { Express } from "express";
6
+ export declare function applyArkosRouterProxy<T extends Express | IRouter>(target: T, options?: RouterOptions & ArkosRouterOptions, component?: "app" | "router"): T extends Express ? Arkos : IArkosRouter;
@@ -1,10 +1,8 @@
1
1
  import { ArkosRouteConfig } from "../../types";
2
- export declare function extractArkosRoutes(app: any, basePath?: string): Array<{
3
- path: string;
4
- method: string;
5
- config?: ArkosRouteConfig;
6
- }>;
7
- export declare function getMiddlewareStack(config: ArkosRouteConfig): any[];
2
+ import { ArkosRouterOptions } from "../..";
3
+ export declare function extractArkosRoutes(app: any, basePath?: string, inheritedRouteOptions?: ArkosRouterOptions): any[];
4
+ export declare function extractLayerPath(layer: any): string;
5
+ export declare function getMiddlewareStack(config: ArkosRouteConfig | Omit<ArkosRouteConfig, "path">): any[];
8
6
  /**
9
7
  * Extracts path parameters from an Express route path
10
8
  *
@@ -5,46 +5,11 @@ declare class UploadManager {
5
5
  private getUpload;
6
6
  getMiddleware(config: UploadConfig): RequestHandler;
7
7
  handleUpload(config: UploadConfig, oldFilePath?: string): any;
8
- /**
9
- * Validates that all required upload files are present in the request.
10
- * Checks req.file or req.files based on upload configuration type.
11
- *
12
- * @param {UploadConfig} uploadConfig - The upload configuration from config.experimental.uploads
13
- * @throws {AppError} If required files are missing
14
- *
15
- * @example
16
- * // Single file upload - checks req.file
17
- * validateRequiredFiles(
18
- * { type: 'single', field: 'avatar', required: true },
19
- * req,
20
- * '/users/:id/avatar'
21
- * )
22
- *
23
- * @example
24
- * // Array file upload - checks req.files array
25
- * validateRequiredFiles(
26
- * { type: 'array', field: 'photos', required: true },
27
- * req,
28
- * '/gallery/upload'
29
- * )
30
- *
31
- * @example
32
- * // Multiple fields - checks req.files object
33
- * validateRequiredFiles(
34
- * { type: 'fields', fields: [{ name: 'avatar' }, { name: 'resume' }], required: true },
35
- * req,
36
- * '/profile/upload'
37
- * )
38
- */
39
8
  validateRequiredFiles(uploadConfig: UploadConfig): any;
40
9
  handleFileCleanup(config: UploadConfig): (err: any, req: ArkosRequest, _: ArkosResponse, next: ArkosNextFunction) => Promise<void>;
41
10
  handlePostUpload(config: UploadConfig): any;
42
- /**
43
- * Validates the file's type and MIME type.
44
- * @param {Express.Multer.File} file - The uploaded file.
45
- * @param {Function} cb - The callback function to indicate if file is valid.
46
- */
47
11
  private fileFilter;
12
+ isAllFieldRequired(uploadConfig: UploadConfig): boolean;
48
13
  }
49
14
  declare const uploadManager: UploadManager;
50
15
  export default uploadManager;
@@ -87,7 +87,7 @@ export declare class Bundler {
87
87
  * @param filePath - Absolute path to the JSON file
88
88
  * @returns Parsed object, or empty object if parsing fails
89
89
  */
90
- private readJsonWithComments;
90
+ readJsonWithComments(filePath: string): any;
91
91
  /**
92
92
  * Resolves a single import path to its final rewritten form.
93
93
  *
@@ -5,5 +5,5 @@ interface BuildOptions {
5
5
  /**
6
6
  * Main build function for the arkos CLI
7
7
  */
8
- export declare function buildCommand(options?: BuildOptions): void;
8
+ export declare function buildCommand(options?: BuildOptions): Promise<void>;
9
9
  export {};
@@ -10,21 +10,30 @@ export type GenerateOptions = {
10
10
  shouldPrintError?: boolean;
11
11
  isBulk?: boolean;
12
12
  };
13
+ export interface GenerateConfig {
14
+ templateName: string;
15
+ fileSuffix?: string;
16
+ customValidation?: (modelName: string) => void;
17
+ customImports?: (names: any) => any;
18
+ customPath?: string;
19
+ prefix?: string;
20
+ allowedModules: string[] | "*";
21
+ ext?: string;
22
+ attachModuleName?: boolean;
23
+ }
13
24
  export declare const generateCommand: {
14
25
  controller: (options: GenerateOptions) => Promise<void>;
15
26
  service: (options: GenerateOptions) => Promise<void>;
16
27
  router: (options: GenerateOptions) => Promise<void>;
17
28
  policy: (options: GenerateOptions) => Promise<void>;
18
- routeHook: (options: GenerateOptions) => Promise<void>;
19
- serviceHook: (options: GenerateOptions) => Promise<void>;
20
- createSchema: (options: GenerateOptions) => Promise<void>;
21
- updateSchema: (options: GenerateOptions) => Promise<void>;
22
- baseSchema: (options: GenerateOptions) => Promise<void>;
23
- querySchema: (options: GenerateOptions) => Promise<void>;
24
29
  createDto: (options: GenerateOptions) => Promise<void>;
25
30
  updateDto: (options: GenerateOptions) => Promise<void>;
26
31
  baseDto: (options: GenerateOptions) => Promise<void>;
27
32
  queryDto: (options: GenerateOptions) => Promise<void>;
28
33
  prismaModel: (options: GenerateOptions) => Promise<void>;
34
+ loginDto: (options: GenerateOptions) => Promise<void>;
35
+ signupDto: (options: GenerateOptions) => Promise<void>;
36
+ updateMeDto: (options: GenerateOptions) => Promise<void>;
37
+ updatePasswordDto: (options: GenerateOptions) => Promise<void>;
29
38
  multipleComponents: (options: MultipleComponentsGenerateOptions) => Promise<void>;
30
39
  };
@@ -1,11 +1,13 @@
1
1
  interface StartOptions {
2
2
  port?: string;
3
3
  host?: string;
4
+ stamp?: false;
5
+ shouldThrow?: true;
4
6
  }
5
7
  /**
6
8
  * Production start command for the arkos CLI
7
9
  */
8
- export declare function startCommand(options?: StartOptions): void;
10
+ export declare function startCommand(options?: StartOptions): Promise<void>;
9
11
  /**
10
12
  * Help function to help other processes to terminate the production server child process
11
13
  */
@@ -8,10 +8,21 @@ export declare class ClassValidatorDtoGenerator {
8
8
  private getFilterTypeForField;
9
9
  private generateFilterClasses;
10
10
  private generateNestedDtoClass;
11
+ /**
12
+ * Builds a @Transform decorator that coerces raw incoming values
13
+ * (e.g. strings from multipart/form-data or query params) into the
14
+ * correct native type before class-validator runs its checks.
15
+ * Mirrors the z.coerce.* behavior used in the Zod schema generator.
16
+ */
17
+ private generateTransformDecorator;
11
18
  private generateClassValidatorField;
12
19
  private generateClassValidatorFieldForUpdate;
13
20
  private getValidatorsForType;
14
21
  private mapPrismaTypeToTS;
22
+ generateLoginDto(_: TemplateOptions): string;
23
+ generateSignupDto(_: TemplateOptions): string;
24
+ generateUpdateMeDto(_: TemplateOptions): string;
25
+ generateUpdatePasswordDto(_: TemplateOptions): string;
15
26
  }
16
27
  declare const classValidatorDtoGenerator: ClassValidatorDtoGenerator;
17
28
  export default classValidatorDtoGenerator;
@@ -9,6 +9,10 @@ export declare class ZodSchemaGenerator {
9
9
  private generateFilterSchemas;
10
10
  private generateZodField;
11
11
  private mapPrismaTypeToZod;
12
+ generateLoginSchema(_: TemplateOptions): string;
13
+ generateSignupSchema(_: TemplateOptions): string;
14
+ generateUpdateMeSchema(_: TemplateOptions): string;
15
+ generateUpdatePasswordSchema(_: TemplateOptions): string;
12
16
  }
13
17
  declare const zodSchemaGenerator: ZodSchemaGenerator;
14
18
  export default zodSchemaGenerator;
@@ -15,7 +15,7 @@ import { ArkosConfig } from "../exports";
15
15
  * });
16
16
  * ```
17
17
  *
18
- * @see {@link https://www.arkosjs.com/docs/api-reference/define-config}
18
+ * @see {@link https://www.arkosjs.com/docs/reference/define-config}
19
19
  */
20
20
  export declare function defineConfig(config: ArkosConfig): ArkosConfig;
21
21
  export type UserArkosConfig = ReturnType<typeof defineConfig> & {
@@ -0,0 +1 @@
1
+ export declare const baseDocsLink = "https://www.arkosjs.com";
@@ -1,4 +1,4 @@
1
- import { ZodTypeAny } from "zod";
1
+ import { ZodType } from "zod";
2
2
  export declare function isClass(value: any): boolean;
3
- export declare function isZodSchema(value: any): value is ZodTypeAny;
3
+ export declare function isZodSchema(value: any): value is ZodType;
4
4
  export declare const appModules: string[];
@@ -1,4 +1,3 @@
1
- import { Request } from "express";
2
1
  import { ArkosRequest } from "../../types";
3
2
  type ModelName = string;
4
3
  export default class APIFeatures {
@@ -9,7 +8,7 @@ export default class APIFeatures {
9
8
  reqFiltersSearchParam: any;
10
9
  modelName?: ModelName;
11
10
  excludedFields: string[];
12
- constructor(req?: Request, modelName?: ModelName);
11
+ constructor(req?: ArkosRequest, modelName?: ModelName);
13
12
  filter(): this;
14
13
  sort(): this;
15
14
  limitFields(): this;
@@ -7,3 +7,10 @@ export declare function isAuthenticationEnabled(): boolean | undefined;
7
7
  * @returns {ArkosConfig}
8
8
  */
9
9
  export declare function getArkosConfig(): UserArkosConfig;
10
+ /**
11
+ * Returns true if application is being run through `arkos start` after `arkos build`
12
+ *
13
+ * @since 1.5.16-beta
14
+ */
15
+ export declare function isProduction(): boolean;
16
+ export declare function validateArkosConfig(): void;
@@ -12,19 +12,4 @@ export declare let userFileExtension: "ts" | "js" | undefined;
12
12
  * Returns 'ts' when TypeScript config exists and not in build mode, otherwise 'js'
13
13
  * @returns 'ts' | 'js'
14
14
  */
15
- export declare const getUserFileExtension: () => "ts" | "js";
16
- /**
17
- * Checks if a file exists at the specified file path.
18
- *
19
- * @param filePath - The path to the file to check
20
- * @returns {boolean} True if the file exists, false otherwise or if there's an error
21
- *
22
- * @example
23
- * ```ts
24
- * const exists = checkFileExists('./path/to/file.txt');
25
- * if (exists) {
26
- * console.info('File exists!');
27
- * }
28
- * ```
29
- */
30
- export declare function checkFileExists(filePath: string): boolean;
15
+ export declare const getUserFileExtension: (root?: string) => "ts" | "js";