arkos 0.0.13 → 0.0.15

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 (285) hide show
  1. package/dist/app.d.ts.map +1 -0
  2. package/dist/app.js.map +1 -0
  3. package/dist/modules/auth/auth.controller.d.ts.map +1 -0
  4. package/dist/modules/auth/auth.controller.js.map +1 -0
  5. package/dist/modules/auth/auth.router.d.ts.map +1 -0
  6. package/dist/modules/auth/auth.router.js.map +1 -0
  7. package/dist/modules/auth/auth.service.d.ts.map +1 -0
  8. package/dist/modules/auth/auth.service.js.map +1 -0
  9. package/dist/modules/base/base.controller.d.ts.map +1 -0
  10. package/dist/modules/base/base.controller.js.map +1 -0
  11. package/dist/modules/base/base.middlewares.d.ts.map +1 -0
  12. package/dist/modules/base/base.middlewares.js.map +1 -0
  13. package/dist/modules/base/base.router.d.ts.map +1 -0
  14. package/dist/modules/base/base.router.js.map +1 -0
  15. package/dist/modules/base/base.service.d.ts.map +1 -0
  16. package/dist/modules/base/base.service.js.map +1 -0
  17. package/dist/modules/base/utils/base.helpers.d.ts.map +1 -0
  18. package/dist/modules/base/utils/base.helpers.js.map +1 -0
  19. package/dist/modules/email/email.service.d.ts.map +1 -0
  20. package/dist/modules/email/email.service.js.map +1 -0
  21. package/dist/modules/email/utils/helpers/email.helpers.d.ts.map +1 -0
  22. package/dist/modules/email/utils/helpers/email.helpers.js.map +1 -0
  23. package/dist/modules/error-handler/error-handler.controller.d.ts.map +1 -0
  24. package/dist/modules/error-handler/error-handler.controller.js.map +1 -0
  25. package/dist/modules/error-handler/utils/app-error.d.ts.map +1 -0
  26. package/dist/modules/error-handler/utils/app-error.js.map +1 -0
  27. package/dist/modules/error-handler/utils/catch-async.d.ts.map +1 -0
  28. package/dist/modules/error-handler/utils/catch-async.js.map +1 -0
  29. package/dist/modules/error-handler/utils/error-handler.helpers.d.ts.map +1 -0
  30. package/dist/modules/error-handler/utils/error-handler.helpers.js.map +1 -0
  31. package/dist/modules/file-uploader/file-uploader.service.d.ts.map +1 -0
  32. package/dist/modules/file-uploader/file-uploader.service.js.map +1 -0
  33. package/dist/paths.d.ts.map +1 -0
  34. package/dist/paths.js.map +1 -0
  35. package/dist/server.d.ts.map +1 -0
  36. package/dist/server.js.map +1 -0
  37. package/dist/utils/features/api.features.d.ts.map +1 -0
  38. package/dist/utils/features/api.features.js.map +1 -0
  39. package/dist/utils/features/prisma.helpers.d.ts.map +1 -0
  40. package/dist/utils/features/prisma.helpers.js.map +1 -0
  41. package/dist/utils/helpers/api.features.helpers.d.ts.map +1 -0
  42. package/dist/utils/helpers/api.features.helpers.js.map +1 -0
  43. package/dist/utils/helpers/models.helpers.d.ts.map +1 -0
  44. package/dist/utils/helpers/models.helpers.js.map +1 -0
  45. package/dist/utils/helpers/text.helpers.d.ts.map +1 -0
  46. package/dist/utils/helpers/text.helpers.js.map +1 -0
  47. package/dist/utils/permissions/index.d.ts.map +1 -0
  48. package/dist/utils/permissions/index.js.map +1 -0
  49. package/dist/utils/scripts/export-prisma-types.d.ts.map +1 -0
  50. package/dist/utils/scripts/export-prisma-types.js.map +1 -0
  51. package/dist/utils/scripts/generate-zod-schemas.d.ts.map +1 -0
  52. package/dist/utils/scripts/generate-zod-schemas.js.map +1 -0
  53. package/dist/utils/scripts/prisma-db-push.d.ts.map +1 -0
  54. package/dist/utils/scripts/prisma-db-push.js.map +1 -0
  55. package/dist/utils/validate-dto.d.ts.map +1 -0
  56. package/dist/utils/validate-dto.js.map +1 -0
  57. package/package.json +1 -1
  58. package/dist/main/app.d.ts +0 -11
  59. package/dist/main/app.d.ts.map +0 -1
  60. package/dist/main/app.js +0 -121
  61. package/dist/main/app.js.map +0 -1
  62. package/dist/main/modules/auth/auth.controller.d.ts.map +0 -1
  63. package/dist/main/modules/auth/auth.controller.js.map +0 -1
  64. package/dist/main/modules/auth/auth.router.d.ts.map +0 -1
  65. package/dist/main/modules/auth/auth.router.js.map +0 -1
  66. package/dist/main/modules/auth/auth.service.d.ts.map +0 -1
  67. package/dist/main/modules/auth/auth.service.js.map +0 -1
  68. package/dist/main/modules/base/base.controller.d.ts.map +0 -1
  69. package/dist/main/modules/base/base.controller.js.map +0 -1
  70. package/dist/main/modules/base/base.middlewares.d.ts.map +0 -1
  71. package/dist/main/modules/base/base.middlewares.js.map +0 -1
  72. package/dist/main/modules/base/base.router.d.ts.map +0 -1
  73. package/dist/main/modules/base/base.router.js.map +0 -1
  74. package/dist/main/modules/base/base.service.d.ts.map +0 -1
  75. package/dist/main/modules/base/base.service.js.map +0 -1
  76. package/dist/main/modules/base/utils/base.helpers.d.ts.map +0 -1
  77. package/dist/main/modules/base/utils/base.helpers.js.map +0 -1
  78. package/dist/main/modules/email/email.service.d.ts.map +0 -1
  79. package/dist/main/modules/email/email.service.js.map +0 -1
  80. package/dist/main/modules/email/utils/helpers/email.helpers.d.ts.map +0 -1
  81. package/dist/main/modules/email/utils/helpers/email.helpers.js.map +0 -1
  82. package/dist/main/modules/error-handler/error-handler.controller.d.ts.map +0 -1
  83. package/dist/main/modules/error-handler/error-handler.controller.js.map +0 -1
  84. package/dist/main/modules/error-handler/utils/app-error.d.ts.map +0 -1
  85. package/dist/main/modules/error-handler/utils/app-error.js.map +0 -1
  86. package/dist/main/modules/error-handler/utils/catch-async.d.ts.map +0 -1
  87. package/dist/main/modules/error-handler/utils/catch-async.js.map +0 -1
  88. package/dist/main/modules/error-handler/utils/error-handler.helpers.d.ts.map +0 -1
  89. package/dist/main/modules/error-handler/utils/error-handler.helpers.js.map +0 -1
  90. package/dist/main/modules/file-uploader/file-uploader.service.d.ts.map +0 -1
  91. package/dist/main/modules/file-uploader/file-uploader.service.js.map +0 -1
  92. package/dist/main/paths.d.ts.map +0 -1
  93. package/dist/main/paths.js.map +0 -1
  94. package/dist/main/server.d.ts.map +0 -1
  95. package/dist/main/server.js +0 -52
  96. package/dist/main/server.js.map +0 -1
  97. package/dist/main/utils/features/api.features.d.ts.map +0 -1
  98. package/dist/main/utils/features/api.features.js.map +0 -1
  99. package/dist/main/utils/features/prisma.helpers.d.ts +0 -3
  100. package/dist/main/utils/features/prisma.helpers.d.ts.map +0 -1
  101. package/dist/main/utils/features/prisma.helpers.js +0 -20
  102. package/dist/main/utils/features/prisma.helpers.js.map +0 -1
  103. package/dist/main/utils/helpers/api.features.helpers.d.ts.map +0 -1
  104. package/dist/main/utils/helpers/api.features.helpers.js.map +0 -1
  105. package/dist/main/utils/helpers/models.helpers.d.ts.map +0 -1
  106. package/dist/main/utils/helpers/models.helpers.js.map +0 -1
  107. package/dist/main/utils/helpers/text.helpers.d.ts.map +0 -1
  108. package/dist/main/utils/helpers/text.helpers.js.map +0 -1
  109. package/dist/main/utils/permissions/index.d.ts.map +0 -1
  110. package/dist/main/utils/permissions/index.js.map +0 -1
  111. package/dist/main/utils/scripts/export-prisma-types.d.ts.map +0 -1
  112. package/dist/main/utils/scripts/export-prisma-types.js.map +0 -1
  113. package/dist/main/utils/scripts/generate-zod-schemas.d.ts.map +0 -1
  114. package/dist/main/utils/scripts/generate-zod-schemas.js.map +0 -1
  115. package/dist/main/utils/scripts/prisma-db-push.d.ts.map +0 -1
  116. package/dist/main/utils/scripts/prisma-db-push.js.map +0 -1
  117. package/dist/main/utils/validate-dto.d.ts.map +0 -1
  118. package/dist/main/utils/validate-dto.js.map +0 -1
  119. package/dist/src/app.d.ts.map +0 -1
  120. package/dist/src/app.js.map +0 -1
  121. package/dist/src/modules/auth/auth.controller.d.ts +0 -23
  122. package/dist/src/modules/auth/auth.controller.d.ts.map +0 -1
  123. package/dist/src/modules/auth/auth.controller.js +0 -310
  124. package/dist/src/modules/auth/auth.controller.js.map +0 -1
  125. package/dist/src/modules/auth/auth.router.d.ts +0 -4
  126. package/dist/src/modules/auth/auth.router.d.ts.map +0 -1
  127. package/dist/src/modules/auth/auth.router.js +0 -64
  128. package/dist/src/modules/auth/auth.router.js.map +0 -1
  129. package/dist/src/modules/auth/auth.service.d.ts +0 -16
  130. package/dist/src/modules/auth/auth.service.d.ts.map +0 -1
  131. package/dist/src/modules/auth/auth.service.js +0 -120
  132. package/dist/src/modules/auth/auth.service.js.map +0 -1
  133. package/dist/src/modules/base/base.controller.d.ts +0 -17
  134. package/dist/src/modules/base/base.controller.d.ts.map +0 -1
  135. package/dist/src/modules/base/base.controller.js +0 -296
  136. package/dist/src/modules/base/base.controller.js.map +0 -1
  137. package/dist/src/modules/base/base.middlewares.d.ts +0 -20
  138. package/dist/src/modules/base/base.middlewares.d.ts.map +0 -1
  139. package/dist/src/modules/base/base.middlewares.js +0 -86
  140. package/dist/src/modules/base/base.middlewares.js.map +0 -1
  141. package/dist/src/modules/base/base.router.d.ts +0 -4
  142. package/dist/src/modules/base/base.router.d.ts.map +0 -1
  143. package/dist/src/modules/base/base.router.js +0 -75
  144. package/dist/src/modules/base/base.router.js.map +0 -1
  145. package/dist/src/modules/base/base.service.d.ts +0 -32
  146. package/dist/src/modules/base/base.service.d.ts.map +0 -1
  147. package/dist/src/modules/base/base.service.js +0 -149
  148. package/dist/src/modules/base/base.service.js.map +0 -1
  149. package/dist/src/modules/base/utils/base.helpers.d.ts +0 -29
  150. package/dist/src/modules/base/utils/base.helpers.d.ts.map +0 -1
  151. package/dist/src/modules/base/utils/base.helpers.js +0 -106
  152. package/dist/src/modules/base/utils/base.helpers.js.map +0 -1
  153. package/dist/src/modules/email/email.service.d.ts +0 -22
  154. package/dist/src/modules/email/email.service.d.ts.map +0 -1
  155. package/dist/src/modules/email/email.service.js +0 -45
  156. package/dist/src/modules/email/email.service.js.map +0 -1
  157. package/dist/src/modules/email/utils/helpers/email.helpers.d.ts +0 -9
  158. package/dist/src/modules/email/utils/helpers/email.helpers.d.ts.map +0 -1
  159. package/dist/src/modules/email/utils/helpers/email.helpers.js +0 -25
  160. package/dist/src/modules/email/utils/helpers/email.helpers.js.map +0 -1
  161. package/dist/src/modules/error-handler/error-handler.controller.d.ts +0 -4
  162. package/dist/src/modules/error-handler/error-handler.controller.d.ts.map +0 -1
  163. package/dist/src/modules/error-handler/error-handler.controller.js +0 -182
  164. package/dist/src/modules/error-handler/error-handler.controller.js.map +0 -1
  165. package/dist/src/modules/error-handler/utils/app-error.d.ts +0 -11
  166. package/dist/src/modules/error-handler/utils/app-error.d.ts.map +0 -1
  167. package/dist/src/modules/error-handler/utils/app-error.js +0 -23
  168. package/dist/src/modules/error-handler/utils/app-error.js.map +0 -1
  169. package/dist/src/modules/error-handler/utils/catch-async.d.ts +0 -4
  170. package/dist/src/modules/error-handler/utils/catch-async.d.ts.map +0 -1
  171. package/dist/src/modules/error-handler/utils/catch-async.js +0 -9
  172. package/dist/src/modules/error-handler/utils/catch-async.js.map +0 -1
  173. package/dist/src/modules/error-handler/utils/error-handler.helpers.d.ts +0 -43
  174. package/dist/src/modules/error-handler/utils/error-handler.helpers.d.ts.map +0 -1
  175. package/dist/src/modules/error-handler/utils/error-handler.helpers.js +0 -209
  176. package/dist/src/modules/error-handler/utils/error-handler.helpers.js.map +0 -1
  177. package/dist/src/modules/file-uploader/file-uploader.service.d.ts +0 -20
  178. package/dist/src/modules/file-uploader/file-uploader.service.d.ts.map +0 -1
  179. package/dist/src/modules/file-uploader/file-uploader.service.js +0 -114
  180. package/dist/src/modules/file-uploader/file-uploader.service.js.map +0 -1
  181. package/dist/src/paths.d.ts +0 -2
  182. package/dist/src/paths.d.ts.map +0 -1
  183. package/dist/src/paths.js +0 -9
  184. package/dist/src/paths.js.map +0 -1
  185. package/dist/src/server.d.ts +0 -21
  186. package/dist/src/server.d.ts.map +0 -1
  187. package/dist/src/server.js.map +0 -1
  188. package/dist/src/utils/features/api.features.d.ts +0 -20
  189. package/dist/src/utils/features/api.features.d.ts.map +0 -1
  190. package/dist/src/utils/features/api.features.js +0 -175
  191. package/dist/src/utils/features/api.features.js.map +0 -1
  192. package/dist/src/utils/features/prisma.helpers.d.ts.map +0 -1
  193. package/dist/src/utils/features/prisma.helpers.js.map +0 -1
  194. package/dist/src/utils/helpers/api.features.helpers.d.ts +0 -41
  195. package/dist/src/utils/helpers/api.features.helpers.d.ts.map +0 -1
  196. package/dist/src/utils/helpers/api.features.helpers.js +0 -161
  197. package/dist/src/utils/helpers/api.features.helpers.js.map +0 -1
  198. package/dist/src/utils/helpers/models.helpers.d.ts +0 -21
  199. package/dist/src/utils/helpers/models.helpers.d.ts.map +0 -1
  200. package/dist/src/utils/helpers/models.helpers.js +0 -192
  201. package/dist/src/utils/helpers/models.helpers.js.map +0 -1
  202. package/dist/src/utils/helpers/text.helpers.d.ts +0 -2
  203. package/dist/src/utils/helpers/text.helpers.d.ts.map +0 -1
  204. package/dist/src/utils/helpers/text.helpers.js +0 -12
  205. package/dist/src/utils/helpers/text.helpers.js.map +0 -1
  206. package/dist/src/utils/permissions/index.d.ts +0 -3
  207. package/dist/src/utils/permissions/index.d.ts.map +0 -1
  208. package/dist/src/utils/permissions/index.js +0 -17
  209. package/dist/src/utils/permissions/index.js.map +0 -1
  210. package/dist/src/utils/prisma.d.ts +0 -3
  211. package/dist/src/utils/prisma.d.ts.map +0 -1
  212. package/dist/src/utils/prisma.js +0 -6
  213. package/dist/src/utils/prisma.js.map +0 -1
  214. package/dist/src/utils/scripts/export-prisma-types.d.ts +0 -2
  215. package/dist/src/utils/scripts/export-prisma-types.d.ts.map +0 -1
  216. package/dist/src/utils/scripts/export-prisma-types.js +0 -152
  217. package/dist/src/utils/scripts/export-prisma-types.js.map +0 -1
  218. package/dist/src/utils/scripts/generate-zod-schemas.d.ts +0 -2
  219. package/dist/src/utils/scripts/generate-zod-schemas.d.ts.map +0 -1
  220. package/dist/src/utils/scripts/generate-zod-schemas.js +0 -121
  221. package/dist/src/utils/scripts/generate-zod-schemas.js.map +0 -1
  222. package/dist/src/utils/scripts/prisma-db-push.d.ts +0 -2
  223. package/dist/src/utils/scripts/prisma-db-push.d.ts.map +0 -1
  224. package/dist/src/utils/scripts/prisma-db-push.js +0 -24
  225. package/dist/src/utils/scripts/prisma-db-push.js.map +0 -1
  226. package/dist/src/utils/validate-dto.d.ts +0 -3
  227. package/dist/src/utils/validate-dto.d.ts.map +0 -1
  228. package/dist/src/utils/validate-dto.js +0 -17
  229. package/dist/src/utils/validate-dto.js.map +0 -1
  230. /package/dist/{src/app.d.ts → app.d.ts} +0 -0
  231. /package/dist/{src/app.js → app.js} +0 -0
  232. /package/dist/{main/modules → modules}/auth/auth.controller.d.ts +0 -0
  233. /package/dist/{main/modules → modules}/auth/auth.controller.js +0 -0
  234. /package/dist/{main/modules → modules}/auth/auth.router.d.ts +0 -0
  235. /package/dist/{main/modules → modules}/auth/auth.router.js +0 -0
  236. /package/dist/{main/modules → modules}/auth/auth.service.d.ts +0 -0
  237. /package/dist/{main/modules → modules}/auth/auth.service.js +0 -0
  238. /package/dist/{main/modules → modules}/base/base.controller.d.ts +0 -0
  239. /package/dist/{main/modules → modules}/base/base.controller.js +0 -0
  240. /package/dist/{main/modules → modules}/base/base.middlewares.d.ts +0 -0
  241. /package/dist/{main/modules → modules}/base/base.middlewares.js +0 -0
  242. /package/dist/{main/modules → modules}/base/base.router.d.ts +0 -0
  243. /package/dist/{main/modules → modules}/base/base.router.js +0 -0
  244. /package/dist/{main/modules → modules}/base/base.service.d.ts +0 -0
  245. /package/dist/{main/modules → modules}/base/base.service.js +0 -0
  246. /package/dist/{main/modules → modules}/base/utils/base.helpers.d.ts +0 -0
  247. /package/dist/{main/modules → modules}/base/utils/base.helpers.js +0 -0
  248. /package/dist/{main/modules → modules}/email/email.service.d.ts +0 -0
  249. /package/dist/{main/modules → modules}/email/email.service.js +0 -0
  250. /package/dist/{main/modules → modules}/email/utils/helpers/email.helpers.d.ts +0 -0
  251. /package/dist/{main/modules → modules}/email/utils/helpers/email.helpers.js +0 -0
  252. /package/dist/{main/modules → modules}/error-handler/error-handler.controller.d.ts +0 -0
  253. /package/dist/{main/modules → modules}/error-handler/error-handler.controller.js +0 -0
  254. /package/dist/{main/modules → modules}/error-handler/utils/app-error.d.ts +0 -0
  255. /package/dist/{main/modules → modules}/error-handler/utils/app-error.js +0 -0
  256. /package/dist/{main/modules → modules}/error-handler/utils/catch-async.d.ts +0 -0
  257. /package/dist/{main/modules → modules}/error-handler/utils/catch-async.js +0 -0
  258. /package/dist/{main/modules → modules}/error-handler/utils/error-handler.helpers.d.ts +0 -0
  259. /package/dist/{main/modules → modules}/error-handler/utils/error-handler.helpers.js +0 -0
  260. /package/dist/{main/modules → modules}/file-uploader/file-uploader.service.d.ts +0 -0
  261. /package/dist/{main/modules → modules}/file-uploader/file-uploader.service.js +0 -0
  262. /package/dist/{main/paths.d.ts → paths.d.ts} +0 -0
  263. /package/dist/{main/paths.js → paths.js} +0 -0
  264. /package/dist/{main/server.d.ts → server.d.ts} +0 -0
  265. /package/dist/{src/server.js → server.js} +0 -0
  266. /package/dist/{main/utils → utils}/features/api.features.d.ts +0 -0
  267. /package/dist/{main/utils → utils}/features/api.features.js +0 -0
  268. /package/dist/{src/utils → utils}/features/prisma.helpers.d.ts +0 -0
  269. /package/dist/{src/utils → utils}/features/prisma.helpers.js +0 -0
  270. /package/dist/{main/utils → utils}/helpers/api.features.helpers.d.ts +0 -0
  271. /package/dist/{main/utils → utils}/helpers/api.features.helpers.js +0 -0
  272. /package/dist/{main/utils → utils}/helpers/models.helpers.d.ts +0 -0
  273. /package/dist/{main/utils → utils}/helpers/models.helpers.js +0 -0
  274. /package/dist/{main/utils → utils}/helpers/text.helpers.d.ts +0 -0
  275. /package/dist/{main/utils → utils}/helpers/text.helpers.js +0 -0
  276. /package/dist/{main/utils → utils}/permissions/index.d.ts +0 -0
  277. /package/dist/{main/utils → utils}/permissions/index.js +0 -0
  278. /package/dist/{main/utils → utils}/scripts/export-prisma-types.d.ts +0 -0
  279. /package/dist/{main/utils → utils}/scripts/export-prisma-types.js +0 -0
  280. /package/dist/{main/utils → utils}/scripts/generate-zod-schemas.d.ts +0 -0
  281. /package/dist/{main/utils → utils}/scripts/generate-zod-schemas.js +0 -0
  282. /package/dist/{main/utils → utils}/scripts/prisma-db-push.d.ts +0 -0
  283. /package/dist/{main/utils → utils}/scripts/prisma-db-push.js +0 -0
  284. /package/dist/{main/utils → utils}/validate-dto.d.ts +0 -0
  285. /package/dist/{main/utils → utils}/validate-dto.js +0 -0
@@ -1,175 +0,0 @@
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 deepmerge_1 = __importDefault(require("deepmerge"));
7
- const api_features_helpers_1 = require("../helpers/api.features.helpers");
8
- const app_error_1 = __importDefault(require("../../modules/error-handler/utils/app-error"));
9
- const app_1 = require("../../app");
10
- class APIFeatures {
11
- req; // The Prisma query
12
- searchParams; // The query string parameters from the request
13
- searchParamsWithModifiers; // The query string parameters from the request
14
- filters = {};
15
- modelName;
16
- relationFields;
17
- excludedFields = [
18
- "page",
19
- "sort",
20
- "limit",
21
- "fields",
22
- "addFields",
23
- "removeFields",
24
- "search",
25
- "include",
26
- "filterMode",
27
- "where",
28
- "prismaQueryOptions",
29
- "ignoredFields",
30
- ];
31
- constructor(req, modelName, relationFields) {
32
- this.req = req;
33
- this.modelName = modelName;
34
- this.searchParams = (0, api_features_helpers_1.parseQueryParamsWithModifiers)(req.query);
35
- this.filters = { ...this.filters };
36
- if (relationFields)
37
- this.filters.iclude = relationFields;
38
- this.relationFields = relationFields || {};
39
- }
40
- filter() {
41
- const searchableFields = [];
42
- const queryObj = { ...this.searchParams };
43
- this.excludedFields.forEach((el) => delete queryObj[el]);
44
- let queryStr = JSON.stringify(queryObj);
45
- queryStr = queryStr.replace(/\b(gte|gt|lte|lt)\b/g, (match) => `${match}`);
46
- const whereObj = { ...this.req.params, ...queryObj };
47
- const whereLogicalOperatorFilters = Object.keys(whereObj).map((key) => ({
48
- [key]: whereObj[key],
49
- }));
50
- let whereOptions = whereLogicalOperatorFilters.length > 0
51
- ? {
52
- [this.req.query?.filterMode ?? "OR"]: whereLogicalOperatorFilters,
53
- }
54
- : {};
55
- if (!!this.searchParams.search) {
56
- Object.keys(app_1.prisma[this.modelName].fields).forEach((key) => {
57
- const field = app_1.prisma[this.modelName].fields[key];
58
- if (field.typeName === "String" &&
59
- key !== "id" &&
60
- !field.isList &&
61
- !field.name.includes("Id") &&
62
- !field.name.includes("ID")) {
63
- searchableFields.push({
64
- [`${key}`]: {
65
- contains: this.searchParams.search,
66
- mode: "insensitive",
67
- },
68
- });
69
- }
70
- });
71
- whereOptions = (0, deepmerge_1.default)(whereOptions, {
72
- OR: searchableFields,
73
- });
74
- }
75
- const parsedQueryOptions = typeof this.req.query?.prismaQueryOptions === "string"
76
- ? JSON.parse(this.req.query?.prismaQueryOptions)
77
- : {};
78
- this.filters = (0, deepmerge_1.default)({
79
- where: whereOptions,
80
- }, parsedQueryOptions, this.filters);
81
- return this;
82
- }
83
- search() {
84
- if (this.searchParams?.search) {
85
- this.filters = (0, deepmerge_1.default)(this.filters, {
86
- where: {
87
- OR: [],
88
- },
89
- });
90
- }
91
- }
92
- sort() {
93
- if (this.searchParams.sort) {
94
- const sortBy = this.searchParams?.sort
95
- ?.split(",")
96
- ?.map((field) => ({
97
- [field.startsWith("-") ? field.substring(1) : field]: field.startsWith("-") ? "desc" : "asc",
98
- }));
99
- this.filters = (0, deepmerge_1.default)(this.filters, { orderBy: sortBy });
100
- }
101
- return this;
102
- }
103
- limitFields() {
104
- if (this.searchParams?.fields &&
105
- !this.searchParams?.addFields &&
106
- !this.searchParams?.removeFields) {
107
- const fieldsToSelect = this.searchParams.fields
108
- .split(",")
109
- .filter((field) => !field.startsWith("+") && !field.startsWith("-"));
110
- this.filters = {
111
- ...this.filters,
112
- select: fieldsToSelect.reduce((acc, field) => {
113
- acc[field] = true;
114
- return acc;
115
- }, {}),
116
- };
117
- this.filters.select = { ...this.filters.select, ...this.filters.include };
118
- delete this.filters.include;
119
- }
120
- else if (this.searchParams?.fields &&
121
- (this.searchParams?.addFields || this.searchParams?.removeFields))
122
- throw new app_error_1.default("Cannot use fields in the same query with addFields or removeFields.", 400);
123
- if (this.searchParams?.addFields && !this.searchParams?.fields) {
124
- const fieldsToAdd = this.searchParams.addFields
125
- .split(",")
126
- .filter((field) => field.startsWith("+"));
127
- this.filters = {
128
- ...this.filters,
129
- select: {
130
- ...this.filters.include,
131
- ...fieldsToAdd.reduce((acc, field) => {
132
- acc[field.replace("+", "")] = true;
133
- return acc;
134
- }, {}),
135
- },
136
- };
137
- }
138
- else if (this.searchParams?.fields && this.searchParams?.addFields)
139
- throw new app_error_1.default("Cannot use addFields in the same query with fields.", 400);
140
- if (this.searchParams?.removeFields && !this.searchParams?.fields) {
141
- const fieldsToRemove = this.searchParams.removeFields
142
- .split(",")
143
- .filter((field) => field.startsWith("-"));
144
- this.filters = {
145
- ...this.filters,
146
- select: {
147
- ...this.filters.include,
148
- ...fieldsToRemove.reduce((acc, field) => {
149
- acc[field.replace("-", "")] = false;
150
- return acc;
151
- }, {}),
152
- },
153
- };
154
- }
155
- else if (this.searchParams?.removeFields && this.searchParams?.addFields)
156
- throw new app_error_1.default("Cannot use removeFields in the same query with fields.", 400);
157
- return this;
158
- }
159
- paginate() {
160
- const page = parseInt(this.searchParams.page, 10) || 1;
161
- const limit = parseInt(this.searchParams.limit, 10) || 30;
162
- const skip = (page - 1) * limit;
163
- this.filters = {
164
- ...this.filters,
165
- skip,
166
- take: limit,
167
- };
168
- return this;
169
- }
170
- async exec() {
171
- return await app_1.prisma[this.modelName].findMany(this.filters);
172
- }
173
- }
174
- exports.default = APIFeatures;
175
- //# sourceMappingURL=api.features.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.features.js","sourceRoot":"","sources":["../../../../src/utils/features/api.features.ts"],"names":[],"mappings":";;;;;AACA,0DAAkC;AAClC,0EAAgF;AAChF,4FAAmE;AACnE,mCAAmC;AAInC,MAAqB,WAAW;IAC9B,GAAG,CAAU,CAAC,mBAAmB;IACjC,YAAY,CAAM,CAAC,+CAA+C;IAClE,yBAAyB,CAAM,CAAC,+CAA+C;IAC/E,OAAO,GAAQ,EAAE,CAAC;IAClB,SAAS,CAAY;IACrB,cAAc,CAA0B;IACxC,cAAc,GAAG;QACf,MAAM;QACN,MAAM;QACN,OAAO;QACP,QAAQ;QACR,WAAW;QACX,cAAc;QACd,QAAQ;QACR,SAAS;QACT,YAAY;QACZ,OAAO;QACP,oBAAoB;QACpB,eAAe;KAChB,CAAC;IAEF,YACE,GAAY,EACZ,SAAoB,EACpB,cAAwC;QAExC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAA,oDAA6B,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAEnC,IAAI,cAAc;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,cAAc,IAAI,EAAE,CAAC;IAC7C,CAAC;IAED,MAAM;QACJ,MAAM,gBAAgB,GAA0B,EAAE,CAAC;QAEnD,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAE1C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzD,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC;QAE3E,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAC;QACrD,MAAM,2BAA2B,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACtE,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC;SACrB,CAAC,CAAC,CAAC;QAEJ,IAAI,YAAY,GACd,2BAA2B,CAAC,MAAM,GAAG,CAAC;YACpC,CAAC,CAAC;gBACE,CAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,UAAqB,IAAI,IAAI,CAAC,EAC9C,2BAA2B;aAC9B;YACH,CAAC,CAAC,EAAE,CAAC;QAET,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAE,YAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClE,MAAM,KAAK,GAAK,YAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAc,CAAC,GAAG,CAAC,CAAC;gBACnE,IACE,KAAK,CAAC,QAAQ,KAAK,QAAQ;oBAC3B,GAAG,KAAK,IAAI;oBACZ,CAAC,KAAK,CAAC,MAAM;oBACb,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC1B,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAC1B,CAAC;oBACD,gBAAgB,CAAC,IAAI,CAAC;wBACpB,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE;4BACV,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM;4BAClC,IAAI,EAAE,aAAa;yBACpB;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,YAAY,GAAG,IAAA,mBAAS,EAAC,YAAY,EAAE;gBACrC,EAAE,EAAE,gBAAgB;aACrB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,kBAAkB,GACtB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK,QAAQ;YACpD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC;YAChD,CAAC,CAAC,EAAE,CAAC;QAET,IAAI,CAAC,OAAO,GAAG,IAAA,mBAAS,EACtB;YACE,KAAK,EAAE,YAAY;SACpB,EACD,kBAAkB,EAClB,IAAI,CAAC,OAAO,CACb,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,IAAA,mBAAS,EAAC,IAAI,CAAC,OAAO,EAAE;gBACrC,KAAK,EAAE;oBACL,EAAE,EAAE,EAAE;iBACP;aACF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI;gBACpC,EAAE,KAAK,CAAC,GAAG,CAAC;gBACZ,EAAE,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC;gBACxB,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAClD,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;aACzC,CAAC,CAAC,CAAC;YACN,IAAI,CAAC,OAAO,GAAG,IAAA,mBAAS,EAAC,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,IACE,IAAI,CAAC,YAAY,EAAE,MAAM;YACzB,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS;YAC7B,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,EAChC,CAAC;YACD,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM;iBAC5C,KAAK,CAAC,GAAG,CAAC;iBACV,MAAM,CACL,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CACpE,CAAC;YAEJ,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;oBACxD,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;oBAClB,OAAO,GAAG,CAAC;gBACb,CAAC,EAAE,EAAE,CAAC;aACP,CAAC;YACF,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC1E,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9B,CAAC;aAAM,IACL,IAAI,CAAC,YAAY,EAAE,MAAM;YACzB,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;YAEjE,MAAM,IAAI,mBAAQ,CAChB,qEAAqE,EACrE,GAAG,CACJ,CAAC;QAEJ,IAAI,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;YAC/D,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS;iBAC5C,KAAK,CAAC,GAAG,CAAC;iBACV,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpD,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,MAAM,EAAE;oBACN,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;oBACvB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;wBAChD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;wBACnC,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC;iBACP;aACF,CAAC;QACJ,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE,SAAS;YAClE,MAAM,IAAI,mBAAQ,CAChB,qDAAqD,EACrD,GAAG,CACJ,CAAC;QAEJ,IAAI,IAAI,CAAC,YAAY,EAAE,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;YAClE,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY;iBAClD,KAAK,CAAC,GAAG,CAAC;iBACV,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAEpD,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,IAAI,CAAC,OAAO;gBACf,MAAM,EAAE;oBACN,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;oBACvB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;wBACnD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;wBACpC,OAAO,GAAG,CAAC;oBACb,CAAC,EAAE,EAAE,CAAC;iBACP;aACF,CAAC;QACJ,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE,YAAY,IAAI,IAAI,CAAC,YAAY,EAAE,SAAS;YACxE,MAAM,IAAI,mBAAQ,CAChB,wDAAwD,EACxD,GAAG,CACJ,CAAC;QAEJ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QAC1D,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;QAEhC,IAAI,CAAC,OAAO,GAAG;YACb,GAAG,IAAI,CAAC,OAAO;YACf,IAAI;YACJ,IAAI,EAAE,KAAK;SACZ,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,MAAO,YAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;CACF;AArND,8BAqNC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"prisma.helpers.d.ts","sourceRoot":"","sources":["../../../../src/utils/features/prisma.helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAM1D,eAAO,MAAM,gBAAgB,oBAW5B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,QAAQ,GAAG,8DAS/C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"prisma.helpers.js","sourceRoot":"","sources":["../../../../src/utils/features/prisma.helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gGAAuE;AACvE,4FAAmE;AAEnE,IAAI,cAAc,GAAQ,IAAI,CAAC;AAExB,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE;IACzC,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,yBAAa,GAAG,OAAO,CAAC,GAAG,EAAE,mBAAmB,uCAAC,CAAC;YACvE,cAAc,GAAG,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAXW,QAAA,gBAAgB,oBAW3B;AAEK,MAAM,uBAAuB,GAAG,CAAC,MAAW,EAAE,EAAE,CACrD,IAAA,qBAAU,EAAC,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;IACnE,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC;IACT,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,mBAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC;AACH,CAAC,CAAC,CAAC;AATQ,QAAA,uBAAuB,2BAS/B"}
@@ -1,41 +0,0 @@
1
- /**
2
- * Configuration types for field type mapping
3
- */
4
- interface FieldConfig {
5
- dateFields: string[];
6
- booleanFields: string[];
7
- numericFields: string[];
8
- }
9
- /**
10
- * Type for the structured filter object returned by the parser
11
- */
12
- type ParsedFilter = {
13
- [key: string]: any;
14
- orderBy?: Record<string, 'asc' | 'desc'>;
15
- OR?: Record<string, any>[];
16
- };
17
- /**
18
- * Parses query parameters into a structured filter object compatible with Prisma queries.
19
- * Supports various operators and data type conversions.
20
- *
21
- * @param query - Object containing query parameters
22
- * @param fieldConfig - Optional configuration for field type mapping
23
- * @returns Structured filter object for database queries
24
- *
25
- * @example
26
- * // Basic usage
27
- * parseQueryParamsWithModifiers({ name__contains: 'john' })
28
- * // => { name: { contains: 'john', mode: 'sensitive' } }
29
- *
30
- * @example
31
- * // Complex query
32
- * parseQueryParamsWithModifiers({
33
- * name__not__equals: 'john',
34
- * age__gt: '25',
35
- * tags__in: 'tag1,tag2',
36
- * orderBy__createdAt: 'desc'
37
- * })
38
- */
39
- export declare function parseQueryParamsWithModifiers(query: Record<string, any>, fieldConfig?: FieldConfig): ParsedFilter;
40
- export {};
41
- //# sourceMappingURL=api.features.helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.features.helpers.d.ts","sourceRoot":"","sources":["../../../../src/utils/helpers/api.features.helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;GAEG;AACH,KAAK,YAAY,GAAG;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,CAAA;IACxC,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAA;CAC3B,CAAA;AAWD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAE1B,WAAW,GAAE,WAAkC,GAC9C,YAAY,CAuHd"}
@@ -1,161 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseQueryParamsWithModifiers = parseQueryParamsWithModifiers;
4
- /**
5
- * Default configuration for field types
6
- */
7
- const DEFAULT_FIELD_CONFIG = {
8
- dateFields: ['createdAt', 'updatedAt', 'deletedAt', 'date'],
9
- booleanFields: ['isActive', 'isDeleted', 'isPublished', 'isArchived'],
10
- numericFields: ['age', 'price', 'quantity', 'amount', 'rating'],
11
- };
12
- /**
13
- * Parses query parameters into a structured filter object compatible with Prisma queries.
14
- * Supports various operators and data type conversions.
15
- *
16
- * @param query - Object containing query parameters
17
- * @param fieldConfig - Optional configuration for field type mapping
18
- * @returns Structured filter object for database queries
19
- *
20
- * @example
21
- * // Basic usage
22
- * parseQueryParamsWithModifiers({ name__contains: 'john' })
23
- * // => { name: { contains: 'john', mode: 'sensitive' } }
24
- *
25
- * @example
26
- * // Complex query
27
- * parseQueryParamsWithModifiers({
28
- * name__not__equals: 'john',
29
- * age__gt: '25',
30
- * tags__in: 'tag1,tag2',
31
- * orderBy__createdAt: 'desc'
32
- * })
33
- */
34
- function parseQueryParamsWithModifiers(query,
35
- // excludedFields: string[],
36
- fieldConfig = DEFAULT_FIELD_CONFIG) {
37
- const queryObj = JSON.parse(JSON.stringify(query));
38
- // excludedFields.forEach((el) => delete queryObj[el])
39
- return Object.entries(JSON.parse(JSON.stringify(query))).reduce((acc, [key, value]) => {
40
- if (!value)
41
- return acc;
42
- // Convert value to string if it's not already
43
- const stringValue = Array.isArray(value)
44
- ? value[0]?.toString()
45
- : value.toString();
46
- const parts = key.split('__');
47
- if (parts.length < 2) {
48
- acc[key] = value;
49
- return acc;
50
- }
51
- const fieldName = parts[0];
52
- // Handle ordering
53
- if (fieldName === 'orderBy' && parts.length === 2) {
54
- if (!acc.orderBy)
55
- acc.orderBy = {};
56
- acc.orderBy[parts[1]] = stringValue;
57
- return acc;
58
- }
59
- // Handle simple equals case
60
- if (parts.length === 1) {
61
- acc[fieldName] = {
62
- equals: convertValue(stringValue, fieldName, 'equals', fieldConfig),
63
- };
64
- return acc;
65
- }
66
- let currentLevel = acc;
67
- let currentKey = fieldName;
68
- // Build nested structure
69
- for (let i = 1; i < parts.length - 1; i++) {
70
- if (!currentLevel[currentKey]) {
71
- currentLevel[currentKey] = {};
72
- }
73
- currentLevel = currentLevel[currentKey];
74
- currentKey = parts[i];
75
- }
76
- const lastOperator = parts[parts.length - 1];
77
- // Handle special operators
78
- switch (lastOperator) {
79
- case 'icontains':
80
- currentLevel[currentKey] = {
81
- contains: stringValue,
82
- mode: 'insensitive',
83
- };
84
- break;
85
- case 'contains':
86
- currentLevel[currentKey] = {
87
- contains: stringValue,
88
- mode: 'sensitive',
89
- };
90
- break;
91
- case 'in':
92
- case 'notIn':
93
- currentLevel[currentKey] = {
94
- [lastOperator]: stringValue
95
- .split(',')
96
- .map((v) => convertValue(v.trim(), fieldName, lastOperator, fieldConfig)),
97
- };
98
- break;
99
- case 'or':
100
- const values = stringValue.split(',');
101
- if (!acc.OR)
102
- acc.OR = [];
103
- acc.OR.push(...values.map((val) => ({
104
- [fieldName]: {
105
- equals: convertValue(val.trim(), fieldName, 'equals', fieldConfig),
106
- },
107
- })));
108
- break;
109
- case 'isNull':
110
- currentLevel[currentKey] = {
111
- equals: stringValue.toLowerCase() === 'true' ? null : undefined,
112
- };
113
- break;
114
- case 'isEmpty':
115
- currentLevel[currentKey] = {
116
- equals: stringValue.toLowerCase() === 'true' ? '' : undefined,
117
- };
118
- break;
119
- default:
120
- currentLevel[currentKey] = {
121
- [lastOperator]: convertValue(stringValue, fieldName, lastOperator, fieldConfig),
122
- };
123
- }
124
- return acc;
125
- }, {});
126
- }
127
- /**
128
- * Converts string values to appropriate types based on field configuration
129
- */
130
- function convertValue(value, fieldName, operator, config) {
131
- // Handle date fields
132
- if (config.dateFields.includes(fieldName)) {
133
- return new Date(value);
134
- }
135
- // Handle boolean fields
136
- if (config.booleanFields.includes(fieldName)) {
137
- return value.toLowerCase() === 'true';
138
- }
139
- // Handle numeric fields
140
- if (config.numericFields.includes(fieldName)) {
141
- return Number(value);
142
- }
143
- return value;
144
- }
145
- // Example usage:
146
- /*
147
- const query = {
148
- name__not__equals: 'uanela',
149
- email__contains: 'example.com',
150
- description__icontains: 'test',
151
- age__gt: '25',
152
- status: 'active',
153
- tags__in: 'tag1,tag2,tag3',
154
- createdAt__gt: '2024-01-01',
155
- isActive: 'true',
156
- orderBy__createdAt: 'desc'
157
- };
158
-
159
- const result = parseQueryParamsWithModifiers(query);
160
- */
161
- //# sourceMappingURL=api.features.helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.features.helpers.js","sourceRoot":"","sources":["../../../../src/utils/helpers/api.features.helpers.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- export declare function importPrismaModelModules(modelName: string): Promise<{
2
- middlewares?: any;
3
- authConfigs?: any;
4
- prismaQueryOptions?: any;
5
- }>;
6
- export declare function getAppWidthEjectedMiddlewares(app: any): Promise<any>;
7
- declare const models: string[];
8
- export type RelationFields = {
9
- singular: {
10
- name: string;
11
- type: string;
12
- }[];
13
- list: {
14
- name: string;
15
- type: string;
16
- }[];
17
- };
18
- declare const prismaModelRelationFields: Record<string, RelationFields>;
19
- export declare function getPrismaModelRelations(modelName: string): RelationFields | undefined;
20
- export { models, prismaModelRelationFields };
21
- //# sourceMappingURL=models.helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.helpers.d.ts","sourceRoot":"","sources":["../../../../src/utils/helpers/models.helpers.ts"],"names":[],"mappings":"AAMA,wBAAsB,wBAAwB,CAAC,SAAS,EAAE,MAAM;kBAuB9C,GAAG;kBACH,GAAG;yBACI,GAAG;GA4C3B;AAED,wBAAsB,6BAA6B,CAAC,GAAG,EAAE,GAAG,gBAoB3D;AAED,QAAA,MAAM,MAAM,EAAE,MAAM,EAAO,CAAC;AAgB5B,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3C,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACxC,CAAC;AAKF,QAAA,MAAM,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAM,CAAC;AAsFrE,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,8BAIxD;AAED,OAAO,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC"}
@@ -1,192 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.prismaModelRelationFields = exports.models = void 0;
40
- exports.importPrismaModelModules = importPrismaModelModules;
41
- exports.getAppWidthEjectedMiddlewares = getAppWidthEjectedMiddlewares;
42
- exports.getPrismaModelRelations = getPrismaModelRelations;
43
- const paths_1 = require("../../paths");
44
- const path_1 = __importDefault(require("path"));
45
- const fs_1 = __importDefault(require("fs"));
46
- const change_case_all_1 = require("change-case-all");
47
- const app_1 = require("../../app");
48
- async function importPrismaModelModules(modelName) {
49
- const kebabModelName = (0, change_case_all_1.kebabCase)(modelName);
50
- const moduleDir = path_1.default.resolve(paths_1.ROOT_DIR, "src", "modules", modelName);
51
- const extension = process.env.NODE_ENV === "production" ? "js" : "ts";
52
- // Define the expected file paths
53
- const middlewaresFile = path_1.default.join(moduleDir, `${kebabModelName}.middlewares.${extension}`);
54
- const authConfigsFile = path_1.default.join(moduleDir, `${kebabModelName}.auth-configs.${extension}`);
55
- const prismaQueryOptionsFile = path_1.default.join(moduleDir, `${kebabModelName}.prisma-query-options.${extension}`);
56
- // Initialize result object
57
- const result = {};
58
- // Try to import middlewares
59
- try {
60
- if (fs_1.default.existsSync(middlewaresFile)) {
61
- const middlewareModule = await Promise.resolve(`${middlewaresFile}`).then(s => __importStar(require(s)));
62
- result.middlewares = middlewareModule;
63
- }
64
- }
65
- catch (error) {
66
- console.error(`Error importing middlewares for model "${modelName}":`, error);
67
- }
68
- // Try to import auth configs
69
- try {
70
- if (fs_1.default.existsSync(authConfigsFile)) {
71
- const authConfigsModule = await Promise.resolve(`${authConfigsFile}`).then(s => __importStar(require(s)));
72
- result.authConfigs = authConfigsModule.default || authConfigsModule;
73
- }
74
- }
75
- catch (error) {
76
- console.error(`Error importing auth configs for model "${modelName}":`, error);
77
- }
78
- // Try to import prisma query options
79
- try {
80
- if (fs_1.default.existsSync(prismaQueryOptionsFile)) {
81
- const prismaQueryOptionsModule = await Promise.resolve(`${prismaQueryOptionsFile}`).then(s => __importStar(require(s)));
82
- result.prismaQueryOptions =
83
- prismaQueryOptionsModule.default || prismaQueryOptionsModule;
84
- }
85
- }
86
- catch (error) {
87
- console.error(`Error importing prisma query options for model "${modelName}":`, error);
88
- }
89
- return result;
90
- }
91
- async function getAppWidthEjectedMiddlewares(app) {
92
- const extension = process.env.NODE_ENV === "production" ? "js" : "ts";
93
- const appWithEjectedMiddlewaresPath = path_1.default.resolve(paths_1.ROOT_DIR, "src", `app.${extension}`);
94
- if (!appWithEjectedMiddlewaresPath) {
95
- return null;
96
- }
97
- // const middlewarePath = path.join(middlewaresDir, matchingFile)
98
- try {
99
- const appEjected = await Promise.resolve(`${appWithEjectedMiddlewaresPath}`).then(s => __importStar(require(s)));
100
- return appEjected;
101
- }
102
- catch (error) {
103
- return null;
104
- }
105
- }
106
- const models = [];
107
- exports.models = models;
108
- Object.keys(app_1.prisma || {}).forEach((key) => {
109
- const value = app_1.prisma[key];
110
- if (value &&
111
- typeof value === "object" &&
112
- typeof value.findUnique === "function") {
113
- models.push(key);
114
- }
115
- });
116
- const schemaFolderPath = `./prisma/schema`;
117
- // Read and process the schema files once
118
- const prismaModelRelationFields = {};
119
- exports.prismaModelRelationFields = prismaModelRelationFields;
120
- const files = fs_1.default
121
- .readdirSync(schemaFolderPath)
122
- .filter((file) => file.endsWith(".prisma"));
123
- for (const model of models) {
124
- const modelName = (0, change_case_all_1.pascalCase)(model);
125
- let modelFile;
126
- for (const file of files) {
127
- const filePath = path_1.default.join(schemaFolderPath, file);
128
- const stats = fs_1.default.statSync(filePath);
129
- if (stats.isFile()) {
130
- const content = fs_1.default.readFileSync(filePath, "utf-8");
131
- if (content.includes(`model ${modelName} {`)) {
132
- modelFile = file;
133
- break;
134
- }
135
- }
136
- }
137
- if (!modelFile) {
138
- throw new Error(`Model ${modelName} not found`);
139
- }
140
- const content = fs_1.default.readFileSync(path_1.default.join(schemaFolderPath, modelFile), "utf-8");
141
- const modelStart = content.indexOf(`model ${modelName} {`);
142
- const modelEnd = content.indexOf("}", modelStart);
143
- const modelDefinition = content.slice(modelStart, modelEnd);
144
- const relations = {
145
- singular: [],
146
- list: [],
147
- };
148
- const lines = modelDefinition.split("\n");
149
- for (const line of lines) {
150
- const trimmedLine = line.trim();
151
- if (!trimmedLine || trimmedLine.startsWith("model"))
152
- continue;
153
- // Check for relations
154
- const [fieldName, type] = trimmedLine.split(/\s+/);
155
- const cleanType = type?.replace("[]", "").replace("?", "");
156
- if (trimmedLine.includes("@relation") ||
157
- trimmedLine.match(/\s+\w+(\[\])?(\s+@|$)/) ||
158
- models.includes((0, change_case_all_1.camelCase)(cleanType || ""))
159
- // content.includes(`model ${cleanType} {`)
160
- ) {
161
- const modelStart = content.indexOf(`enum ${cleanType} {`);
162
- if (!cleanType ||
163
- modelStart >= 0 ||
164
- cleanType === "String" ||
165
- cleanType === "Int" ||
166
- cleanType === "Float" ||
167
- cleanType === "Boolean" ||
168
- cleanType === "DateTime" ||
169
- cleanType === "Bytes" ||
170
- cleanType === "Decimal" ||
171
- cleanType === "BigInt" ||
172
- cleanType === "Json") {
173
- continue;
174
- }
175
- if (!type?.includes("[]")) {
176
- relations.singular.push({ name: fieldName, type: cleanType });
177
- }
178
- else {
179
- relations.list.push({ name: fieldName, type: cleanType });
180
- }
181
- }
182
- prismaModelRelationFields[modelName] = relations;
183
- }
184
- }
185
- // Function to get relations from the cache
186
- function getPrismaModelRelations(modelName) {
187
- modelName = (0, change_case_all_1.pascalCase)(modelName);
188
- if (!(modelName in prismaModelRelationFields))
189
- return;
190
- return prismaModelRelationFields[modelName];
191
- }
192
- //# sourceMappingURL=models.helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"models.helpers.js","sourceRoot":"","sources":["../../../../src/utils/helpers/models.helpers.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function capitalize(text: string): string;
2
- //# sourceMappingURL=text.helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text.helpers.d.ts","sourceRoot":"","sources":["../../../../src/utils/helpers/text.helpers.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/C"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.capitalize = capitalize;
4
- function capitalize(text) {
5
- if (!text)
6
- return '';
7
- return text
8
- .split(' ')
9
- .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
10
- .join(' ');
11
- }
12
- //# sourceMappingURL=text.helpers.js.map