@warlock.js/core 1.0.20 → 1.0.22

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 (670) hide show
  1. package/cjs/application.d.ts +28 -0
  2. package/cjs/application.d.ts.map +1 -0
  3. package/cjs/application.js +5 -0
  4. package/cjs/application.js.map +1 -0
  5. package/cjs/aws/get-aws-configurations.d.ts +4 -0
  6. package/cjs/aws/get-aws-configurations.d.ts.map +1 -0
  7. package/cjs/aws/get-aws-configurations.js +14 -0
  8. package/cjs/aws/get-aws-configurations.js.map +1 -0
  9. package/cjs/aws/index.d.ts +61 -0
  10. package/cjs/aws/index.d.ts.map +1 -0
  11. package/cjs/aws/index.js +108 -0
  12. package/cjs/aws/index.js.map +1 -0
  13. package/cjs/bootstrap/setup.d.ts +7 -0
  14. package/cjs/bootstrap/setup.d.ts.map +1 -0
  15. package/cjs/bootstrap/setup.js +38 -0
  16. package/cjs/bootstrap/setup.js.map +1 -0
  17. package/cjs/bootstrap.d.ts +2 -0
  18. package/cjs/bootstrap.d.ts.map +1 -0
  19. package/cjs/bootstrap.js +5 -0
  20. package/cjs/bootstrap.js.map +1 -0
  21. package/cjs/builder/app-builder.d.ts +20 -0
  22. package/cjs/builder/app-builder.d.ts.map +1 -0
  23. package/cjs/builder/app-builder.js +118 -0
  24. package/cjs/builder/app-builder.js.map +1 -0
  25. package/cjs/builder/build-cli-app.d.ts +4 -0
  26. package/cjs/builder/build-cli-app.d.ts.map +1 -0
  27. package/cjs/builder/build-cli-app.js +58 -0
  28. package/cjs/builder/build-cli-app.js.map +1 -0
  29. package/cjs/builder/build-http-app.d.ts +3 -0
  30. package/cjs/builder/build-http-app.d.ts.map +1 -0
  31. package/cjs/builder/build-http-app.js +24 -0
  32. package/cjs/builder/build-http-app.js.map +1 -0
  33. package/cjs/builder/config-loader-builder.d.ts +3 -0
  34. package/cjs/builder/config-loader-builder.d.ts.map +1 -0
  35. package/cjs/builder/config-loader-builder.js +49 -0
  36. package/cjs/builder/config-loader-builder.js.map +1 -0
  37. package/cjs/builder/index.d.ts +5 -0
  38. package/cjs/builder/index.d.ts.map +1 -0
  39. package/cjs/cli/index.d.ts +2 -0
  40. package/cjs/cli/index.d.ts.map +1 -0
  41. package/cjs/cli/index.js +1 -0
  42. package/cjs/cli/index.js.map +1 -0
  43. package/cjs/config/default-configurations.d.ts +3 -0
  44. package/cjs/config/default-configurations.d.ts.map +1 -0
  45. package/cjs/config/default-configurations.js +10 -0
  46. package/cjs/config/default-configurations.js.map +1 -0
  47. package/cjs/config/define-config.d.ts +3 -0
  48. package/cjs/config/define-config.d.ts.map +1 -0
  49. package/cjs/config/define-config.js +3 -0
  50. package/cjs/config/define-config.js.map +1 -0
  51. package/cjs/config/get-warlock-config.d.ts +3 -0
  52. package/cjs/config/get-warlock-config.d.ts.map +1 -0
  53. package/cjs/config/get-warlock-config.js +12 -0
  54. package/cjs/config/get-warlock-config.js.map +1 -0
  55. package/cjs/config/index.d.ts +3 -0
  56. package/cjs/config/index.d.ts.map +1 -0
  57. package/cjs/config/types.d.ts +56 -0
  58. package/cjs/config/types.d.ts.map +1 -0
  59. package/cjs/console/command-builder.d.ts +45 -0
  60. package/cjs/console/command-builder.d.ts.map +1 -0
  61. package/cjs/console/command-builder.js +93 -0
  62. package/cjs/console/command-builder.js.map +1 -0
  63. package/cjs/console/commander.d.ts +9 -0
  64. package/cjs/console/commander.d.ts.map +1 -0
  65. package/cjs/console/commander.js +85 -0
  66. package/cjs/console/commander.js.map +1 -0
  67. package/cjs/console/commands/database/migrate.d.ts +3 -0
  68. package/cjs/console/commands/database/migrate.d.ts.map +1 -0
  69. package/cjs/console/commands/database/migrate.js +26 -0
  70. package/cjs/console/commands/database/migrate.js.map +1 -0
  71. package/cjs/console/commands/database/seed.d.ts +13 -0
  72. package/cjs/console/commands/database/seed.d.ts.map +1 -0
  73. package/cjs/console/commands/database/seed.js +14 -0
  74. package/cjs/console/commands/database/seed.js.map +1 -0
  75. package/cjs/console/commands/database/seeder.d.ts +13 -0
  76. package/cjs/console/commands/database/seeder.d.ts.map +1 -0
  77. package/cjs/console/commands/database/seeder.js +42 -0
  78. package/cjs/console/commands/database/seeder.js.map +1 -0
  79. package/cjs/console/commands/database/seeds.d.ts +3 -0
  80. package/cjs/console/commands/database/seeds.d.ts.map +1 -0
  81. package/cjs/console/commands/database/seeds.js +24 -0
  82. package/cjs/console/commands/database/seeds.js.map +1 -0
  83. package/cjs/console/commands/index.d.ts +3 -0
  84. package/cjs/console/commands/index.d.ts.map +1 -0
  85. package/cjs/console/commands/index.js +12 -0
  86. package/cjs/console/commands/index.js.map +1 -0
  87. package/cjs/console/index.d.ts +5 -0
  88. package/cjs/console/index.d.ts.map +1 -0
  89. package/cjs/console/types.d.ts +17 -0
  90. package/cjs/console/types.d.ts.map +1 -0
  91. package/cjs/database/decorators/index.d.ts +2 -0
  92. package/cjs/database/decorators/index.d.ts.map +1 -0
  93. package/cjs/database/decorators/sluggable.d.ts +2 -0
  94. package/cjs/database/decorators/sluggable.d.ts.map +1 -0
  95. package/cjs/database/decorators/sluggable.js +8 -0
  96. package/cjs/database/decorators/sluggable.js.map +1 -0
  97. package/cjs/database/index.d.ts +3 -0
  98. package/cjs/database/index.d.ts.map +1 -0
  99. package/cjs/database/models/database-log/database-log.d.ts +13 -0
  100. package/cjs/database/models/database-log/database-log.d.ts.map +1 -0
  101. package/cjs/database/models/database-log/database-log.js +16 -0
  102. package/cjs/database/models/database-log/database-log.js.map +1 -0
  103. package/cjs/database/models/database-log/index.d.ts +2 -0
  104. package/cjs/database/models/database-log/index.d.ts.map +1 -0
  105. package/cjs/esbuild/exec.d.ts +2 -0
  106. package/cjs/esbuild/exec.d.ts.map +1 -0
  107. package/cjs/esbuild/execute-ts-file.d.ts +2 -0
  108. package/cjs/esbuild/execute-ts-file.d.ts.map +1 -0
  109. package/cjs/esbuild/execute-ts-file.js +27 -0
  110. package/cjs/esbuild/execute-ts-file.js.map +1 -0
  111. package/cjs/esbuild/index.d.ts +3 -0
  112. package/cjs/esbuild/index.d.ts.map +1 -0
  113. package/cjs/esbuild/plugins.d.ts +9 -0
  114. package/cjs/esbuild/plugins.d.ts.map +1 -0
  115. package/cjs/esbuild/plugins.js +82 -0
  116. package/cjs/esbuild/plugins.js.map +1 -0
  117. package/cjs/esbuild/transpile.d.ts +2 -0
  118. package/cjs/esbuild/transpile.d.ts.map +1 -0
  119. package/cjs/esbuild/transpile.js +18 -0
  120. package/cjs/esbuild/transpile.js.map +1 -0
  121. package/cjs/http/UploadedFile.d.ts +75 -0
  122. package/cjs/http/UploadedFile.d.ts.map +1 -0
  123. package/cjs/http/UploadedFile.js +120 -0
  124. package/cjs/http/UploadedFile.js.map +1 -0
  125. package/cjs/http/config.d.ts +10 -0
  126. package/cjs/http/config.d.ts.map +1 -0
  127. package/cjs/http/config.js +22 -0
  128. package/cjs/http/config.js.map +1 -0
  129. package/cjs/http/createHttpApplication.d.ts +3 -0
  130. package/cjs/http/createHttpApplication.d.ts.map +1 -0
  131. package/cjs/http/createHttpApplication.js +27 -0
  132. package/cjs/http/createHttpApplication.js.map +1 -0
  133. package/cjs/http/database/RequestLog.d.ts +13 -0
  134. package/cjs/http/database/RequestLog.d.ts.map +1 -0
  135. package/cjs/http/database/RequestLog.js +25 -0
  136. package/cjs/http/database/RequestLog.js.map +1 -0
  137. package/cjs/http/events.d.ts +4 -0
  138. package/cjs/http/events.d.ts.map +1 -0
  139. package/cjs/http/events.js +26 -0
  140. package/cjs/http/events.js.map +1 -0
  141. package/cjs/http/index.d.ts +13 -0
  142. package/cjs/http/index.d.ts.map +1 -0
  143. package/cjs/http/middleware/_inject-request-context.d.ts +30 -0
  144. package/cjs/http/middleware/_inject-request-context.d.ts.map +1 -0
  145. package/cjs/http/middleware/cache-response-middleware.d.ts +34 -0
  146. package/cjs/http/middleware/cache-response-middleware.d.ts.map +1 -0
  147. package/cjs/http/middleware/cache-response-middleware.js +46 -0
  148. package/cjs/http/middleware/cache-response-middleware.js.map +1 -0
  149. package/cjs/http/middleware/index.d.ts +3 -0
  150. package/cjs/http/middleware/index.d.ts.map +1 -0
  151. package/cjs/http/middleware/inject-request-context.d.ts +30 -0
  152. package/cjs/http/middleware/inject-request-context.d.ts.map +1 -0
  153. package/cjs/http/middleware/inject-request-context.js +71 -0
  154. package/cjs/http/middleware/inject-request-context.js.map +1 -0
  155. package/cjs/http/plugins.d.ts +3 -0
  156. package/cjs/http/plugins.d.ts.map +1 -0
  157. package/cjs/http/plugins.js +31 -0
  158. package/cjs/http/plugins.js.map +1 -0
  159. package/cjs/http/request-controller.d.ts +11 -0
  160. package/cjs/http/request-controller.d.ts.map +1 -0
  161. package/cjs/http/request-controller.js +9 -0
  162. package/cjs/http/request-controller.js.map +1 -0
  163. package/cjs/http/request.d.ts +324 -0
  164. package/cjs/http/request.d.ts.map +1 -0
  165. package/cjs/http/request.js +709 -0
  166. package/cjs/http/request.js.map +1 -0
  167. package/cjs/http/response.d.ts +256 -0
  168. package/cjs/http/response.d.ts.map +1 -0
  169. package/cjs/http/response.js +498 -0
  170. package/cjs/http/response.js.map +1 -0
  171. package/cjs/http/server.d.ts +8 -0
  172. package/cjs/http/server.d.ts.map +1 -0
  173. package/cjs/http/server.js +15 -0
  174. package/cjs/http/server.js.map +1 -0
  175. package/cjs/http/types.d.ts +162 -0
  176. package/cjs/http/types.d.ts.map +1 -0
  177. package/cjs/image/image.d.ts +92 -0
  178. package/cjs/image/image.d.ts.map +1 -0
  179. package/cjs/image/image.js +167 -0
  180. package/cjs/image/image.js.map +1 -0
  181. package/cjs/image/index.d.ts +2 -0
  182. package/cjs/image/index.d.ts.map +1 -0
  183. package/cjs/index.d.ts +27 -0
  184. package/cjs/index.d.ts.map +1 -0
  185. package/cjs/index.js +1 -0
  186. package/cjs/index.js.map +1 -0
  187. package/cjs/loaders/create-essential-files.d.ts +4 -0
  188. package/cjs/loaders/create-essential-files.d.ts.map +1 -0
  189. package/cjs/loaders/http-loader.d.ts +9 -0
  190. package/cjs/loaders/http-loader.d.ts.map +1 -0
  191. package/cjs/loaders/http-modules-loader.d.ts +20 -0
  192. package/cjs/loaders/http-modules-loader.d.ts.map +1 -0
  193. package/cjs/loaders/http-modules-loader.js +66 -0
  194. package/cjs/loaders/http-modules-loader.js.map +1 -0
  195. package/cjs/loaders/index.d.ts +2 -0
  196. package/cjs/loaders/index.d.ts.map +1 -0
  197. package/cjs/logger/index.d.ts +3 -0
  198. package/cjs/logger/index.d.ts.map +1 -0
  199. package/cjs/logger/logger.d.ts +3 -0
  200. package/cjs/logger/logger.d.ts.map +1 -0
  201. package/cjs/logger/logger.js +16 -0
  202. package/cjs/logger/logger.js.map +1 -0
  203. package/cjs/logger/types.d.ts +39 -0
  204. package/cjs/logger/types.d.ts.map +1 -0
  205. package/cjs/mail/config.d.ts +4 -0
  206. package/cjs/mail/config.d.ts.map +1 -0
  207. package/cjs/mail/config.js +11 -0
  208. package/cjs/mail/config.js.map +1 -0
  209. package/cjs/mail/index.d.ts +5 -0
  210. package/cjs/mail/index.d.ts.map +1 -0
  211. package/cjs/mail/react-mail.d.ts +3 -0
  212. package/cjs/mail/react-mail.d.ts.map +1 -0
  213. package/cjs/mail/react-mail.js +19 -0
  214. package/cjs/mail/react-mail.js.map +1 -0
  215. package/cjs/mail/sendMail.d.ts +19 -0
  216. package/cjs/mail/sendMail.d.ts.map +1 -0
  217. package/cjs/mail/sendMail.js +38 -0
  218. package/cjs/mail/sendMail.js.map +1 -0
  219. package/cjs/mail/types.d.ts +11 -0
  220. package/cjs/mail/types.d.ts.map +1 -0
  221. package/cjs/modules/index.d.ts +2 -0
  222. package/cjs/modules/index.d.ts.map +1 -0
  223. package/cjs/modules/uploads/controllers/delete-file.d.ts +3 -0
  224. package/cjs/modules/uploads/controllers/delete-file.d.ts.map +1 -0
  225. package/cjs/modules/uploads/controllers/delete-file.js +8 -0
  226. package/cjs/modules/uploads/controllers/delete-file.js.map +1 -0
  227. package/cjs/modules/uploads/controllers/get-uploaded-file-with-hash.d.ts +5 -0
  228. package/cjs/modules/uploads/controllers/get-uploaded-file-with-hash.d.ts.map +1 -0
  229. package/cjs/modules/uploads/controllers/get-uploaded-file-with-hash.js +183 -0
  230. package/cjs/modules/uploads/controllers/get-uploaded-file-with-hash.js.map +1 -0
  231. package/cjs/modules/uploads/controllers/get-uploaded-file.d.ts +3 -0
  232. package/cjs/modules/uploads/controllers/get-uploaded-file.d.ts.map +1 -0
  233. package/cjs/modules/uploads/controllers/get-uploaded-file.js +54 -0
  234. package/cjs/modules/uploads/controllers/get-uploaded-file.js.map +1 -0
  235. package/cjs/modules/uploads/controllers/upload-chunked-files.d.ts +3 -0
  236. package/cjs/modules/uploads/controllers/upload-chunked-files.d.ts.map +1 -0
  237. package/cjs/modules/uploads/controllers/upload-chunked-files.js +181 -0
  238. package/cjs/modules/uploads/controllers/upload-chunked-files.js.map +1 -0
  239. package/cjs/modules/uploads/controllers/upload-files.d.ts +12 -0
  240. package/cjs/modules/uploads/controllers/upload-files.d.ts.map +1 -0
  241. package/cjs/modules/uploads/controllers/upload-files.js +54 -0
  242. package/cjs/modules/uploads/controllers/upload-files.js.map +1 -0
  243. package/cjs/modules/uploads/events/compress-uploaded-file.d.ts +4 -0
  244. package/cjs/modules/uploads/events/compress-uploaded-file.d.ts.map +1 -0
  245. package/cjs/modules/uploads/events/compress-uploaded-file.js +35 -0
  246. package/cjs/modules/uploads/events/compress-uploaded-file.js.map +1 -0
  247. package/cjs/modules/uploads/events/delete-file-from-disk.d.ts +2 -0
  248. package/cjs/modules/uploads/events/delete-file-from-disk.d.ts.map +1 -0
  249. package/cjs/modules/uploads/events/delete-file-from-disk.js +44 -0
  250. package/cjs/modules/uploads/events/delete-file-from-disk.js.map +1 -0
  251. package/cjs/modules/uploads/events/index.d.ts +6 -0
  252. package/cjs/modules/uploads/events/index.d.ts.map +1 -0
  253. package/cjs/modules/uploads/events/index.js +1 -0
  254. package/cjs/modules/uploads/events/index.js.map +1 -0
  255. package/cjs/modules/uploads/events/remove-from-aws.d.ts +3 -0
  256. package/cjs/modules/uploads/events/remove-from-aws.d.ts.map +1 -0
  257. package/cjs/modules/uploads/events/remove-from-aws.js +18 -0
  258. package/cjs/modules/uploads/events/remove-from-aws.js.map +1 -0
  259. package/cjs/modules/uploads/events/sync-with-aws.d.ts +2 -0
  260. package/cjs/modules/uploads/events/sync-with-aws.d.ts.map +1 -0
  261. package/cjs/modules/uploads/events/sync-with-aws.js +6 -0
  262. package/cjs/modules/uploads/events/sync-with-aws.js.map +1 -0
  263. package/cjs/modules/uploads/events/upload-to-aws.d.ts +4 -0
  264. package/cjs/modules/uploads/events/upload-to-aws.d.ts.map +1 -0
  265. package/cjs/modules/uploads/events/upload-to-aws.js +36 -0
  266. package/cjs/modules/uploads/events/upload-to-aws.js.map +1 -0
  267. package/cjs/modules/uploads/index.d.ts +10 -0
  268. package/cjs/modules/uploads/index.d.ts.map +1 -0
  269. package/cjs/modules/uploads/models/index.d.ts +2 -0
  270. package/cjs/modules/uploads/models/index.d.ts.map +1 -0
  271. package/cjs/modules/uploads/models/upload.d.ts +52 -0
  272. package/cjs/modules/uploads/models/upload.d.ts.map +1 -0
  273. package/cjs/modules/uploads/models/upload.js +89 -0
  274. package/cjs/modules/uploads/models/upload.js.map +1 -0
  275. package/cjs/modules/uploads/output/upload-output.d.ts +25 -0
  276. package/cjs/modules/uploads/output/upload-output.d.ts.map +1 -0
  277. package/cjs/modules/uploads/output/upload-output.js +46 -0
  278. package/cjs/modules/uploads/output/upload-output.js.map +1 -0
  279. package/cjs/modules/uploads/routes.d.ts +17 -0
  280. package/cjs/modules/uploads/routes.d.ts.map +1 -0
  281. package/cjs/modules/uploads/utils/file.d.ts +36 -0
  282. package/cjs/modules/uploads/utils/file.d.ts.map +1 -0
  283. package/cjs/modules/uploads/utils/file.js +54 -0
  284. package/cjs/modules/uploads/utils/file.js.map +1 -0
  285. package/cjs/modules/uploads/utils/get-uploads-directory.d.ts +2 -0
  286. package/cjs/modules/uploads/utils/get-uploads-directory.d.ts.map +1 -0
  287. package/cjs/modules/uploads/utils/get-uploads-directory.js +13 -0
  288. package/cjs/modules/uploads/utils/get-uploads-directory.js.map +1 -0
  289. package/cjs/modules/uploads/utils/get-uploads-size.d.ts +2 -0
  290. package/cjs/modules/uploads/utils/get-uploads-size.d.ts.map +1 -0
  291. package/cjs/modules/uploads/utils/get-uploads-size.js +3 -0
  292. package/cjs/modules/uploads/utils/get-uploads-size.js.map +1 -0
  293. package/cjs/modules/uploads/utils/get-watermark-options.d.ts +3 -0
  294. package/cjs/modules/uploads/utils/get-watermark-options.d.ts.map +1 -0
  295. package/cjs/modules/uploads/utils/get-watermark-options.js +7 -0
  296. package/cjs/modules/uploads/utils/get-watermark-options.js.map +1 -0
  297. package/cjs/modules/uploads/utils/index.d.ts +5 -0
  298. package/cjs/modules/uploads/utils/index.d.ts.map +1 -0
  299. package/cjs/modules/uploads/utils/types.d.ts +47 -0
  300. package/cjs/modules/uploads/utils/types.d.ts.map +1 -0
  301. package/cjs/modules/uploads/utils/uploadable.d.ts +15 -0
  302. package/cjs/modules/uploads/utils/uploadable.d.ts.map +1 -0
  303. package/cjs/modules/uploads/utils/uploadable.js +157 -0
  304. package/cjs/modules/uploads/utils/uploadable.js.map +1 -0
  305. package/cjs/output/index.d.ts +3 -0
  306. package/cjs/output/index.d.ts.map +1 -0
  307. package/cjs/output/output.d.ts +160 -0
  308. package/cjs/output/output.d.ts.map +1 -0
  309. package/cjs/output/output.js +421 -0
  310. package/cjs/output/output.js.map +1 -0
  311. package/cjs/output/types.d.ts +24 -0
  312. package/cjs/output/types.d.ts.map +1 -0
  313. package/cjs/pool/index.d.ts +24 -0
  314. package/cjs/pool/index.d.ts.map +1 -0
  315. package/cjs/pool/index.js +39 -0
  316. package/cjs/pool/index.js.map +1 -0
  317. package/cjs/react/index.d.ts +4 -0
  318. package/cjs/react/index.d.ts.map +1 -0
  319. package/cjs/react/index.js +8 -0
  320. package/cjs/react/index.js.map +1 -0
  321. package/cjs/repositories/base-repository-manager.d.ts +47 -0
  322. package/cjs/repositories/base-repository-manager.d.ts.map +1 -0
  323. package/cjs/repositories/base-repository-manager.js +63 -0
  324. package/cjs/repositories/base-repository-manager.js.map +1 -0
  325. package/cjs/repositories/index.d.ts +8 -0
  326. package/cjs/repositories/index.d.ts.map +1 -0
  327. package/cjs/repositories/repository-destroyer-manager.d.ts +21 -0
  328. package/cjs/repositories/repository-destroyer-manager.d.ts.map +1 -0
  329. package/cjs/repositories/repository-destroyer-manager.js +38 -0
  330. package/cjs/repositories/repository-destroyer-manager.js.map +1 -0
  331. package/cjs/repositories/repository-filler-manager.d.ts +74 -0
  332. package/cjs/repositories/repository-filler-manager.d.ts.map +1 -0
  333. package/cjs/repositories/repository-filler-manager.js +118 -0
  334. package/cjs/repositories/repository-filler-manager.js.map +1 -0
  335. package/cjs/repositories/repository-filler.d.ts +48 -0
  336. package/cjs/repositories/repository-filler.d.ts.map +1 -0
  337. package/cjs/repositories/repository-filler.js +181 -0
  338. package/cjs/repositories/repository-filler.js.map +1 -0
  339. package/cjs/repositories/repository-list-manager.d.ts +347 -0
  340. package/cjs/repositories/repository-list-manager.d.ts.map +1 -0
  341. package/cjs/repositories/repository-list-manager.js +747 -0
  342. package/cjs/repositories/repository-list-manager.js.map +1 -0
  343. package/cjs/repositories/repository-listing.d.ts +118 -0
  344. package/cjs/repositories/repository-listing.d.ts.map +1 -0
  345. package/cjs/repositories/repository-listing.js +796 -0
  346. package/cjs/repositories/repository-listing.js.map +1 -0
  347. package/cjs/repositories/repository-manager.d.ts +5 -0
  348. package/cjs/repositories/repository-manager.d.ts.map +1 -0
  349. package/cjs/repositories/repository-manager.js +2 -0
  350. package/cjs/repositories/repository-manager.js.map +1 -0
  351. package/cjs/repositories/types.d.ts +116 -0
  352. package/cjs/repositories/types.d.ts.map +1 -0
  353. package/cjs/repositories/utils.d.ts +3 -0
  354. package/cjs/repositories/utils.d.ts.map +1 -0
  355. package/cjs/repositories/utils.js +7 -0
  356. package/cjs/repositories/utils.js.map +1 -0
  357. package/cjs/restful/index.d.ts +3 -0
  358. package/cjs/restful/index.d.ts.map +1 -0
  359. package/cjs/restful/restful.d.ts +110 -0
  360. package/cjs/restful/restful.d.ts.map +1 -0
  361. package/cjs/restful/restful.js +307 -0
  362. package/cjs/restful/restful.js.map +1 -0
  363. package/cjs/restful/utils.d.ts +87 -0
  364. package/cjs/restful/utils.d.ts.map +1 -0
  365. package/cjs/restful/utils.js +247 -0
  366. package/cjs/restful/utils.js.map +1 -0
  367. package/cjs/router/index.d.ts +4 -0
  368. package/cjs/router/index.d.ts.map +1 -0
  369. package/cjs/router/router.d.ts +105 -0
  370. package/cjs/router/router.d.ts.map +1 -0
  371. package/cjs/router/router.js +377 -0
  372. package/cjs/router/router.js.map +1 -0
  373. package/cjs/router/types.d.ts +229 -0
  374. package/cjs/router/types.d.ts.map +1 -0
  375. package/cjs/router/utils.d.ts +5 -0
  376. package/cjs/router/utils.d.ts.map +1 -0
  377. package/cjs/router/utils.js +6 -0
  378. package/cjs/router/utils.js.map +1 -0
  379. package/cjs/starters/build-http-production.d.ts +3 -0
  380. package/cjs/starters/build-http-production.d.ts.map +1 -0
  381. package/cjs/starters/build-http-production.js +25 -0
  382. package/cjs/starters/build-http-production.js.map +1 -0
  383. package/cjs/starters/start-cli-server.d.ts +2 -0
  384. package/cjs/starters/start-cli-server.d.ts.map +1 -0
  385. package/cjs/starters/start-cli-server.js +34 -0
  386. package/cjs/starters/start-cli-server.js.map +1 -0
  387. package/cjs/starters/start-http-production-server.d.ts +2 -0
  388. package/cjs/starters/start-http-production-server.d.ts.map +1 -0
  389. package/cjs/starters/start-http-production-server.js +14 -0
  390. package/cjs/starters/start-http-production-server.js.map +1 -0
  391. package/cjs/starters/start-http-server.d.ts +3 -0
  392. package/cjs/starters/start-http-server.d.ts.map +1 -0
  393. package/cjs/starters/start-http-server.js +28 -0
  394. package/cjs/starters/start-http-server.js.map +1 -0
  395. package/cjs/store/index.d.ts +25 -0
  396. package/cjs/store/index.d.ts.map +1 -0
  397. package/cjs/store/index.js +52 -0
  398. package/cjs/store/index.js.map +1 -0
  399. package/cjs/swagger/postman-to-swagger.d.ts +2 -0
  400. package/cjs/swagger/postman-to-swagger.d.ts.map +1 -0
  401. package/cjs/swagger/types.d.ts +22 -0
  402. package/cjs/swagger/types.d.ts.map +1 -0
  403. package/cjs/tests/boot-testing.d.ts +7 -0
  404. package/cjs/tests/boot-testing.d.ts.map +1 -0
  405. package/cjs/tests/boot-testing.js +23 -0
  406. package/cjs/tests/boot-testing.js.map +1 -0
  407. package/cjs/tests/create-http-test-application.d.ts +25 -0
  408. package/cjs/tests/create-http-test-application.d.ts.map +1 -0
  409. package/cjs/tests/create-http-test-application.js +76 -0
  410. package/cjs/tests/create-http-test-application.js.map +1 -0
  411. package/cjs/tests/http-response-output-test.d.ts +42 -0
  412. package/cjs/tests/http-response-output-test.d.ts.map +1 -0
  413. package/cjs/tests/http-response-output-test.js +53 -0
  414. package/cjs/tests/http-response-output-test.js.map +1 -0
  415. package/cjs/tests/http-test-response.d.ts +75 -0
  416. package/cjs/tests/http-test-response.d.ts.map +1 -0
  417. package/cjs/tests/index.d.ts +4 -0
  418. package/cjs/tests/index.d.ts.map +1 -0
  419. package/cjs/tests/init-testing.d.ts +7 -0
  420. package/cjs/tests/init-testing.d.ts.map +1 -0
  421. package/cjs/tests/init-testing.js +71 -0
  422. package/cjs/tests/init-testing.js.map +1 -0
  423. package/cjs/tests/types.d.ts +10 -0
  424. package/cjs/tests/types.d.ts.map +1 -0
  425. package/cjs/utils/_database-log.d.ts +25 -0
  426. package/cjs/utils/_database-log.d.ts.map +1 -0
  427. package/cjs/utils/date-output.d.ts +69 -0
  428. package/cjs/utils/date-output.d.ts.map +1 -0
  429. package/cjs/utils/date-output.js +64 -0
  430. package/cjs/utils/date-output.js.map +1 -0
  431. package/cjs/utils/date-output.test.d.ts +2 -0
  432. package/cjs/utils/date-output.test.d.ts.map +1 -0
  433. package/cjs/utils/download-file.d.ts +3 -0
  434. package/cjs/utils/download-file.d.ts.map +1 -0
  435. package/cjs/utils/environment.d.ts +4 -0
  436. package/cjs/utils/environment.d.ts.map +1 -0
  437. package/cjs/utils/environment.js +6 -0
  438. package/cjs/utils/environment.js.map +1 -0
  439. package/cjs/utils/get-localized.d.ts +10 -0
  440. package/cjs/utils/get-localized.d.ts.map +1 -0
  441. package/cjs/utils/get-localized.js +15 -0
  442. package/cjs/utils/get-localized.js.map +1 -0
  443. package/cjs/utils/get-localized.test.d.ts +2 -0
  444. package/cjs/utils/get-localized.test.d.ts.map +1 -0
  445. package/cjs/utils/index.d.ts +10 -0
  446. package/cjs/utils/index.d.ts.map +1 -0
  447. package/cjs/utils/internal.d.ts +3 -0
  448. package/cjs/utils/internal.d.ts.map +1 -0
  449. package/cjs/utils/paths.d.ts +55 -0
  450. package/cjs/utils/paths.d.ts.map +1 -0
  451. package/cjs/utils/paths.js +89 -0
  452. package/cjs/utils/paths.js.map +1 -0
  453. package/cjs/utils/promise-all-object.d.ts +8 -0
  454. package/cjs/utils/promise-all-object.d.ts.map +1 -0
  455. package/cjs/utils/promise-all-object.js +12 -0
  456. package/cjs/utils/promise-all-object.js.map +1 -0
  457. package/cjs/utils/sleep.d.ts +2 -0
  458. package/cjs/utils/sleep.d.ts.map +1 -0
  459. package/cjs/utils/sleep.js +3 -0
  460. package/cjs/utils/sleep.js.map +1 -0
  461. package/cjs/utils/sluggable.d.ts +5 -0
  462. package/cjs/utils/sluggable.d.ts.map +1 -0
  463. package/cjs/utils/sluggable.js +14 -0
  464. package/cjs/utils/sluggable.js.map +1 -0
  465. package/cjs/utils/sluggable.test.d.ts +2 -0
  466. package/cjs/utils/sluggable.test.d.ts.map +1 -0
  467. package/cjs/utils/to-json.d.ts +2 -0
  468. package/cjs/utils/to-json.d.ts.map +1 -0
  469. package/cjs/utils/to-json.js +26 -0
  470. package/cjs/utils/to-json.js.map +1 -0
  471. package/cjs/utils/types.d.ts +18 -0
  472. package/cjs/utils/types.d.ts.map +1 -0
  473. package/cjs/utils/urls.d.ts +21 -0
  474. package/cjs/utils/urls.d.ts.map +1 -0
  475. package/cjs/utils/urls.js +31 -0
  476. package/cjs/utils/urls.js.map +1 -0
  477. package/cjs/validator/index.d.ts +10 -0
  478. package/cjs/validator/index.d.ts.map +1 -0
  479. package/cjs/validator/locales.d.ts +2 -0
  480. package/cjs/validator/locales.d.ts.map +1 -0
  481. package/cjs/validator/locales.js +126 -0
  482. package/cjs/validator/locales.js.map +1 -0
  483. package/cjs/validator/rules/array-of.d.ts +20 -0
  484. package/cjs/validator/rules/array-of.d.ts.map +1 -0
  485. package/cjs/validator/rules/array-of.js +33 -0
  486. package/cjs/validator/rules/array-of.js.map +1 -0
  487. package/cjs/validator/rules/array.d.ts +20 -0
  488. package/cjs/validator/rules/array.d.ts.map +1 -0
  489. package/cjs/validator/rules/array.js +24 -0
  490. package/cjs/validator/rules/array.js.map +1 -0
  491. package/cjs/validator/rules/boolean.d.ts +16 -0
  492. package/cjs/validator/rules/boolean.d.ts.map +1 -0
  493. package/cjs/validator/rules/boolean.js +18 -0
  494. package/cjs/validator/rules/boolean.js.map +1 -0
  495. package/cjs/validator/rules/confirmed.d.ts +20 -0
  496. package/cjs/validator/rules/confirmed.d.ts.map +1 -0
  497. package/cjs/validator/rules/confirmed.js +27 -0
  498. package/cjs/validator/rules/confirmed.js.map +1 -0
  499. package/cjs/validator/rules/date.d.ts +16 -0
  500. package/cjs/validator/rules/date.d.ts.map +1 -0
  501. package/cjs/validator/rules/date.js +21 -0
  502. package/cjs/validator/rules/date.js.map +1 -0
  503. package/cjs/validator/rules/egyption-phone-number.d.ts +16 -0
  504. package/cjs/validator/rules/egyption-phone-number.d.ts.map +1 -0
  505. package/cjs/validator/rules/egyption-phone-number.js +20 -0
  506. package/cjs/validator/rules/egyption-phone-number.js.map +1 -0
  507. package/cjs/validator/rules/email.d.ts +16 -0
  508. package/cjs/validator/rules/email.d.ts.map +1 -0
  509. package/cjs/validator/rules/email.js +18 -0
  510. package/cjs/validator/rules/email.js.map +1 -0
  511. package/cjs/validator/rules/exists.d.ts +28 -0
  512. package/cjs/validator/rules/exists.d.ts.map +1 -0
  513. package/cjs/validator/rules/exists.js +89 -0
  514. package/cjs/validator/rules/exists.js.map +1 -0
  515. package/cjs/validator/rules/file.d.ts +20 -0
  516. package/cjs/validator/rules/file.d.ts.map +1 -0
  517. package/cjs/validator/rules/file.js +28 -0
  518. package/cjs/validator/rules/file.js.map +1 -0
  519. package/cjs/validator/rules/float.d.ts +20 -0
  520. package/cjs/validator/rules/float.d.ts.map +1 -0
  521. package/cjs/validator/rules/float.js +26 -0
  522. package/cjs/validator/rules/float.js.map +1 -0
  523. package/cjs/validator/rules/image.d.ts +20 -0
  524. package/cjs/validator/rules/image.d.ts.map +1 -0
  525. package/cjs/validator/rules/image.js +41 -0
  526. package/cjs/validator/rules/image.js.map +1 -0
  527. package/cjs/validator/rules/in.d.ts +24 -0
  528. package/cjs/validator/rules/in.d.ts.map +1 -0
  529. package/cjs/validator/rules/in.js +32 -0
  530. package/cjs/validator/rules/in.js.map +1 -0
  531. package/cjs/validator/rules/index.d.ts +36 -0
  532. package/cjs/validator/rules/index.d.ts.map +1 -0
  533. package/cjs/validator/rules/int.d.ts +20 -0
  534. package/cjs/validator/rules/int.d.ts.map +1 -0
  535. package/cjs/validator/rules/int.js +24 -0
  536. package/cjs/validator/rules/int.js.map +1 -0
  537. package/cjs/validator/rules/length.d.ts +16 -0
  538. package/cjs/validator/rules/length.d.ts.map +1 -0
  539. package/cjs/validator/rules/length.js +20 -0
  540. package/cjs/validator/rules/length.js.map +1 -0
  541. package/cjs/validator/rules/localized.d.ts +27 -0
  542. package/cjs/validator/rules/localized.d.ts.map +1 -0
  543. package/cjs/validator/rules/localized.js +55 -0
  544. package/cjs/validator/rules/localized.js.map +1 -0
  545. package/cjs/validator/rules/max-length.d.ts +20 -0
  546. package/cjs/validator/rules/max-length.d.ts.map +1 -0
  547. package/cjs/validator/rules/max-length.js +26 -0
  548. package/cjs/validator/rules/max-length.js.map +1 -0
  549. package/cjs/validator/rules/max.d.ts +20 -0
  550. package/cjs/validator/rules/max.d.ts.map +1 -0
  551. package/cjs/validator/rules/max.js +26 -0
  552. package/cjs/validator/rules/max.js.map +1 -0
  553. package/cjs/validator/rules/min-length.d.ts +20 -0
  554. package/cjs/validator/rules/min-length.d.ts.map +1 -0
  555. package/cjs/validator/rules/min-length.js +26 -0
  556. package/cjs/validator/rules/min-length.js.map +1 -0
  557. package/cjs/validator/rules/min.d.ts +20 -0
  558. package/cjs/validator/rules/min.d.ts.map +1 -0
  559. package/cjs/validator/rules/min.js +26 -0
  560. package/cjs/validator/rules/min.js.map +1 -0
  561. package/cjs/validator/rules/missing-if.d.ts +29 -0
  562. package/cjs/validator/rules/missing-if.d.ts.map +1 -0
  563. package/cjs/validator/rules/missing-if.js +44 -0
  564. package/cjs/validator/rules/missing-if.js.map +1 -0
  565. package/cjs/validator/rules/number.d.ts +20 -0
  566. package/cjs/validator/rules/number.d.ts.map +1 -0
  567. package/cjs/validator/rules/number.js +24 -0
  568. package/cjs/validator/rules/number.js.map +1 -0
  569. package/cjs/validator/rules/object.d.ts +16 -0
  570. package/cjs/validator/rules/object.d.ts.map +1 -0
  571. package/cjs/validator/rules/object.js +18 -0
  572. package/cjs/validator/rules/object.js.map +1 -0
  573. package/cjs/validator/rules/pattern.d.ts +22 -0
  574. package/cjs/validator/rules/pattern.d.ts.map +1 -0
  575. package/cjs/validator/rules/pattern.js +30 -0
  576. package/cjs/validator/rules/pattern.js.map +1 -0
  577. package/cjs/validator/rules/required-if-empty.d.ts +25 -0
  578. package/cjs/validator/rules/required-if-empty.d.ts.map +1 -0
  579. package/cjs/validator/rules/required-if-empty.js +34 -0
  580. package/cjs/validator/rules/required-if-empty.js.map +1 -0
  581. package/cjs/validator/rules/required-if.d.ts +29 -0
  582. package/cjs/validator/rules/required-if.d.ts.map +1 -0
  583. package/cjs/validator/rules/required-if.js +46 -0
  584. package/cjs/validator/rules/required-if.js.map +1 -0
  585. package/cjs/validator/rules/required-with-all.d.ts +28 -0
  586. package/cjs/validator/rules/required-with-all.d.ts.map +1 -0
  587. package/cjs/validator/rules/required-with-all.js +43 -0
  588. package/cjs/validator/rules/required-with-all.js.map +1 -0
  589. package/cjs/validator/rules/required-with.d.ts +28 -0
  590. package/cjs/validator/rules/required-with.d.ts.map +1 -0
  591. package/cjs/validator/rules/required-with.js +43 -0
  592. package/cjs/validator/rules/required-with.js.map +1 -0
  593. package/cjs/validator/rules/required.d.ts +20 -0
  594. package/cjs/validator/rules/required.d.ts.map +1 -0
  595. package/cjs/validator/rules/required.js +22 -0
  596. package/cjs/validator/rules/required.js.map +1 -0
  597. package/cjs/validator/rules/rule.d.ts +93 -0
  598. package/cjs/validator/rules/rule.d.ts.map +1 -0
  599. package/cjs/validator/rules/rule.js +124 -0
  600. package/cjs/validator/rules/rule.js.map +1 -0
  601. package/cjs/validator/rules/scalar.d.ts +16 -0
  602. package/cjs/validator/rules/scalar.d.ts.map +1 -0
  603. package/cjs/validator/rules/scalar.js +18 -0
  604. package/cjs/validator/rules/scalar.js.map +1 -0
  605. package/cjs/validator/rules/string.d.ts +16 -0
  606. package/cjs/validator/rules/string.d.ts.map +1 -0
  607. package/cjs/validator/rules/string.js +18 -0
  608. package/cjs/validator/rules/string.js.map +1 -0
  609. package/cjs/validator/rules/stringify.d.ts +16 -0
  610. package/cjs/validator/rules/stringify.d.ts.map +1 -0
  611. package/cjs/validator/rules/stringify.js +19 -0
  612. package/cjs/validator/rules/stringify.js.map +1 -0
  613. package/cjs/validator/rules/unique.d.ts +93 -0
  614. package/cjs/validator/rules/unique.d.ts.map +1 -0
  615. package/cjs/validator/rules/unique.js +186 -0
  616. package/cjs/validator/rules/unique.js.map +1 -0
  617. package/cjs/validator/rules/uploadable.d.ts +17 -0
  618. package/cjs/validator/rules/uploadable.d.ts.map +1 -0
  619. package/cjs/validator/rules/uploadable.js +33 -0
  620. package/cjs/validator/rules/uploadable.js.map +1 -0
  621. package/cjs/validator/rules/url.d.ts +16 -0
  622. package/cjs/validator/rules/url.d.ts.map +1 -0
  623. package/cjs/validator/rules/url.js +18 -0
  624. package/cjs/validator/rules/url.js.map +1 -0
  625. package/cjs/validator/rules-list.d.ts +39 -0
  626. package/cjs/validator/rules-list.d.ts.map +1 -0
  627. package/cjs/validator/rules-list.js +74 -0
  628. package/cjs/validator/rules-list.js.map +1 -0
  629. package/cjs/validator/types.d.ts +69 -0
  630. package/cjs/validator/types.d.ts.map +1 -0
  631. package/cjs/validator/utils.d.ts +6 -0
  632. package/cjs/validator/utils.d.ts.map +1 -0
  633. package/cjs/validator/utils.js +24 -0
  634. package/cjs/validator/utils.js.map +1 -0
  635. package/cjs/validator/validateAll.d.ts +7 -0
  636. package/cjs/validator/validateAll.d.ts.map +1 -0
  637. package/cjs/validator/validateAll.js +37 -0
  638. package/cjs/validator/validateAll.js.map +1 -0
  639. package/cjs/validator/validation-schema-validator.d.ts +94 -0
  640. package/cjs/validator/validation-schema-validator.d.ts.map +1 -0
  641. package/cjs/validator/validation-schema-validator.js +230 -0
  642. package/cjs/validator/validation-schema-validator.js.map +1 -0
  643. package/cjs/validator/validation-schema.d.ts +30 -0
  644. package/cjs/validator/validation-schema.d.ts.map +1 -0
  645. package/cjs/validator/validation-schema.js +51 -0
  646. package/cjs/validator/validation-schema.js.map +1 -0
  647. package/cjs/validator/validator-events.d.ts +6 -0
  648. package/cjs/validator/validator-events.d.ts.map +1 -0
  649. package/cjs/validator/validator-events.js +6 -0
  650. package/cjs/validator/validator-events.js.map +1 -0
  651. package/cjs/validator/validator.d.ts +60 -0
  652. package/cjs/validator/validator.d.ts.map +1 -0
  653. package/cjs/validator/validator.js +80 -0
  654. package/cjs/validator/validator.js.map +1 -0
  655. package/esm/application.js +1 -1
  656. package/esm/application.js.map +1 -1
  657. package/esm/console/commander.js +1 -1
  658. package/esm/console/commander.js.map +1 -1
  659. package/esm/http/UploadedFile.d.ts +7 -5
  660. package/esm/http/UploadedFile.d.ts.map +1 -1
  661. package/esm/http/UploadedFile.js +16 -9
  662. package/esm/http/UploadedFile.js.map +1 -1
  663. package/esm/http/request.d.ts.map +1 -1
  664. package/esm/http/request.js +2 -2
  665. package/esm/http/request.js.map +1 -1
  666. package/esm/modules/uploads/utils/get-watermark-options.js +1 -1
  667. package/esm/modules/uploads/utils/get-watermark-options.js.map +1 -1
  668. package/esm/repositories/repository-filler-manager.js +1 -1
  669. package/esm/repositories/repository-filler-manager.js.map +1 -1
  670. package/package.json +1 -1
@@ -0,0 +1,747 @@
1
+ 'use strict';var cache=require('@warlock.js/cache'),cascade=require('@warlock.js/cascade'),injectRequestContext=require('../http/middleware/inject-request-context.js'),baseRepositoryManager=require('./base-repository-manager.js'),repositoryListing=require('./repository-listing.js'),utils=require('./utils.js');class RepositoryListManager extends baseRepositoryManager.BaseRepositoryManager {
2
+ /**
3
+ * List default options
4
+ */
5
+ defaultOptions = {};
6
+ /**
7
+ * Simple selected columns
8
+ */
9
+ simpleSelectColumns = ["id"];
10
+ /**
11
+ * Default filters list
12
+ */
13
+ defaultFilters = {
14
+ id: "int",
15
+ ids: ["inInt", "id"],
16
+ except: (id, query) => {
17
+ if (Array.isArray(id)) {
18
+ query.whereNotIn("id", id.map(Number));
19
+ }
20
+ else {
21
+ query.where("id", "!=", Number(id));
22
+ }
23
+ },
24
+ createdBy: ["int", "createdBy.id"],
25
+ isActive: "boolean",
26
+ simple: (_value, query) => {
27
+ query.select(this.simpleSelectColumns);
28
+ },
29
+ };
30
+ /**
31
+ * Filter By options
32
+ */
33
+ filterBy = {};
34
+ /**
35
+ * List of repositories that should clear its cache when this repository is created, updated or deleted
36
+ */
37
+ clearCacheOnUpdate = [];
38
+ /**
39
+ * Whether to enable caching
40
+ */
41
+ isCacheable = true;
42
+ /**
43
+ * Cache driver
44
+ */
45
+ cacheDriver = cache.cache;
46
+ /**
47
+ * Set the cache driver name
48
+ * If set, then it will be used instead of the default value in this.cacheDriver
49
+ */
50
+ cacheDriverName = "";
51
+ /**
52
+ * Define the `isActive` column
53
+ *
54
+ * @default isActive
55
+ */
56
+ isActiveColumn = "isActive";
57
+ /**
58
+ * Define the value of the `isActive` column when the record is active
59
+ *
60
+ * @default true
61
+ */
62
+ isActiveValue = true;
63
+ /**
64
+ * Constructor
65
+ */
66
+ constructor() {
67
+ super();
68
+ this.prepareCache();
69
+ }
70
+ /**
71
+ * Get active column and its value
72
+ */
73
+ getIsActiveFilter() {
74
+ return {
75
+ [this.isActiveColumn]: this.isActiveValue,
76
+ };
77
+ }
78
+ /**
79
+ * Set cache driver
80
+ */
81
+ setCacheDriver(driver) {
82
+ this.cacheDriver = driver;
83
+ return this;
84
+ }
85
+ /**
86
+ * Get cache driver
87
+ */
88
+ getCacheDriver() {
89
+ return this.cacheDriver;
90
+ }
91
+ /**
92
+ * List All records
93
+ */
94
+ async all(options = {}) {
95
+ return (await this.list({ ...options, paginate: false })).documents;
96
+ }
97
+ /**
98
+ * Get all cached data
99
+ */
100
+ async allCached(options) {
101
+ return await this.cacheAll({ options, purge: options?.purgeCache });
102
+ }
103
+ /**
104
+ * List All Active records
105
+ */
106
+ async allActive(options) {
107
+ return (await this.listActive({ ...options, paginate: false })).documents;
108
+ }
109
+ /**
110
+ * List all active cached records
111
+ */
112
+ async allActiveCached(options) {
113
+ return await this.cacheAll({
114
+ options: { ...options, ...this.getIsActiveFilter() },
115
+ purge: options?.purgeCache,
116
+ });
117
+ }
118
+ /**
119
+ * Prepare cache
120
+ */
121
+ async prepareCache() {
122
+ if (!this.cacheDriver || !this.isCacheable)
123
+ return;
124
+ if (this.cacheDriverName) {
125
+ this.cacheDriver = await cache.cache.driver(this.cacheDriverName);
126
+ }
127
+ setTimeout(() => {
128
+ if (!this.model)
129
+ console.log(this);
130
+ this.model
131
+ .events()
132
+ .onSaved(async (model) => {
133
+ this.clearCache();
134
+ this.cacheModel(model);
135
+ for (const repository of this.clearCacheOnUpdate) {
136
+ repository.clearCache();
137
+ }
138
+ })
139
+ .onDeleted(() => {
140
+ this.clearCache();
141
+ for (const repository of this.clearCacheOnUpdate) {
142
+ repository.clearCache();
143
+ }
144
+ });
145
+ }, 0);
146
+ }
147
+ /**
148
+ * Cache the given model
149
+ */
150
+ async cacheModel(model) {
151
+ const cacheKey = this.cacheKey(`id.${model.id}`);
152
+ await this.cache(cacheKey, model.data);
153
+ }
154
+ /**
155
+ * Clear the entire cache
156
+ */
157
+ async clearCache() {
158
+ await this.cacheDriver.removeNamespace(this.cacheKey(""));
159
+ }
160
+ /**
161
+ * Before listing
162
+ * Called before listing records
163
+ */
164
+ async beforeListing(_query, _options) {
165
+ // override this method
166
+ }
167
+ /**
168
+ * On list
169
+ * Called after listing records
170
+ */
171
+ async onList(records) {
172
+ return records;
173
+ }
174
+ /**
175
+ * Merge default options with the given options
176
+ */
177
+ withDefaultOptions(options) {
178
+ return { ...utils.defaultRepositoryOptions, ...options };
179
+ }
180
+ /**
181
+ * Add default filters along side with the given filters
182
+ */
183
+ withDefaultFilters(filters = {}) {
184
+ return { ...this.defaultFilters, ...filters };
185
+ }
186
+ /**
187
+ * Get new query
188
+ */
189
+ newQuery() {
190
+ return this.model.aggregate();
191
+ }
192
+ /**
193
+ * An alias to newQuery
194
+ */
195
+ get query() {
196
+ return this.model.aggregate();
197
+ }
198
+ /**
199
+ * Get cached model
200
+ */
201
+ async getCachedModel(id) {
202
+ return this.getCachedModelBy("id", Number(id));
203
+ }
204
+ /**
205
+ * Get cached model by the given column
206
+ */
207
+ async getCachedModelBy(column, value, cacheKeyOptions) {
208
+ const cacheKey = this.cacheKey("data." + column + "." + value, cacheKeyOptions);
209
+ const cachedModel = await this.cacheDriver.get(cacheKey);
210
+ if (cachedModel) {
211
+ return cachedModel;
212
+ }
213
+ const model = await this.findBy(column, value);
214
+ if (!model)
215
+ return null;
216
+ this.cache(cacheKey, await model);
217
+ return model;
218
+ }
219
+ /**
220
+ * Get cached model data
221
+ */
222
+ async getCached(id) {
223
+ return this.getCachedBy("id", Number(id));
224
+ }
225
+ /**
226
+ * Get active cached model
227
+ */
228
+ async getActiveCached(id) {
229
+ const model = await this.getCached(id);
230
+ if (!model)
231
+ return null;
232
+ if (model.get(this.isActiveColumn) !== this.isActiveValue)
233
+ return null;
234
+ return model;
235
+ }
236
+ /**
237
+ * Generate cache key
238
+ */
239
+ cacheKey(key, moreOptions) {
240
+ let cacheKey = "repositories." + this.model.collection;
241
+ if (key) {
242
+ cacheKey += "." + JSON.stringify(key);
243
+ }
244
+ if (moreOptions) {
245
+ cacheKey += "." + JSON.stringify(moreOptions);
246
+ }
247
+ return cacheKey;
248
+ }
249
+ /**
250
+ * Get cached data by the given column
251
+ */
252
+ async getCachedBy(column, value, cacheKeyOptions) {
253
+ const { request } = injectRequestContext.useRequestStore() || {};
254
+ const localeCode = request.locale ? `locale.${request.locale}.` : "";
255
+ const cacheKey = this.cacheKey(`data.${localeCode}${column}.${value}`, cacheKeyOptions);
256
+ const cachedModel = await this.cacheDriver.get(cacheKey);
257
+ if (cachedModel) {
258
+ return this.newModel(cachedModel);
259
+ }
260
+ const model = await this.findBy(column, value);
261
+ if (!model)
262
+ return null;
263
+ this.cache(cacheKey, model.data);
264
+ return model;
265
+ }
266
+ /**
267
+ * Get and cached value by id then purge it from cache
268
+ */
269
+ async getCachedPurge(id) {
270
+ return this.getCachedByPurge("id", Number(id));
271
+ }
272
+ /**
273
+ * Get and cached by the given column then purge it from cache
274
+ */
275
+ async getCachedByPurge(column, value) {
276
+ const model = await this.getCachedBy(column, value);
277
+ if (!model)
278
+ return null;
279
+ this.clearCache();
280
+ return model;
281
+ }
282
+ /**
283
+ * List records
284
+ */
285
+ async list(options) {
286
+ const repositoryListing = this.newList(options);
287
+ await repositoryListing.list();
288
+ return {
289
+ documents: repositoryListing.documents,
290
+ paginationInfo: repositoryListing.paginationInfo,
291
+ };
292
+ }
293
+ /**
294
+ * Find latest records
295
+ */
296
+ async latest(options) {
297
+ return await this.list({
298
+ ...options,
299
+ orderBy: ["id", "desc"],
300
+ });
301
+ }
302
+ /**
303
+ * Get latest and active records
304
+ */
305
+ async latestActive(options) {
306
+ return await this.list({
307
+ ...this.getIsActiveFilter(),
308
+ ...options,
309
+ orderBy: ["id", "desc"],
310
+ });
311
+ }
312
+ /**
313
+ * Get oldest records
314
+ */
315
+ async oldest(options) {
316
+ return await this.list({
317
+ ...options,
318
+ orderBy: ["id", "asc"],
319
+ });
320
+ }
321
+ /**
322
+ * Get oldest and active records
323
+ */
324
+ async oldestActive(options) {
325
+ return await this.list({
326
+ ...this.getIsActiveFilter(),
327
+ ...options,
328
+ orderBy: ["id", "asc"],
329
+ });
330
+ }
331
+ /**
332
+ * List cached records
333
+ */
334
+ async listCached(options = {}) {
335
+ if (options.cacheCurrentLocale !== false) {
336
+ const localeCode = injectRequestContext.useRequestStore()?.request?.locale;
337
+ if (localeCode) {
338
+ if (!options) {
339
+ options = {};
340
+ }
341
+ options.locale = localeCode;
342
+ }
343
+ }
344
+ return this.cacheList({
345
+ options,
346
+ cacheKey: options.cacheKey,
347
+ purge: options.purgeCache,
348
+ });
349
+ }
350
+ /**
351
+ * Fetch cached records or cache new ones
352
+ */
353
+ async cacheList({ cacheKey = "list", options, purge, expiresAfter, }) {
354
+ if (!this.isCacheable)
355
+ return this.list(options);
356
+ // generate cache key for the list method
357
+ cacheKey = this.cacheKey(cacheKey, options);
358
+ // check if the data is already cached
359
+ const listing = await this.cacheDriver.get(cacheKey);
360
+ if (listing) {
361
+ if (purge) {
362
+ this.cacheDriver.remove(cacheKey);
363
+ }
364
+ return {
365
+ documents: this.mapModels(listing.documents),
366
+ paginationInfo: listing.paginationInfo,
367
+ };
368
+ }
369
+ // if we reached here then the data is not cached yet, so we need to fetch it from database first
370
+ const { documents, paginationInfo } = await this.list(options);
371
+ if (!purge) {
372
+ const cachedDocuments = documents.map(document => document.data);
373
+ // cache the data
374
+ // please note that models can not be serialized, thus we need to store only the document data itself
375
+ this.cacheDriver.set(cacheKey, {
376
+ documents: cachedDocuments,
377
+ paginationInfo,
378
+ }, expiresAfter);
379
+ }
380
+ return {
381
+ documents: documents,
382
+ paginationInfo: paginationInfo,
383
+ };
384
+ }
385
+ /**
386
+ * Fetch cached records or cache new ones
387
+ */
388
+ async cacheAll({ key = "all", options, expiresAfter, purge, }) {
389
+ // generate cache key for the list method
390
+ const cacheKey = this.cacheKey(key, options);
391
+ // check if the data is already cached
392
+ const listing = await this.cacheDriver.get(cacheKey);
393
+ if (listing) {
394
+ if (purge) {
395
+ this.cacheDriver.remove(cacheKey);
396
+ }
397
+ return this.mapModels(listing);
398
+ }
399
+ // if we reached here then the data is not cached yet, so we need to fetch it from database first
400
+ const documents = await this.all(options);
401
+ if (!purge) {
402
+ const cachedDocuments = documents.map(document => document.data);
403
+ // cache the data
404
+ // please note that models can not be serialized, thus we need to store only the document data itself
405
+ this.cacheDriver.set(cacheKey, cachedDocuments, expiresAfter);
406
+ }
407
+ return documents;
408
+ }
409
+ /**
410
+ * Get new repository listing instance
411
+ */
412
+ newList(options) {
413
+ if (!this.filterBy.id) {
414
+ this.filterBy.id = "int";
415
+ }
416
+ const listing = new repositoryListing.RepositoryListing(this, this.filterBy, {
417
+ ...this.defaultOptions,
418
+ ...(options || {}),
419
+ });
420
+ if (this.dateFormat) {
421
+ listing.setDateFormat(this.dateFormat);
422
+ }
423
+ if (this.dateTimeFormat) {
424
+ listing.setDateTimeFormat(this.dateTimeFormat);
425
+ }
426
+ return listing;
427
+ }
428
+ /**
429
+ * Map the given documents into models
430
+ */
431
+ mapModels(documents) {
432
+ return documents.map(document => this.newModel(document));
433
+ }
434
+ /**
435
+ * Count total records based on the given options
436
+ */
437
+ async count(options = {}) {
438
+ const repositoryListing = this.newList(options);
439
+ return await repositoryListing.count();
440
+ }
441
+ /**
442
+ * Count total active records
443
+ */
444
+ async countActive(options = {}) {
445
+ return await this.count({
446
+ ...this.getIsActiveFilter(),
447
+ ...options,
448
+ });
449
+ }
450
+ /**
451
+ * Get total records based on the given options and cache it
452
+ */
453
+ async countCached(options = {}) {
454
+ const localeCode = injectRequestContext.useRequestStore()?.request?.locale;
455
+ if (localeCode) {
456
+ if (!options) {
457
+ options = {};
458
+ }
459
+ options.locale = localeCode;
460
+ }
461
+ const cacheKey = this.cacheKey("count", options);
462
+ let count = await this.cacheDriver.get(cacheKey);
463
+ if (options?.purgeCache) {
464
+ this.cacheDriver.remove(cacheKey);
465
+ }
466
+ if (count !== undefined) {
467
+ return count;
468
+ }
469
+ count = await this.count(options);
470
+ if (!options.purgeCache) {
471
+ this.cache(cacheKey, count);
472
+ }
473
+ return count;
474
+ }
475
+ /**
476
+ * Count active records and cache it
477
+ */
478
+ async countActiveCached(options = {}) {
479
+ return await this.countCached({
480
+ ...this.getIsActiveFilter(),
481
+ ...options,
482
+ });
483
+ }
484
+ /**
485
+ * Cache the given key and value
486
+ */
487
+ async cache(key, value) {
488
+ return await this.cacheDriver.set(key, value);
489
+ }
490
+ /**
491
+ * List active cached records
492
+ */
493
+ async listActiveCached(options = {}) {
494
+ return this.listCached({
495
+ ...this.getIsActiveFilter(),
496
+ ...options,
497
+ });
498
+ }
499
+ /**
500
+ * List active records
501
+ */
502
+ async listActive(options = {}) {
503
+ return this.list({
504
+ ...this.getIsActiveFilter(),
505
+ ...options,
506
+ });
507
+ }
508
+ /**
509
+ * Chunk records
510
+ */
511
+ async chunk(options, callback) {
512
+ //
513
+ if (!options.limit &&
514
+ !this.defaultOptions.defaultLimit &&
515
+ !this.defaultOptions.limit) {
516
+ throw new Error("limit is missing in the chunk method, please pass it to the options or define it in this.options object");
517
+ }
518
+ const query = this.newList(options);
519
+ return await query.chunk(callback);
520
+ }
521
+ /**
522
+ * Chunk active records
523
+ */
524
+ async chunkActive(options, callback) {
525
+ return await this.chunk({
526
+ ...this.getIsActiveFilter(),
527
+ ...options,
528
+ }, callback);
529
+ }
530
+ /**
531
+ * Get active record
532
+ */
533
+ async getActive(id, options = {}) {
534
+ return this.first({
535
+ ...this.getIsActiveFilter(),
536
+ perform(query) {
537
+ query.where("id", Number(id));
538
+ },
539
+ ...options,
540
+ });
541
+ }
542
+ /**
543
+ * Get single record by id
544
+ */
545
+ async get(id, options = {}) {
546
+ return this.first({
547
+ perform(query) {
548
+ query.where("id", Number(id));
549
+ },
550
+ ...options,
551
+ });
552
+ }
553
+ /**
554
+ * Get owned record
555
+ */
556
+ async getOwned(userId, id, column = "createdBy") {
557
+ return await this.first({
558
+ perform(query) {
559
+ query.where({
560
+ id: Number(id),
561
+ [`${column}.id`]: userId,
562
+ });
563
+ },
564
+ });
565
+ }
566
+ /**
567
+ * Get owned records
568
+ */
569
+ async listOwned(userId, options = {}, column = "createdBy") {
570
+ return await this.list({
571
+ ...options,
572
+ perform(query) {
573
+ query.where(`${column}.id`, Number(userId));
574
+ },
575
+ });
576
+ }
577
+ /**
578
+ * Get owned active records
579
+ */
580
+ async listOwnedActive(userId, options = {}, column = "createdBy") {
581
+ return await this.list({
582
+ ...options,
583
+ ...this.getIsActiveFilter(),
584
+ perform(query) {
585
+ query.where(`${column}.id`, userId);
586
+ },
587
+ });
588
+ }
589
+ /**
590
+ * Get first record
591
+ */
592
+ async first(options) {
593
+ const { documents } = await this.list({
594
+ orderBy: ["id", "asc"],
595
+ ...options,
596
+ limit: 1,
597
+ });
598
+ return documents[0] ?? null;
599
+ }
600
+ /**
601
+ * Get first cached record
602
+ */
603
+ async firstCached(options) {
604
+ const { documents } = await this.listCached({
605
+ orderBy: ["id", "asc"],
606
+ ...options,
607
+ limit: 1,
608
+ });
609
+ return documents[0] ?? null;
610
+ }
611
+ /**
612
+ * Get first active record
613
+ */
614
+ async firstActive(options) {
615
+ const { documents } = await this.listActive({
616
+ orderBy: ["id", "asc"],
617
+ ...options,
618
+ limit: 1,
619
+ });
620
+ return documents[0] ?? null;
621
+ }
622
+ /**
623
+ * Get first active cached record
624
+ */
625
+ async firstActiveCached(options) {
626
+ const { documents } = await this.listActiveCached({
627
+ orderBy: ["id", "asc"],
628
+ ...options,
629
+ limit: 1,
630
+ });
631
+ return documents[0] ?? null;
632
+ }
633
+ /**
634
+ * Get last record
635
+ */
636
+ async last(options) {
637
+ const { documents } = await this.list({
638
+ orderBy: ["id", "desc"],
639
+ ...options,
640
+ limit: 1,
641
+ });
642
+ return documents[0];
643
+ }
644
+ /**
645
+ * Get last cached record
646
+ */
647
+ async lastCached(options) {
648
+ const { documents } = await this.listCached({
649
+ orderBy: ["id", "desc"],
650
+ ...options,
651
+ limit: 1,
652
+ });
653
+ return documents[0];
654
+ }
655
+ /**
656
+ * Get last active record
657
+ */
658
+ async lastActive(options) {
659
+ const { documents } = await this.list({
660
+ orderBy: ["id", "desc"],
661
+ ...this.getIsActiveFilter(),
662
+ ...options,
663
+ limit: 1,
664
+ });
665
+ return documents[0];
666
+ }
667
+ /**
668
+ * Get last active cached record
669
+ */
670
+ async lastActiveCached(options) {
671
+ const { documents } = await this.listCached({
672
+ orderBy: ["id", "desc"],
673
+ ...this.getIsActiveFilter(),
674
+ ...options,
675
+ limit: 1,
676
+ });
677
+ return documents[0];
678
+ }
679
+ /**
680
+ * Make filter
681
+ */
682
+ async filter(_query, _options) {
683
+ //
684
+ }
685
+ /**
686
+ * {@inheritdoc}
687
+ */
688
+ orderBy(_options) {
689
+ //
690
+ }
691
+ /**
692
+ * Find By id
693
+ */
694
+ async find(id) {
695
+ if (this.model && id instanceof this.model)
696
+ return id;
697
+ return await this.findBy("id", Number(id));
698
+ }
699
+ /**
700
+ * Find active document
701
+ */
702
+ async findActive(id) {
703
+ if (this.model && id instanceof this.model)
704
+ return id;
705
+ return await this.findBy("id", Number(id));
706
+ }
707
+ /**
708
+ * Find by the given column
709
+ */
710
+ async findBy(column, value) {
711
+ return this.first({
712
+ perform(query) {
713
+ query.where(column, value);
714
+ },
715
+ });
716
+ }
717
+ /**
718
+ * Find by the given column and make sure it is active
719
+ */
720
+ async findByActive(column, value) {
721
+ const isActiveFilter = this.getIsActiveFilter();
722
+ return this.first({
723
+ perform(query) {
724
+ query.where({
725
+ ...isActiveFilter,
726
+ [column]: value,
727
+ });
728
+ },
729
+ });
730
+ }
731
+ /**
732
+ * Find by the given column and cache it
733
+ * @alias getCached
734
+ */
735
+ async findCached(id) {
736
+ if (id instanceof cascade.Model)
737
+ return id;
738
+ return await this.getCached(id);
739
+ }
740
+ /**
741
+ * Find by the given column and cache it
742
+ * @alias getCachedBy
743
+ */
744
+ async findByCached(column, value) {
745
+ return await this.getCachedBy(column, value);
746
+ }
747
+ }exports.RepositoryListManager=RepositoryListManager;//# sourceMappingURL=repository-list-manager.js.map