arkos 1.3.2-canary.3 → 1.3.3-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. package/README.md +8 -4
  2. package/dist/cjs/app.js +174 -1
  3. package/dist/cjs/app.js.map +1 -1
  4. package/dist/cjs/exports/auth/index.js +6 -1
  5. package/dist/cjs/exports/controllers/index.js +11 -1
  6. package/dist/cjs/exports/error-handler/index.js +11 -1
  7. package/dist/cjs/exports/index.js +12 -1
  8. package/dist/cjs/exports/middlewares/index.js +7 -1
  9. package/dist/cjs/exports/prisma/index.js +13 -1
  10. package/dist/cjs/exports/services/index.js +48 -1
  11. package/dist/cjs/exports/utils/index.js +24 -1
  12. package/dist/cjs/exports/utils/index.js.map +1 -1
  13. package/dist/cjs/exports/validation/index.js +11 -1
  14. package/dist/cjs/modules/auth/auth.controller.js +247 -1
  15. package/dist/cjs/modules/auth/auth.controller.js.map +1 -1
  16. package/dist/cjs/modules/auth/auth.router.js +82 -1
  17. package/dist/cjs/modules/auth/auth.service.js +226 -1
  18. package/dist/cjs/modules/auth/utils/auth-error-objects.js +10 -1
  19. package/dist/cjs/modules/auth/utils/helpers/auth.controller.helpers.js +83 -1
  20. package/dist/cjs/modules/auth/utils/services/auth-action.service.js +92 -1
  21. package/dist/cjs/modules/base/base.controller.js +210 -1
  22. package/dist/cjs/modules/base/base.controller.js.map +1 -1
  23. package/dist/cjs/modules/base/base.middlewares.js +92 -1
  24. package/dist/cjs/modules/base/base.middlewares.js.map +1 -1
  25. package/dist/cjs/modules/base/base.router.js +22 -1
  26. package/dist/cjs/modules/base/base.service.js +615 -1
  27. package/dist/cjs/modules/base/base.service.js.map +1 -1
  28. package/dist/cjs/modules/base/types/base.service.types.js +3 -1
  29. package/dist/cjs/modules/base/types/base.service.types.js.map +1 -1
  30. package/dist/cjs/modules/base/utils/helpers/base.controller.helpers.js +80 -1
  31. package/dist/cjs/modules/base/utils/helpers/base.middlewares.helpers.js +50 -1
  32. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js +118 -1
  33. package/dist/cjs/modules/base/utils/helpers/base.router.helpers.js.map +1 -1
  34. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js +208 -1
  35. package/dist/cjs/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
  36. package/dist/cjs/modules/base/utils/router-validator.js +16 -1
  37. package/dist/cjs/modules/base/utils/service-hooks-manager.js +19 -1
  38. package/dist/cjs/modules/debugger/debugger.service.js +48 -0
  39. package/dist/cjs/modules/debugger/debugger.service.js.map +1 -0
  40. package/dist/cjs/modules/email/email.service.js +104 -1
  41. package/dist/cjs/modules/error-handler/error-handler.controller.js +146 -4
  42. package/dist/cjs/modules/error-handler/utils/app-error.js +17 -1
  43. package/dist/cjs/modules/error-handler/utils/catch-async.js +21 -1
  44. package/dist/cjs/modules/error-handler/utils/error-handler.helpers.js +205 -3
  45. package/dist/cjs/modules/file-upload/file-upload.controller.js +237 -1
  46. package/dist/cjs/modules/file-upload/file-upload.controller.js.map +1 -1
  47. package/dist/cjs/modules/file-upload/file-upload.router.js +60 -1
  48. package/dist/cjs/modules/file-upload/file-upload.service.js +322 -1
  49. package/dist/cjs/modules/file-upload/utils/helpers/file-upload.helpers.js +97 -1
  50. package/dist/cjs/modules/swagger/swagger.router.js +39 -1
  51. package/dist/cjs/modules/swagger/swagger.router.js.map +1 -1
  52. package/dist/cjs/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +338 -1
  53. package/dist/cjs/modules/swagger/utils/helpers/get-swagger-default-configs.js +64 -1
  54. package/dist/cjs/modules/swagger/utils/helpers/get-system-json-schema-paths.js +37 -1
  55. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +52 -1
  56. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -1
  57. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +32 -1
  58. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +49 -1
  59. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +34 -1
  60. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +471 -1
  61. package/dist/cjs/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +572 -1
  62. package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js +260 -1
  63. package/dist/cjs/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +1 -1
  64. package/dist/cjs/modules/swagger/utils/helpers/swagger.router.helpers.js +112 -1
  65. package/dist/cjs/paths.js +9 -1
  66. package/dist/cjs/server.js +103 -5
  67. package/dist/cjs/server.js.map +1 -1
  68. package/dist/cjs/types/arkos-config.js +3 -1
  69. package/dist/cjs/types/arkos-config.js.map +1 -1
  70. package/dist/cjs/types/auth.js +3 -1
  71. package/dist/cjs/types/index.js +11 -1
  72. package/dist/cjs/types/index.js.map +1 -1
  73. package/dist/cjs/types/router-config.js +3 -1
  74. package/dist/cjs/utils/arkos-env.js +9 -1
  75. package/dist/cjs/utils/cli/build.js +214 -5
  76. package/dist/cjs/utils/cli/dev.js +154 -3
  77. package/dist/cjs/utils/cli/generate.js +126 -1
  78. package/dist/cjs/utils/cli/generate.js.map +1 -1
  79. package/dist/cjs/utils/cli/index.js +104 -1
  80. package/dist/cjs/utils/cli/index.js.map +1 -1
  81. package/dist/cjs/utils/cli/prisma-generate.js +120 -0
  82. package/dist/cjs/utils/cli/prisma-generate.js.map +1 -0
  83. package/dist/cjs/utils/cli/start.js +103 -1
  84. package/dist/cjs/utils/cli/utils/cli.helpers.js +24 -1
  85. package/dist/cjs/utils/cli/utils/smart-fs-watcher.js +73 -1
  86. package/dist/cjs/utils/cli/utils/template-generator/templates/auth-configs-template.js +60 -0
  87. package/dist/cjs/utils/cli/utils/template-generator/templates/auth-configs-template.js.map +1 -0
  88. package/dist/cjs/utils/cli/utils/template-generator/templates/controller-template.js +17 -0
  89. package/dist/cjs/utils/cli/utils/template-generator/templates/controller-template.js.map +1 -0
  90. package/dist/cjs/utils/cli/utils/template-generator/templates/hooks-template.js +201 -0
  91. package/dist/cjs/utils/cli/utils/template-generator/templates/hooks-template.js.map +1 -0
  92. package/dist/cjs/utils/cli/utils/template-generator/templates/middlewares-template.js +286 -0
  93. package/dist/cjs/utils/cli/utils/template-generator/templates/middlewares-template.js.map +1 -0
  94. package/dist/cjs/utils/cli/utils/template-generator/templates/query-options-template.js +64 -0
  95. package/dist/cjs/utils/cli/utils/template-generator/templates/query-options-template.js.map +1 -0
  96. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js +42 -0
  97. package/dist/cjs/utils/cli/utils/template-generator/templates/router-template.js.map +1 -0
  98. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js +29 -0
  99. package/dist/cjs/utils/cli/utils/template-generator/templates/service-template.js.map +1 -0
  100. package/dist/cjs/utils/cli/utils/template-generators.js +34 -2
  101. package/dist/cjs/utils/cli/utils/template-generators.js.map +1 -1
  102. package/dist/cjs/utils/cli/utils/watermark-stamper.js +17 -3
  103. package/dist/cjs/utils/dotenv.helpers.js +43 -1
  104. package/dist/cjs/utils/dynamic-loader.js +270 -9
  105. package/dist/cjs/utils/features/api.features.js +226 -1
  106. package/dist/cjs/utils/features/api.features.js.map +1 -1
  107. package/dist/cjs/utils/features/change-case.features.js +67 -1
  108. package/dist/cjs/utils/features/port-and-host-allocator.js +105 -1
  109. package/dist/cjs/utils/helpers/api.features.helpers.js +112 -1
  110. package/dist/cjs/utils/helpers/change-case.helpers.js +177 -1
  111. package/dist/cjs/utils/helpers/deepmerge.helper.js +115 -1
  112. package/dist/cjs/utils/helpers/deepmerge.helper.js.map +1 -1
  113. package/dist/cjs/utils/helpers/dynamic-loader.helpers.js +76 -1
  114. package/dist/cjs/utils/helpers/fs.helpers.js +57 -1
  115. package/dist/cjs/utils/helpers/global.helpers.js +94 -1
  116. package/dist/cjs/utils/helpers/prisma.helpers.js +44 -1
  117. package/dist/cjs/utils/helpers/prisma.helpers.js.map +1 -1
  118. package/dist/cjs/utils/helpers/query-parser.helpers.js +45 -1
  119. package/dist/cjs/utils/helpers/routers.helpers.js +37 -1
  120. package/dist/cjs/utils/helpers/text.helpers.js +28 -1
  121. package/dist/cjs/utils/prisma/prisma-json-schema-generator.js +455 -1
  122. package/dist/cjs/utils/prisma/prisma-schema-parser.js +216 -4
  123. package/dist/cjs/utils/prisma/types.js +3 -1
  124. package/dist/cjs/utils/sheu.js +126 -1
  125. package/dist/cjs/utils/sheu.js.map +1 -1
  126. package/dist/cjs/utils/validate-dto.js +17 -1
  127. package/dist/cjs/utils/validate-schema.js +15 -1
  128. package/dist/esm/app.js +134 -1
  129. package/dist/esm/app.js.map +1 -1
  130. package/dist/esm/exports/auth/index.js +2 -1
  131. package/dist/esm/exports/controllers/index.js +4 -1
  132. package/dist/esm/exports/error-handler/index.js +4 -1
  133. package/dist/esm/exports/index.js +8 -1
  134. package/dist/esm/exports/middlewares/index.js +2 -1
  135. package/dist/esm/exports/prisma/index.js +6 -1
  136. package/dist/esm/exports/services/index.js +9 -1
  137. package/dist/esm/exports/utils/index.js +4 -1
  138. package/dist/esm/exports/utils/index.js.map +1 -1
  139. package/dist/esm/exports/validation/index.js +4 -1
  140. package/dist/esm/modules/auth/auth.controller.js +240 -1
  141. package/dist/esm/modules/auth/auth.controller.js.map +1 -1
  142. package/dist/esm/modules/auth/auth.router.js +76 -1
  143. package/dist/esm/modules/auth/auth.service.js +219 -1
  144. package/dist/esm/modules/auth/utils/auth-error-objects.js +4 -1
  145. package/dist/esm/modules/auth/utils/helpers/auth.controller.helpers.js +73 -1
  146. package/dist/esm/modules/auth/utils/services/auth-action.service.js +90 -1
  147. package/dist/esm/modules/base/base.controller.js +203 -1
  148. package/dist/esm/modules/base/base.controller.js.map +1 -1
  149. package/dist/esm/modules/base/base.middlewares.js +81 -1
  150. package/dist/esm/modules/base/base.middlewares.js.map +1 -1
  151. package/dist/esm/modules/base/base.router.js +15 -1
  152. package/dist/esm/modules/base/base.service.js +608 -1
  153. package/dist/esm/modules/base/base.service.js.map +1 -1
  154. package/dist/esm/modules/base/types/base.service.types.js +2 -1
  155. package/dist/esm/modules/base/types/base.service.types.js.map +1 -1
  156. package/dist/esm/modules/base/utils/helpers/base.controller.helpers.js +76 -1
  157. package/dist/esm/modules/base/utils/helpers/base.middlewares.helpers.js +44 -1
  158. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js +109 -1
  159. package/dist/esm/modules/base/utils/helpers/base.router.helpers.js.map +1 -1
  160. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js +198 -1
  161. package/dist/esm/modules/base/utils/helpers/base.service.helpers.js.map +1 -1
  162. package/dist/esm/modules/base/utils/router-validator.js +14 -1
  163. package/dist/esm/modules/base/utils/service-hooks-manager.js +17 -1
  164. package/dist/esm/modules/debugger/debugger.service.js +43 -0
  165. package/dist/esm/modules/debugger/debugger.service.js.map +1 -0
  166. package/dist/esm/modules/email/email.service.js +97 -1
  167. package/dist/esm/modules/error-handler/error-handler.controller.js +107 -4
  168. package/dist/esm/modules/error-handler/utils/app-error.js +15 -1
  169. package/dist/esm/modules/error-handler/utils/catch-async.js +19 -1
  170. package/dist/esm/modules/error-handler/utils/error-handler.helpers.js +163 -3
  171. package/dist/esm/modules/file-upload/file-upload.controller.js +232 -1
  172. package/dist/esm/modules/file-upload/file-upload.controller.js.map +1 -1
  173. package/dist/esm/modules/file-upload/file-upload.router.js +54 -1
  174. package/dist/esm/modules/file-upload/file-upload.service.js +314 -1
  175. package/dist/esm/modules/file-upload/utils/helpers/file-upload.helpers.js +87 -1
  176. package/dist/esm/modules/swagger/swagger.router.js +33 -1
  177. package/dist/esm/modules/swagger/swagger.router.js.map +1 -1
  178. package/dist/esm/modules/swagger/utils/helpers/get-authentication-json-schema-paths.js +333 -1
  179. package/dist/esm/modules/swagger/utils/helpers/get-swagger-default-configs.js +58 -1
  180. package/dist/esm/modules/swagger/utils/helpers/get-system-json-schema-paths.js +34 -1
  181. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js +46 -1
  182. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-class-validator-json-schemas.js.map +1 -1
  183. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-prisma-json-schemas.js +26 -1
  184. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-system-json-schemas.js +46 -1
  185. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/generate-zod-json-schemas.js +28 -1
  186. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-main-routes-paths.js +465 -1
  187. package/dist/esm/modules/swagger/utils/helpers/json-schema-generators/prisma-models/generate-prisma-model-parent-routes-paths.js +566 -1
  188. package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js +255 -1
  189. package/dist/esm/modules/swagger/utils/helpers/missing-json-schemas-generator.js.map +1 -1
  190. package/dist/esm/modules/swagger/utils/helpers/swagger.router.helpers.js +101 -1
  191. package/dist/esm/paths.js +3 -1
  192. package/dist/esm/server.js +94 -5
  193. package/dist/esm/server.js.map +1 -1
  194. package/dist/esm/types/arkos-config.js +2 -1
  195. package/dist/esm/types/arkos-config.js.map +1 -1
  196. package/dist/esm/types/auth.js +2 -1
  197. package/dist/esm/types/index.js +8 -1
  198. package/dist/esm/types/index.js.map +1 -1
  199. package/dist/esm/types/router-config.js +2 -1
  200. package/dist/esm/utils/arkos-env.js +7 -1
  201. package/dist/esm/utils/cli/build.js +208 -5
  202. package/dist/esm/utils/cli/dev.js +147 -3
  203. package/dist/esm/utils/cli/generate.js +120 -1
  204. package/dist/esm/utils/cli/generate.js.map +1 -1
  205. package/dist/esm/utils/cli/index.js +94 -1
  206. package/dist/esm/utils/cli/index.js.map +1 -1
  207. package/dist/esm/utils/cli/prisma-generate.js +114 -0
  208. package/dist/esm/utils/cli/prisma-generate.js.map +1 -0
  209. package/dist/esm/utils/cli/start.js +96 -1
  210. package/dist/esm/utils/cli/utils/cli.helpers.js +16 -1
  211. package/dist/esm/utils/cli/utils/smart-fs-watcher.js +68 -1
  212. package/dist/esm/utils/cli/utils/template-generator/templates/auth-configs-template.js +57 -0
  213. package/dist/esm/utils/cli/utils/template-generator/templates/auth-configs-template.js.map +1 -0
  214. package/dist/esm/utils/cli/utils/template-generator/templates/controller-template.js +14 -0
  215. package/dist/esm/utils/cli/utils/template-generator/templates/controller-template.js.map +1 -0
  216. package/dist/esm/utils/cli/utils/template-generator/templates/hooks-template.js +198 -0
  217. package/dist/esm/utils/cli/utils/template-generator/templates/hooks-template.js.map +1 -0
  218. package/dist/esm/utils/cli/utils/template-generator/templates/middlewares-template.js +283 -0
  219. package/dist/esm/utils/cli/utils/template-generator/templates/middlewares-template.js.map +1 -0
  220. package/dist/esm/utils/cli/utils/template-generator/templates/query-options-template.js +61 -0
  221. package/dist/esm/utils/cli/utils/template-generator/templates/query-options-template.js.map +1 -0
  222. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js +39 -0
  223. package/dist/esm/utils/cli/utils/template-generator/templates/router-template.js.map +1 -0
  224. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js +26 -0
  225. package/dist/esm/utils/cli/utils/template-generator/templates/service-template.js.map +1 -0
  226. package/dist/esm/utils/cli/utils/template-generators.js +28 -2
  227. package/dist/esm/utils/cli/utils/template-generators.js.map +1 -1
  228. package/dist/esm/utils/cli/utils/watermark-stamper.js +15 -3
  229. package/dist/esm/utils/dotenv.helpers.js +37 -1
  230. package/dist/esm/utils/dynamic-loader.js +254 -9
  231. package/dist/esm/utils/features/api.features.js +220 -1
  232. package/dist/esm/utils/features/api.features.js.map +1 -1
  233. package/dist/esm/utils/features/change-case.features.js +31 -1
  234. package/dist/esm/utils/features/port-and-host-allocator.js +67 -1
  235. package/dist/esm/utils/helpers/api.features.helpers.js +106 -1
  236. package/dist/esm/utils/helpers/change-case.helpers.js +161 -1
  237. package/dist/esm/utils/helpers/deepmerge.helper.js +113 -1
  238. package/dist/esm/utils/helpers/deepmerge.helper.js.map +1 -1
  239. package/dist/esm/utils/helpers/dynamic-loader.helpers.js +69 -1
  240. package/dist/esm/utils/helpers/fs.helpers.js +48 -1
  241. package/dist/esm/utils/helpers/global.helpers.js +51 -1
  242. package/dist/esm/utils/helpers/prisma.helpers.js +36 -1
  243. package/dist/esm/utils/helpers/prisma.helpers.js.map +1 -1
  244. package/dist/esm/utils/helpers/query-parser.helpers.js +40 -1
  245. package/dist/esm/utils/helpers/routers.helpers.js +29 -1
  246. package/dist/esm/utils/helpers/text.helpers.js +22 -1
  247. package/dist/esm/utils/prisma/prisma-json-schema-generator.js +448 -1
  248. package/dist/esm/utils/prisma/prisma-schema-parser.js +209 -4
  249. package/dist/esm/utils/prisma/types.js +2 -1
  250. package/dist/esm/utils/sheu.js +124 -1
  251. package/dist/esm/utils/sheu.js.map +1 -1
  252. package/dist/esm/utils/validate-dto.js +11 -1
  253. package/dist/esm/utils/validate-schema.js +9 -1
  254. package/dist/types/exports/utils/index.d.ts +2 -2
  255. package/dist/types/modules/base/base.controller.d.ts +2 -0
  256. package/dist/types/modules/base/base.service.d.ts +5 -0
  257. package/dist/types/modules/base/types/base.service.types.d.ts +11 -8
  258. package/dist/types/modules/base/utils/helpers/base.router.helpers.d.ts +2 -0
  259. package/dist/types/modules/debugger/debugger.service.d.ts +7 -0
  260. package/dist/types/types/arkos-config.d.ts +3 -0
  261. package/dist/types/types/index.d.ts +3 -0
  262. package/dist/types/utils/cli/generate.d.ts +2 -0
  263. package/dist/types/utils/cli/prisma-generate.d.ts +1 -0
  264. package/dist/types/utils/features/api.features.d.ts +3 -5
  265. package/dist/types/utils/sheu.d.ts +4 -0
  266. package/package.json +2 -2
  267. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +0 -21
  268. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js.map +0 -1
  269. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -12
  270. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
  271. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js +0 -144
  272. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +0 -1
  273. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-middlewares.js +0 -256
  274. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-middlewares.js.map +0 -1
  275. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +0 -36
  276. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +0 -1
  277. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js +0 -18
  278. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-router-template.js.map +0 -1
  279. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js +0 -9
  280. package/dist/cjs/utils/cli/utils/template-generator/templates/generate-service-template.js.map +0 -1
  281. package/dist/esm/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js +0 -21
  282. package/dist/esm/utils/cli/utils/template-generator/templates/generate-auth-configs-template.js.map +0 -1
  283. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js +0 -12
  284. package/dist/esm/utils/cli/utils/template-generator/templates/generate-controller-template.js.map +0 -1
  285. package/dist/esm/utils/cli/utils/template-generator/templates/generate-hooks-template.js +0 -144
  286. package/dist/esm/utils/cli/utils/template-generator/templates/generate-hooks-template.js.map +0 -1
  287. package/dist/esm/utils/cli/utils/template-generator/templates/generate-middlewares.js +0 -256
  288. package/dist/esm/utils/cli/utils/template-generator/templates/generate-middlewares.js.map +0 -1
  289. package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js +0 -36
  290. package/dist/esm/utils/cli/utils/template-generator/templates/generate-prisma-query-options.js.map +0 -1
  291. package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js +0 -18
  292. package/dist/esm/utils/cli/utils/template-generator/templates/generate-router-template.js.map +0 -1
  293. package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js +0 -9
  294. package/dist/esm/utils/cli/utils/template-generator/templates/generate-service-template.js.map +0 -1
  295. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-auth-configs-template.d.ts → auth-configs-template.d.ts} +0 -0
  296. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-controller-template.d.ts → controller-template.d.ts} +0 -0
  297. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-hooks-template.d.ts → hooks-template.d.ts} +0 -0
  298. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-middlewares.d.ts → middlewares-template.d.ts} +0 -0
  299. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-prisma-query-options.d.ts → query-options-template.d.ts} +0 -0
  300. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-router-template.d.ts → router-template.d.ts} +0 -0
  301. /package/dist/types/utils/cli/utils/template-generator/templates/{generate-service-template.d.ts → service-template.d.ts} +0 -0
@@ -1 +1,103 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.startCommand=startCommand,exports.killProductionServerChildProcess=killProductionServerChildProcess;const path_1=__importDefault(require("path")),fs_1=__importDefault(require("fs")),child_process_1=require("child_process"),dotenv_helpers_1=require("../dotenv.helpers"),global_helpers_1=require("../helpers/global.helpers"),fs_helpers_1=require("../helpers/fs.helpers"),port_and_host_allocator_1=__importDefault(require("../features/port-and-host-allocator")),watermark_stamper_1=__importDefault(require("./utils/watermark-stamper"));let child=null,envFiles;async function startCommand(o={}){process.env.NODE_ENV="production",envFiles=(0,dotenv_helpers_1.loadEnvironmentVariables)();try{const{port:s,host:l}=o,n=path_1.default.join(process.cwd(),".build","src","app.js");fs_1.default.existsSync(path_1.default.join(n))||(console.error(`\u274C Could not find built application entry point at ${(0,fs_helpers_1.fullCleanCwd)(n)}`),process.exit(1));const e={...process.env,NODE_ENV:"production",...s&&{CLI_PORT:s},...l&&{CLI_HOST:l},ARKOS_BUILD:"true"};child=(0,child_process_1.spawn)("node",[n],{stdio:"inherit",env:e,shell:!0}),process.on("SIGINT",()=>{child&&child.kill(),process.exit(0)});const a=async()=>{try{const{getArkosConfig:t}=await(0,global_helpers_1.importModule)("../../server"),r=t();if(r&&r.available){const i=await port_and_host_allocator_1.default.getHostAndAvailablePort(e,{...r,logWarning:!0});return watermark_stamper_1.default.stamp({envFiles,port:"port"in r&&r?.port!==void 0?i.port:void 0,host:i.host}),!0}return!1}catch(t){return t?.message?.includes("../../server")||console.error(t),!1}};(async()=>{let t=0;const r=15;for(;t<r&&!await a();)await new Promise(c=>setTimeout(c,100)),t++;t>=r&&((e.CLI_PORT||e.PORT)&&port_and_host_allocator_1.default.logWarnings(),watermark_stamper_1.default.stamp({envFiles,host:e.CLI_HOST||e.HOST,port:e.CLI_PORT||e.PORT}))})()}catch(s){console.error("\u274C Production server failed to start:",s),process.exit(1)}}function killProductionServerChildProcess(){child?.kill?.(),child=null}
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.startCommand = startCommand;
7
+ exports.killProductionServerChildProcess = killProductionServerChildProcess;
8
+ const path_1 = __importDefault(require("path"));
9
+ const fs_1 = __importDefault(require("fs"));
10
+ const child_process_1 = require("child_process");
11
+ const dotenv_helpers_1 = require("../dotenv.helpers");
12
+ const global_helpers_1 = require("../helpers/global.helpers");
13
+ const fs_helpers_1 = require("../helpers/fs.helpers");
14
+ const port_and_host_allocator_1 = __importDefault(require("../features/port-and-host-allocator"));
15
+ const watermark_stamper_1 = __importDefault(require("./utils/watermark-stamper"));
16
+ let child = null;
17
+ let envFiles;
18
+ async function startCommand(options = {}) {
19
+ process.env.NODE_ENV = "production";
20
+ envFiles = (0, dotenv_helpers_1.loadEnvironmentVariables)();
21
+ try {
22
+ const { port, host } = options;
23
+ const entryPoint = path_1.default.join(process.cwd(), ".build", "src", "app.js");
24
+ if (!fs_1.default.existsSync(path_1.default.join(entryPoint))) {
25
+ console.error(`❌ Could not find built application entry point at ${(0, fs_helpers_1.fullCleanCwd)(entryPoint)}`);
26
+ process.exit(1);
27
+ }
28
+ const env = {
29
+ ...process.env,
30
+ NODE_ENV: "production",
31
+ ...(port && { CLI_PORT: port }),
32
+ ...(host && { CLI_HOST: host }),
33
+ ARKOS_BUILD: "true",
34
+ };
35
+ child = (0, child_process_1.spawn)("node", [entryPoint], {
36
+ stdio: "inherit",
37
+ env,
38
+ shell: true,
39
+ });
40
+ process.on("SIGINT", () => {
41
+ if (child) {
42
+ child.kill();
43
+ }
44
+ process.exit(0);
45
+ });
46
+ const checkConfig = async () => {
47
+ try {
48
+ const { getArkosConfig } = await (0, global_helpers_1.importModule)("../../server");
49
+ const config = getArkosConfig();
50
+ if (config && config.available) {
51
+ const hostAndPort = await port_and_host_allocator_1.default.getHostAndAvailablePort(env, {
52
+ ...config,
53
+ logWarning: true,
54
+ });
55
+ watermark_stamper_1.default.stamp({
56
+ envFiles,
57
+ port: "port" in config && config?.port !== undefined
58
+ ? hostAndPort.port
59
+ : undefined,
60
+ host: hostAndPort.host,
61
+ });
62
+ return true;
63
+ }
64
+ return false;
65
+ }
66
+ catch (err) {
67
+ if (!err?.message?.includes("../../server"))
68
+ console.error(err);
69
+ return false;
70
+ }
71
+ };
72
+ const waitForConfig = async () => {
73
+ let attempts = 0;
74
+ const maxAttempts = 15;
75
+ while (attempts < maxAttempts) {
76
+ const ready = await checkConfig();
77
+ if (ready)
78
+ break;
79
+ await new Promise((resolve) => setTimeout(resolve, 100));
80
+ attempts++;
81
+ }
82
+ if (attempts >= maxAttempts) {
83
+ if (env.CLI_PORT || env.PORT)
84
+ port_and_host_allocator_1.default.logWarnings();
85
+ watermark_stamper_1.default.stamp({
86
+ envFiles,
87
+ host: env.CLI_HOST || env.HOST,
88
+ port: env.CLI_PORT || env.PORT,
89
+ });
90
+ }
91
+ };
92
+ waitForConfig();
93
+ }
94
+ catch (error) {
95
+ console.error("❌ Production server failed to start:", error);
96
+ process.exit(1);
97
+ }
98
+ }
99
+ function killProductionServerChildProcess() {
100
+ child?.kill?.();
101
+ child = null;
102
+ }
103
+ //# sourceMappingURL=start.js.map
@@ -1 +1,24 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.ensureDirectoryExists=ensureDirectoryExists,exports.killServerChildProcess=killServerChildProcess,exports.getVersion=getVersion;const fs_1=__importDefault(require("fs")),dev_1=require("../dev"),start_1=require("../start");function ensureDirectoryExists(e){fs_1.default.existsSync(e)||fs_1.default.mkdirSync(e,{recursive:!0})}function killServerChildProcess(){(0,dev_1.killDevelopmentServerChildProcess)(),(0,start_1.killProductionServerChildProcess)()}function getVersion(){return"1.3.2-canary.3"}
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ensureDirectoryExists = ensureDirectoryExists;
7
+ exports.killServerChildProcess = killServerChildProcess;
8
+ exports.getVersion = getVersion;
9
+ const fs_1 = __importDefault(require("fs"));
10
+ const dev_1 = require("../dev");
11
+ const start_1 = require("../start");
12
+ function ensureDirectoryExists(dirPath) {
13
+ if (!fs_1.default.existsSync(dirPath)) {
14
+ fs_1.default.mkdirSync(dirPath, { recursive: true });
15
+ }
16
+ }
17
+ function killServerChildProcess() {
18
+ (0, dev_1.killDevelopmentServerChildProcess)();
19
+ (0, start_1.killProductionServerChildProcess)();
20
+ }
21
+ function getVersion() {
22
+ return "1.3.3-beta";
23
+ }
24
+ //# sourceMappingURL=cli.helpers.js.map
@@ -1 +1,73 @@
1
- "use strict";var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});const chokidar_1=__importDefault(require("chokidar")),path_1=__importDefault(require("path"));class SmartFSWather{start(t){this.watchedFiles=new Set,this.watcher=null,this.onNewFile=t,this.watcher=chokidar_1.default.watch(["src","package.json","tsconfig.json","jsconfig.json","arkos.config.ts","arkos.config.js"],{ignoreInitial:!0,ignored:[/node_modules/,/\.git/,/\.dist/,/\.build/,/dist/,/build/,/\.env.*/],awaitWriteFinish:{stabilityThreshold:1e3}}),this.setupListeners()}setupListeners(){this.watcher&&this.watcher.on("add",t=>{this.watchedFiles.has(t)||this.onNewFile(t),this.watchedFiles.add(t)}).on("ready",()=>{const t=this.watcher.getWatched();Object.entries(t).forEach(([s,i])=>{i.forEach(a=>{const h=path_1.default.join(s,a);this.watchedFiles.add(h)})})}).on("unlink",t=>{this.watchedFiles.delete(t)})}reset(){this.watchedFiles?.clear()}close(){this.watcher&&(this.watcher.close(),this.watcher=null),this.watchedFiles?.clear()}}const smartFsWatcher=new SmartFSWather;exports.default=smartFsWatcher;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const chokidar_1 = __importDefault(require("chokidar"));
7
+ const path_1 = __importDefault(require("path"));
8
+ class SmartFSWather {
9
+ start(onNewFile) {
10
+ this.watchedFiles = new Set();
11
+ this.watcher = null;
12
+ this.onNewFile = onNewFile;
13
+ this.watcher = chokidar_1.default.watch([
14
+ "src",
15
+ "package.json",
16
+ "tsconfig.json",
17
+ "jsconfig.json",
18
+ "arkos.config.ts",
19
+ "arkos.config.js",
20
+ ], {
21
+ ignoreInitial: true,
22
+ ignored: [
23
+ /node_modules/,
24
+ /\.git/,
25
+ /\.dist/,
26
+ /\.build/,
27
+ /dist/,
28
+ /build/,
29
+ /\.env.*/,
30
+ ],
31
+ awaitWriteFinish: {
32
+ stabilityThreshold: 1000,
33
+ },
34
+ });
35
+ this.setupListeners();
36
+ }
37
+ setupListeners() {
38
+ if (!this.watcher)
39
+ return;
40
+ this.watcher
41
+ .on("add", (filePath) => {
42
+ const wasAlreadyWatched = this.watchedFiles.has(filePath);
43
+ if (!wasAlreadyWatched)
44
+ this.onNewFile(filePath);
45
+ this.watchedFiles.add(filePath);
46
+ })
47
+ .on("ready", () => {
48
+ const initiallyWatched = this.watcher.getWatched();
49
+ Object.entries(initiallyWatched).forEach(([dir, files]) => {
50
+ files.forEach((file) => {
51
+ const fullPath = path_1.default.join(dir, file);
52
+ this.watchedFiles.add(fullPath);
53
+ });
54
+ });
55
+ })
56
+ .on("unlink", (filePath) => {
57
+ this.watchedFiles.delete(filePath);
58
+ });
59
+ }
60
+ reset() {
61
+ this.watchedFiles?.clear();
62
+ }
63
+ close() {
64
+ if (this.watcher) {
65
+ this.watcher.close();
66
+ this.watcher = null;
67
+ }
68
+ this.watchedFiles?.clear();
69
+ }
70
+ }
71
+ const smartFsWatcher = new SmartFSWather();
72
+ exports.default = smartFsWatcher;
73
+ //# sourceMappingURL=smart-fs-watcher.js.map
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateAuthConfigsTemplate = generateAuthConfigsTemplate;
4
+ const fs_helpers_1 = require("../../../../helpers/fs.helpers");
5
+ const text_helpers_1 = require("../../../../helpers/text.helpers");
6
+ function generateAuthConfigsTemplate(options) {
7
+ const { modelName } = options;
8
+ const ext = (0, fs_helpers_1.getUserFileExtension)();
9
+ const isTypeScript = ext === "ts";
10
+ if (!modelName)
11
+ throw new Error("Model name is required for auth config template");
12
+ const imports = isTypeScript
13
+ ? `import { AuthConfigs } from 'arkos/auth';\n`
14
+ : "";
15
+ const typeAnnotation = isTypeScript ? `: AuthConfigs` : "";
16
+ return `${imports}
17
+ import { authService } from "arkos/services";
18
+
19
+ export const ${modelName.camel}Permissions = {
20
+ canCreate: authService.permission("Create", "${modelName.kebab}"),
21
+ canUpdate: authService.permission("Update", "${modelName.kebab}"),
22
+ canDelete: authService.permission("Delete", "${modelName.kebab}"),
23
+ canView: authService.permission("View", "${modelName.kebab}"),
24
+ }
25
+
26
+ const ${modelName.camel}AuthConfigs${typeAnnotation} = {
27
+ authenticationControl: {
28
+ Create: true,
29
+ Update: true,
30
+ Delete: true,
31
+ View: true,
32
+ },
33
+ accessControl: {
34
+ // Create: {
35
+ // roles: [],
36
+ // name: "Create ${(0, text_helpers_1.capitalize)(modelName.kebab.replaceAll("-", ""))}",
37
+ // description: "Permission to create new ${modelName.kebab.replaceAll("-", " ")} records"
38
+ // },
39
+ // Update: {
40
+ // roles: [],
41
+ // name: "Update ${(0, text_helpers_1.capitalize)(modelName.kebab.replaceAll("-", ""))}",
42
+ // description: "Permission to update existing ${modelName.kebab.replaceAll("-", " ")} records"
43
+ // },
44
+ // Delete: {
45
+ // roles: [],
46
+ // name: "Delete ${(0, text_helpers_1.capitalize)(modelName.kebab.replaceAll("-", ""))}",
47
+ // description: "Permission to delete ${modelName.kebab.replaceAll("-", " ")} records"
48
+ // },
49
+ // View: {
50
+ // roles: [],
51
+ // name: "View ${(0, text_helpers_1.capitalize)(modelName.kebab.replaceAll("-", ""))}",
52
+ // description: "Permission to view ${modelName.kebab.replaceAll("-", " ")} records"
53
+ // },
54
+ },
55
+ };
56
+
57
+ export default ${modelName.camel}AuthConfigs;
58
+ `;
59
+ }
60
+ //# sourceMappingURL=auth-configs-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-configs-template.js","sourceRoot":"","sources":["../../../../../../../src/utils/cli/utils/template-generator/templates/auth-configs-template.ts"],"names":[],"mappings":";;AAIA,kEA2DC;AA/DD,+DAAsE;AACtE,mEAA8D;AAG9D,SAAgB,2BAA2B,CAAC,OAAwB;IAClE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IAC9B,MAAM,GAAG,GAAG,IAAA,iCAAoB,GAAE,CAAC;IACnC,MAAM,YAAY,GAAG,GAAG,KAAK,IAAI,CAAC;IAElC,IAAI,CAAC,SAAS;QACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAGrE,MAAM,OAAO,GAAG,YAAY;QAC1B,CAAC,CAAC,6CAA6C;QAC/C,CAAC,CAAC,EAAE,CAAC;IAGP,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3D,OAAO,GAAG,OAAO;;;eAGJ,SAAS,CAAC,KAAK;iDACmB,SAAS,CAAC,KAAK;iDACf,SAAS,CAAC,KAAK;iDACf,SAAS,CAAC,KAAK;6CACnB,SAAS,CAAC,KAAK;;;QAGpD,SAAS,CAAC,KAAK,cAAc,cAAc;;;;;;;;;;yBAU1B,IAAA,yBAAU,EAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;kDACtB,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;;;;yBAI7D,IAAA,yBAAU,EAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;uDACjB,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;;;;yBAIlE,IAAA,yBAAU,EAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;8CAC1B,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;;;;uBAI3D,IAAA,yBAAU,EAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;4CAC1B,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;;;;;iBAK/D,SAAS,CAAC,KAAK;CAC/B,CAAC;AACF,CAAC","sourcesContent":["import { getUserFileExtension } from \"../../../../helpers/fs.helpers\";\nimport { capitalize } from \"../../../../helpers/text.helpers\";\nimport { TemplateOptions } from \"../../template-generators\";\n\nexport function generateAuthConfigsTemplate(options: TemplateOptions): string {\n const { modelName } = options;\n const ext = getUserFileExtension();\n const isTypeScript = ext === \"ts\";\n\n if (!modelName)\n throw new Error(\"Model name is required for auth config template\");\n\n // Generate imports for TypeScript\n const imports = isTypeScript\n ? `import { AuthConfigs } from 'arkos/auth';\\n`\n : \"\";\n\n // Generate type annotation for TypeScript\n const typeAnnotation = isTypeScript ? `: AuthConfigs` : \"\";\n\n return `${imports}\nimport { authService } from \"arkos/services\";\n\nexport const ${modelName.camel}Permissions = {\n canCreate: authService.permission(\"Create\", \"${modelName.kebab}\"),\n canUpdate: authService.permission(\"Update\", \"${modelName.kebab}\"),\n canDelete: authService.permission(\"Delete\", \"${modelName.kebab}\"),\n canView: authService.permission(\"View\", \"${modelName.kebab}\"),\n}\n\nconst ${modelName.camel}AuthConfigs${typeAnnotation} = {\n authenticationControl: {\n Create: true,\n Update: true,\n Delete: true,\n View: true,\n },\n accessControl: {\n // Create: {\n // roles: [],\n // name: \"Create ${capitalize(modelName.kebab.replaceAll(\"-\", \"\"))}\",\n // description: \"Permission to create new ${modelName.kebab.replaceAll(\"-\", \" \")} records\"\n // },\n // Update: {\n // roles: [],\n // name: \"Update ${capitalize(modelName.kebab.replaceAll(\"-\", \"\"))}\",\n // description: \"Permission to update existing ${modelName.kebab.replaceAll(\"-\", \" \")} records\"\n // },\n // Delete: {\n // roles: [],\n // name: \"Delete ${capitalize(modelName.kebab.replaceAll(\"-\", \"\"))}\",\n // description: \"Permission to delete ${modelName.kebab.replaceAll(\"-\", \" \")} records\"\n // },\n // View: {\n // roles: [],\n // name: \"View ${capitalize(modelName.kebab.replaceAll(\"-\", \"\"))}\",\n // description: \"Permission to view ${modelName.kebab.replaceAll(\"-\", \" \")} records\"\n // },\n },\n};\n\nexport default ${modelName.camel}AuthConfigs;\n`;\n}\n"]}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateControllerTemplate = generateControllerTemplate;
4
+ function generateControllerTemplate(options) {
5
+ const { modelName, imports } = options;
6
+ if (!modelName)
7
+ throw new Error("Model name is required for controller template");
8
+ return `import { BaseController } from "${imports?.baseController || "arkos/controllers"}";
9
+
10
+ class ${modelName.pascal}Controller extends BaseController {}
11
+
12
+ const ${modelName.camel}Controller = new ${modelName.pascal}Controller("${modelName.kebab}");
13
+
14
+ export default ${modelName.camel}Controller;
15
+ `;
16
+ }
17
+ //# sourceMappingURL=controller-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controller-template.js","sourceRoot":"","sources":["../../../../../../../src/utils/cli/utils/template-generator/templates/controller-template.ts"],"names":[],"mappings":";;AAEA,gEAgBC;AAhBD,SAAgB,0BAA0B,CAAC,OAAwB;IACjE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,SAAS;QACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAEpE,OAAO,mCACL,OAAO,EAAE,cAAc,IAAI,mBAC7B;;QAEM,SAAS,CAAC,MAAM;;QAEhB,SAAS,CAAC,KAAK,oBAAoB,SAAS,CAAC,MAAM,eAAe,SAAS,CAAC,KAAK;;iBAExE,SAAS,CAAC,KAAK;GAC7B,CAAC;AACJ,CAAC","sourcesContent":["import { TemplateOptions } from \"../../template-generators\";\n\nexport function generateControllerTemplate(options: TemplateOptions): string {\n const { modelName, imports } = options;\n\n if (!modelName)\n throw new Error(\"Model name is required for controller template\");\n\n return `import { BaseController } from \"${\n imports?.baseController || \"arkos/controllers\"\n }\";\n \nclass ${modelName.pascal}Controller extends BaseController {}\n\nconst ${modelName.camel}Controller = new ${modelName.pascal}Controller(\"${modelName.kebab}\");\n\nexport default ${modelName.camel}Controller;\n `;\n}\n"]}
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = generateHooksTemplate;
4
+ const fs_helpers_1 = require("../../../../helpers/fs.helpers");
5
+ function generateHooksTemplate(options) {
6
+ const { modelName } = options;
7
+ const ext = (0, fs_helpers_1.getUserFileExtension)();
8
+ const isTypeScript = ext === "ts";
9
+ if (!modelName)
10
+ throw new Error("Module name is required for hooks template");
11
+ const baseImports = isTypeScript
12
+ ? `// import {
13
+ // BeforeFindOneHookArgs,
14
+ // AfterFindOneHookArgs,
15
+ // BeforeUpdateOneHookArgs,
16
+ // AfterUpdateOneHookArgs,
17
+ // BeforeCreateOneHookArgs,
18
+ // AfterCreateOneHookArgs,
19
+ // BeforeCreateManyHookArgs,
20
+ // AfterCreateManyHookArgs,
21
+ // BeforeCountHookArgs,
22
+ // AfterCountHookArgs,
23
+ // BeforeFindManyHookArgs,
24
+ // AfterFindManyHookArgs,
25
+ // BeforeUpdateManyHookArgs,
26
+ // AfterUpdateManyHookArgs,
27
+ // BeforeDeleteOneHookArgs,
28
+ // AfterDeleteOneHookArgs,
29
+ // BeforeDeleteManyHookArgs,
30
+ // AfterDeleteManyHookArgs,
31
+ // OnCreateOneErrorHookArgs,
32
+ // OnCreateManyErrorHookArgs,
33
+ // OnCountErrorHookArgs,
34
+ // OnFindManyErrorHookArgs,
35
+ // OnFindByIdErrorHookArgs,
36
+ // OnFindOneErrorHookArgs,
37
+ // OnUpdateOneErrorHookArgs,
38
+ // OnUpdateManyErrorHookArgs,
39
+ // OnDeleteOneErrorHookArgs,
40
+ // OnDeleteManyErrorHookArgs
41
+ // } from "arkos/services";`
42
+ : ``;
43
+ const serviceImport = `"./${modelName.kebab}.service${ext === "ts" ? "" : "." + "js"}";`;
44
+ const getHookArgsType = (hookName) => {
45
+ if (!isTypeScript)
46
+ return "";
47
+ const typeMap = {
48
+ beforeFindOne: `BeforeFindOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
49
+ afterFindOne: `AfterFindOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
50
+ beforeUpdateOne: `BeforeUpdateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
51
+ afterUpdateOne: `AfterUpdateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
52
+ beforeCreateOne: `BeforeCreateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
53
+ afterCreateOne: `AfterCreateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
54
+ beforeCreateMany: `BeforeCreateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
55
+ afterCreateMany: `AfterCreateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
56
+ beforeCount: `BeforeCountHookArgs<Prisma.${modelName.pascal}Delegate>`,
57
+ afterCount: `AfterCountHookArgs<Prisma.${modelName.pascal}Delegate>`,
58
+ beforeFindMany: `BeforeFindManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
59
+ afterFindMany: `AfterFindManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
60
+ beforeUpdateMany: `BeforeUpdateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
61
+ afterUpdateMany: `AfterUpdateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
62
+ beforeDeleteOne: `BeforeDeleteOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
63
+ afterDeleteOne: `AfterDeleteOneHookArgs<Prisma.${modelName.pascal}Delegate>`,
64
+ beforeDeleteMany: `BeforeDeleteManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
65
+ afterDeleteMany: `AfterDeleteManyHookArgs<Prisma.${modelName.pascal}Delegate>`,
66
+ onCreateOneError: `OnCreateOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
67
+ onCreateManyError: `OnCreateManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
68
+ onCountError: `OnCountErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
69
+ onFindManyError: `OnFindManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
70
+ onFindByIdError: `OnFindByIdErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
71
+ onFindOneError: `OnFindOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
72
+ onUpdateOneError: `OnUpdateOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
73
+ onUpdateManyError: `OnUpdateManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
74
+ onDeleteOneError: `OnDeleteOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
75
+ onDeleteManyError: `OnDeleteManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,
76
+ };
77
+ return typeMap[hookName];
78
+ };
79
+ const generateHookFunction = (hookName, params) => {
80
+ const argsType = getHookArgsType(hookName);
81
+ const args = isTypeScript
82
+ ? `{ ${params.join(", ")} }: ${argsType}`
83
+ : `{ ${params.join(", ")} }`;
84
+ return `async function (${args}) {}`;
85
+ };
86
+ const hooks = `
87
+ // export const beforeFindOne = [
88
+ // ${generateHookFunction("beforeFindOne", ["context", "filters", "queryOptions"])}
89
+ // ];
90
+
91
+ // export const afterFindOne = [
92
+ // ${generateHookFunction("afterFindOne", ["context", "result", "filters", "queryOptions"])}
93
+ // ];
94
+
95
+ // export const onFindOneError = [
96
+ // ${generateHookFunction("onFindOneError", ["context", "error", "filters", "queryOptions"])}
97
+ // ];
98
+
99
+ // export const beforeUpdateOne = [
100
+ // ${generateHookFunction("beforeUpdateOne", ["context", "filters", "data", "queryOptions"])}
101
+ // ];
102
+
103
+ // export const afterUpdateOne = [
104
+ // ${generateHookFunction("afterUpdateOne", ["context", "result", "filters", "data", "queryOptions"])}
105
+ // ];
106
+
107
+ // export const onUpdateOneError = [
108
+ // ${generateHookFunction("onUpdateOneError", ["context", "error", "filters", "data", "queryOptions"])}
109
+ // ];
110
+
111
+ // export const beforeCreateOne = [
112
+ // ${generateHookFunction("beforeCreateOne", ["context", "data", "queryOptions"])}
113
+ // ];
114
+
115
+ // export const afterCreateOne = [
116
+ // ${generateHookFunction("afterCreateOne", ["context", "result", "data", "queryOptions"])}
117
+ // ];
118
+
119
+ // export const onCreateOneError = [
120
+ // ${generateHookFunction("onCreateOneError", ["context", "error", "data", "queryOptions"])}
121
+ // ];
122
+
123
+ // export const beforeCreateMany = [
124
+ // ${generateHookFunction("beforeCreateMany", ["context", "data", "queryOptions"])}
125
+ // ];
126
+
127
+ // export const afterCreateMany = [
128
+ // ${generateHookFunction("afterCreateMany", ["context", "result", "queryOptions"])}
129
+ // ];
130
+
131
+ // export const onCreateManyError = [
132
+ // ${generateHookFunction("onCreateManyError", ["context", "error", "data", "queryOptions"])}
133
+ // ];
134
+
135
+ // export const beforeCount = [
136
+ // ${generateHookFunction("beforeCount", ["context", "filters"])}
137
+ // ];
138
+
139
+ // export const afterCount = [
140
+ // ${generateHookFunction("afterCount", ["context", "result", "filters"])}
141
+ // ];
142
+
143
+ // export const onCountError = [
144
+ // ${generateHookFunction("onCountError", ["context", "error", "filters"])}
145
+ // ];
146
+
147
+ // export const beforeFindMany = [
148
+ // ${generateHookFunction("beforeFindMany", ["context", "filters", "queryOptions"])}
149
+ // ];
150
+
151
+ // export const afterFindMany = [
152
+ // ${generateHookFunction("afterFindMany", ["context", "result", "filters", "queryOptions"])}
153
+ // ];
154
+
155
+ // export const onFindManyError = [
156
+ // ${generateHookFunction("onFindManyError", ["context", "error", "filters", "queryOptions"])}
157
+ // ];
158
+
159
+ // export const beforeUpdateMany = [
160
+ // ${generateHookFunction("beforeUpdateMany", ["context", "filters", "data", "queryOptions"])}
161
+ // ];
162
+
163
+ // export const afterUpdateMany = [
164
+ // ${generateHookFunction("afterUpdateMany", ["context", "result", "filters", "data", "queryOptions"])}
165
+ // ];
166
+
167
+ // export const onUpdateManyError = [
168
+ // ${generateHookFunction("onUpdateManyError", ["context", "error", "filters", "data", "queryOptions"])}
169
+ // ];
170
+
171
+ // export const beforeDeleteOne = [
172
+ // ${generateHookFunction("beforeDeleteOne", ["context", "filters"])}
173
+ // ];
174
+
175
+ // export const afterDeleteOne = [
176
+ // ${generateHookFunction("afterDeleteOne", ["context", "result", "filters"])}
177
+ // ];
178
+
179
+ // export const onDeleteOneError = [
180
+ // ${generateHookFunction("onDeleteOneError", ["context", "error", "filters"])}
181
+ // ];
182
+
183
+ // export const beforeDeleteMany = [
184
+ // ${generateHookFunction("beforeDeleteMany", ["context", "filters"])}
185
+ // ];
186
+
187
+ // export const afterDeleteMany = [
188
+ // ${generateHookFunction("afterDeleteMany", ["context", "result", "filters"])}
189
+ // ];
190
+
191
+ // export const onDeleteManyError = [
192
+ // ${generateHookFunction("onDeleteManyError", ["context", "error", "filters"])}
193
+ // ];
194
+ `;
195
+ return `${baseImports}
196
+ // import { Prisma } from "@prisma/client"
197
+ // import ${modelName.camel}Service from ${serviceImport}
198
+
199
+ ${hooks}`;
200
+ }
201
+ //# sourceMappingURL=hooks-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks-template.js","sourceRoot":"","sources":["../../../../../../../src/utils/cli/utils/template-generator/templates/hooks-template.ts"],"names":[],"mappings":"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","sourcesContent":["import { getUserFileExtension } from \"../../../../helpers/fs.helpers\";\nimport { TemplateOptions } from \"../../template-generators\";\n\n// Main function to generate hooks template based on provided options\nexport default function generateHooksTemplate(\n options: TemplateOptions\n): string {\n const { modelName } = options;\n const ext = getUserFileExtension();\n const isTypeScript = ext === \"ts\";\n\n if (!modelName) throw new Error(\"Module name is required for hooks template\");\n\n const baseImports = isTypeScript\n ? `// import { \n// BeforeFindOneHookArgs, \n// AfterFindOneHookArgs, \n// BeforeUpdateOneHookArgs, \n// AfterUpdateOneHookArgs,\n// BeforeCreateOneHookArgs,\n// AfterCreateOneHookArgs,\n// BeforeCreateManyHookArgs,\n// AfterCreateManyHookArgs,\n// BeforeCountHookArgs,\n// AfterCountHookArgs,\n// BeforeFindManyHookArgs,\n// AfterFindManyHookArgs,\n// BeforeUpdateManyHookArgs,\n// AfterUpdateManyHookArgs,\n// BeforeDeleteOneHookArgs,\n// AfterDeleteOneHookArgs,\n// BeforeDeleteManyHookArgs,\n// AfterDeleteManyHookArgs,\n// OnCreateOneErrorHookArgs,\n// OnCreateManyErrorHookArgs,\n// OnCountErrorHookArgs,\n// OnFindManyErrorHookArgs,\n// OnFindByIdErrorHookArgs,\n// OnFindOneErrorHookArgs,\n// OnUpdateOneErrorHookArgs,\n// OnUpdateManyErrorHookArgs,\n// OnDeleteOneErrorHookArgs,\n// OnDeleteManyErrorHookArgs\n// } from \"arkos/services\";`\n : ``;\n\n const serviceImport = `\"./${modelName.kebab}.service${ext === \"ts\" ? \"\" : \".\" + \"js\"}\";`;\n\n const getHookArgsType = (hookName: string) => {\n if (!isTypeScript) return \"\";\n\n const typeMap: Record<string, string> = {\n beforeFindOne: `BeforeFindOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterFindOne: `AfterFindOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeUpdateOne: `BeforeUpdateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterUpdateOne: `AfterUpdateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeCreateOne: `BeforeCreateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterCreateOne: `AfterCreateOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeCreateMany: `BeforeCreateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterCreateMany: `AfterCreateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeCount: `BeforeCountHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterCount: `AfterCountHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeFindMany: `BeforeFindManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterFindMany: `AfterFindManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeUpdateMany: `BeforeUpdateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterUpdateMany: `AfterUpdateManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeDeleteOne: `BeforeDeleteOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterDeleteOne: `AfterDeleteOneHookArgs<Prisma.${modelName.pascal}Delegate>`,\n beforeDeleteMany: `BeforeDeleteManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n afterDeleteMany: `AfterDeleteManyHookArgs<Prisma.${modelName.pascal}Delegate>`,\n // Error hook types\n onCreateOneError: `OnCreateOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onCreateManyError: `OnCreateManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onCountError: `OnCountErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onFindManyError: `OnFindManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onFindByIdError: `OnFindByIdErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onFindOneError: `OnFindOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onUpdateOneError: `OnUpdateOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onUpdateManyError: `OnUpdateManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onDeleteOneError: `OnDeleteOneErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n onDeleteManyError: `OnDeleteManyErrorHookArgs<Prisma.${modelName.pascal}Delegate>`,\n };\n\n return typeMap[hookName];\n };\n\n const generateHookFunction = (hookName: string, params: string[]) => {\n const argsType = getHookArgsType(hookName);\n const args = isTypeScript\n ? `{ ${params.join(\", \")} }: ${argsType}`\n : `{ ${params.join(\", \")} }`;\n return `async function (${args}) {}`;\n };\n\n const hooks = `\n// export const beforeFindOne = [\n// ${generateHookFunction(\"beforeFindOne\", [\"context\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const afterFindOne = [\n// ${generateHookFunction(\"afterFindOne\", [\"context\", \"result\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const onFindOneError = [\n// ${generateHookFunction(\"onFindOneError\", [\"context\", \"error\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const beforeUpdateOne = [\n// ${generateHookFunction(\"beforeUpdateOne\", [\"context\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const afterUpdateOne = [\n// ${generateHookFunction(\"afterUpdateOne\", [\"context\", \"result\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const onUpdateOneError = [\n// ${generateHookFunction(\"onUpdateOneError\", [\"context\", \"error\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const beforeCreateOne = [\n// ${generateHookFunction(\"beforeCreateOne\", [\"context\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const afterCreateOne = [\n// ${generateHookFunction(\"afterCreateOne\", [\"context\", \"result\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const onCreateOneError = [\n// ${generateHookFunction(\"onCreateOneError\", [\"context\", \"error\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const beforeCreateMany = [\n// ${generateHookFunction(\"beforeCreateMany\", [\"context\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const afterCreateMany = [\n// ${generateHookFunction(\"afterCreateMany\", [\"context\", \"result\", \"queryOptions\"])}\n// ];\n\n// export const onCreateManyError = [\n// ${generateHookFunction(\"onCreateManyError\", [\"context\", \"error\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const beforeCount = [\n// ${generateHookFunction(\"beforeCount\", [\"context\", \"filters\"])}\n// ];\n\n// export const afterCount = [\n// ${generateHookFunction(\"afterCount\", [\"context\", \"result\", \"filters\"])}\n// ];\n\n// export const onCountError = [\n// ${generateHookFunction(\"onCountError\", [\"context\", \"error\", \"filters\"])}\n// ];\n\n// export const beforeFindMany = [\n// ${generateHookFunction(\"beforeFindMany\", [\"context\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const afterFindMany = [\n// ${generateHookFunction(\"afterFindMany\", [\"context\", \"result\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const onFindManyError = [\n// ${generateHookFunction(\"onFindManyError\", [\"context\", \"error\", \"filters\", \"queryOptions\"])}\n// ];\n\n// export const beforeUpdateMany = [\n// ${generateHookFunction(\"beforeUpdateMany\", [\"context\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const afterUpdateMany = [\n// ${generateHookFunction(\"afterUpdateMany\", [\"context\", \"result\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const onUpdateManyError = [\n// ${generateHookFunction(\"onUpdateManyError\", [\"context\", \"error\", \"filters\", \"data\", \"queryOptions\"])}\n// ];\n\n// export const beforeDeleteOne = [\n// ${generateHookFunction(\"beforeDeleteOne\", [\"context\", \"filters\"])}\n// ];\n\n// export const afterDeleteOne = [\n// ${generateHookFunction(\"afterDeleteOne\", [\"context\", \"result\", \"filters\"])}\n// ];\n\n// export const onDeleteOneError = [\n// ${generateHookFunction(\"onDeleteOneError\", [\"context\", \"error\", \"filters\"])}\n// ];\n\n// export const beforeDeleteMany = [\n// ${generateHookFunction(\"beforeDeleteMany\", [\"context\", \"filters\"])}\n// ];\n\n// export const afterDeleteMany = [\n// ${generateHookFunction(\"afterDeleteMany\", [\"context\", \"result\", \"filters\"])}\n// ];\n\n// export const onDeleteManyError = [\n// ${generateHookFunction(\"onDeleteManyError\", [\"context\", \"error\", \"filters\"])}\n// ];\n`;\n\n return `${baseImports}\n// import { Prisma } from \"@prisma/client\"\n// import ${modelName.camel}Service from ${serviceImport}\n\n${hooks}`;\n}\n"]}