@intlayer/backend 7.5.9 → 7.5.11

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 (247) hide show
  1. package/README.md +9 -2
  2. package/dist/assets/utils/AI/askDocQuestion/PROMPT.md +1 -1
  3. package/dist/assets/utils/AI/askDocQuestion/embeddings/docs/en/cli/ci.json +3080 -0
  4. package/dist/assets/utils/AI/askDocQuestion/embeddings/docs/en/cli/list_projects.json +1 -0
  5. package/dist/assets/utils/AI/askDocQuestion/embeddings/docs/en/intlayer_with_fastify.json +9 -0
  6. package/dist/esm/controllers/ai.controller.mjs +95 -128
  7. package/dist/esm/controllers/ai.controller.mjs.map +1 -1
  8. package/dist/esm/controllers/bitbucket.controller.mjs +77 -0
  9. package/dist/esm/controllers/bitbucket.controller.mjs.map +1 -0
  10. package/dist/esm/controllers/dictionary.controller.mjs +106 -198
  11. package/dist/esm/controllers/dictionary.controller.mjs.map +1 -1
  12. package/dist/esm/controllers/eventListener.controller.mjs +13 -19
  13. package/dist/esm/controllers/eventListener.controller.mjs.map +1 -1
  14. package/dist/esm/controllers/github.controller.mjs +77 -0
  15. package/dist/esm/controllers/github.controller.mjs.map +1 -0
  16. package/dist/esm/controllers/gitlab.controller.mjs +77 -0
  17. package/dist/esm/controllers/gitlab.controller.mjs.map +1 -0
  18. package/dist/esm/controllers/newsletter.controller.mjs +30 -60
  19. package/dist/esm/controllers/newsletter.controller.mjs.map +1 -1
  20. package/dist/esm/controllers/oAuth2.controller.mjs +11 -8
  21. package/dist/esm/controllers/oAuth2.controller.mjs.map +1 -1
  22. package/dist/esm/controllers/organization.controller.mjs +100 -225
  23. package/dist/esm/controllers/organization.controller.mjs.map +1 -1
  24. package/dist/esm/controllers/project.controller.mjs +194 -204
  25. package/dist/esm/controllers/project.controller.mjs.map +1 -1
  26. package/dist/esm/controllers/projectAccessKey.controller.mjs +38 -71
  27. package/dist/esm/controllers/projectAccessKey.controller.mjs.map +1 -1
  28. package/dist/esm/controllers/search.controller.mjs +3 -3
  29. package/dist/esm/controllers/search.controller.mjs.map +1 -1
  30. package/dist/esm/controllers/stripe.controller.mjs +34 -67
  31. package/dist/esm/controllers/stripe.controller.mjs.map +1 -1
  32. package/dist/esm/controllers/tag.controller.mjs +51 -113
  33. package/dist/esm/controllers/tag.controller.mjs.map +1 -1
  34. package/dist/esm/controllers/user.controller.mjs +64 -113
  35. package/dist/esm/controllers/user.controller.mjs.map +1 -1
  36. package/dist/esm/export.mjs +4 -1
  37. package/dist/esm/index.mjs +105 -41
  38. package/dist/esm/index.mjs.map +1 -1
  39. package/dist/esm/middlewares/oAuth2.middleware.mjs +19 -14
  40. package/dist/esm/middlewares/oAuth2.middleware.mjs.map +1 -1
  41. package/dist/esm/middlewares/sessionAuth.middleware.mjs +6 -7
  42. package/dist/esm/middlewares/sessionAuth.middleware.mjs.map +1 -1
  43. package/dist/esm/routes/ai.routes.mjs +19 -15
  44. package/dist/esm/routes/ai.routes.mjs.map +1 -1
  45. package/dist/esm/routes/bitbucket.routes.mjs +43 -0
  46. package/dist/esm/routes/bitbucket.routes.mjs.map +1 -0
  47. package/dist/esm/routes/dictionary.routes.mjs +10 -10
  48. package/dist/esm/routes/dictionary.routes.mjs.map +1 -1
  49. package/dist/esm/routes/eventListener.routes.mjs +3 -3
  50. package/dist/esm/routes/eventListener.routes.mjs.map +1 -1
  51. package/dist/esm/routes/github.routes.mjs +43 -0
  52. package/dist/esm/routes/github.routes.mjs.map +1 -0
  53. package/dist/esm/routes/gitlab.routes.mjs +43 -0
  54. package/dist/esm/routes/gitlab.routes.mjs.map +1 -0
  55. package/dist/esm/routes/newsletter.routes.mjs +5 -5
  56. package/dist/esm/routes/newsletter.routes.mjs.map +1 -1
  57. package/dist/esm/routes/organization.routes.mjs +11 -11
  58. package/dist/esm/routes/organization.routes.mjs.map +1 -1
  59. package/dist/esm/routes/project.routes.mjs +38 -14
  60. package/dist/esm/routes/project.routes.mjs.map +1 -1
  61. package/dist/esm/routes/search.routes.mjs +3 -3
  62. package/dist/esm/routes/search.routes.mjs.map +1 -1
  63. package/dist/esm/routes/stripe.routes.mjs +5 -5
  64. package/dist/esm/routes/stripe.routes.mjs.map +1 -1
  65. package/dist/esm/routes/tags.routes.mjs +6 -6
  66. package/dist/esm/routes/tags.routes.mjs.map +1 -1
  67. package/dist/esm/routes/user.routes.mjs +9 -9
  68. package/dist/esm/routes/user.routes.mjs.map +1 -1
  69. package/dist/esm/schemas/project.schema.mjs +70 -1
  70. package/dist/esm/schemas/project.schema.mjs.map +1 -1
  71. package/dist/esm/services/bitbucket.service.mjs +173 -0
  72. package/dist/esm/services/bitbucket.service.mjs.map +1 -0
  73. package/dist/esm/services/ci.service.mjs +134 -0
  74. package/dist/esm/services/ci.service.mjs.map +1 -0
  75. package/dist/esm/services/email.service.mjs +1 -1
  76. package/dist/esm/services/email.service.mjs.map +1 -1
  77. package/dist/esm/services/github.service.mjs +218 -0
  78. package/dist/esm/services/github.service.mjs.map +1 -0
  79. package/dist/esm/services/gitlab.service.mjs +217 -0
  80. package/dist/esm/services/gitlab.service.mjs.map +1 -0
  81. package/dist/esm/services/oAuth2.service.mjs +1 -1
  82. package/dist/esm/services/subscription.service.mjs +1 -1
  83. package/dist/esm/services/subscription.service.mjs.map +1 -1
  84. package/dist/esm/services/webhook.service.mjs +164 -0
  85. package/dist/esm/services/webhook.service.mjs.map +1 -0
  86. package/dist/esm/utils/auth/getAuth.mjs +28 -16
  87. package/dist/esm/utils/auth/getAuth.mjs.map +1 -1
  88. package/dist/esm/utils/cors.mjs +15 -5
  89. package/dist/esm/utils/cors.mjs.map +1 -1
  90. package/dist/esm/utils/errors/ErrorHandler.mjs +32 -4
  91. package/dist/esm/utils/errors/ErrorHandler.mjs.map +1 -1
  92. package/dist/esm/utils/errors/ErrorsClass.mjs +1 -1
  93. package/dist/esm/utils/errors/ErrorsClass.mjs.map +1 -1
  94. package/dist/esm/utils/errors/errorCodes.mjs +234 -0
  95. package/dist/esm/utils/errors/errorCodes.mjs.map +1 -1
  96. package/dist/esm/utils/filtersAndPagination/getDictionaryFiltersAndPagination.mjs +3 -2
  97. package/dist/esm/utils/filtersAndPagination/getDictionaryFiltersAndPagination.mjs.map +1 -1
  98. package/dist/esm/utils/filtersAndPagination/getDiscussionFiltersAndPagination.mjs +1 -1
  99. package/dist/esm/utils/filtersAndPagination/getDiscussionFiltersAndPagination.mjs.map +1 -1
  100. package/dist/esm/utils/filtersAndPagination/getFiltersAndPaginationFromBody.mjs +1 -1
  101. package/dist/esm/utils/filtersAndPagination/getFiltersAndPaginationFromBody.mjs.map +1 -1
  102. package/dist/esm/utils/filtersAndPagination/getOrganizationFiltersAndPagination.mjs +3 -2
  103. package/dist/esm/utils/filtersAndPagination/getOrganizationFiltersAndPagination.mjs.map +1 -1
  104. package/dist/esm/utils/filtersAndPagination/getProjectFiltersAndPagination.mjs +3 -2
  105. package/dist/esm/utils/filtersAndPagination/getProjectFiltersAndPagination.mjs.map +1 -1
  106. package/dist/esm/utils/filtersAndPagination/getTagFiltersAndPagination.mjs +3 -2
  107. package/dist/esm/utils/filtersAndPagination/getTagFiltersAndPagination.mjs.map +1 -1
  108. package/dist/esm/utils/filtersAndPagination/getUserFiltersAndPagination.mjs +3 -2
  109. package/dist/esm/utils/filtersAndPagination/getUserFiltersAndPagination.mjs.map +1 -1
  110. package/dist/esm/utils/mapper/project.mjs +28 -1
  111. package/dist/esm/utils/mapper/project.mjs.map +1 -1
  112. package/dist/esm/utils/mongoDB/connectDB.mjs +1 -1
  113. package/dist/esm/utils/rateLimiter.mjs +40 -30
  114. package/dist/esm/utils/rateLimiter.mjs.map +1 -1
  115. package/dist/esm/webhooks/stripe.webhook.mjs +2 -2
  116. package/dist/esm/webhooks/stripe.webhook.mjs.map +1 -1
  117. package/dist/types/controllers/ai.controller.d.ts +29 -12
  118. package/dist/types/controllers/ai.controller.d.ts.map +1 -1
  119. package/dist/types/controllers/bitbucket.controller.d.ts +62 -0
  120. package/dist/types/controllers/bitbucket.controller.d.ts.map +1 -0
  121. package/dist/types/controllers/dictionary.controller.d.ts +23 -13
  122. package/dist/types/controllers/dictionary.controller.d.ts.map +1 -1
  123. package/dist/types/controllers/eventListener.controller.d.ts +4 -2
  124. package/dist/types/controllers/eventListener.controller.d.ts.map +1 -1
  125. package/dist/types/controllers/github.controller.d.ts +63 -0
  126. package/dist/types/controllers/github.controller.d.ts.map +1 -0
  127. package/dist/types/controllers/gitlab.controller.d.ts +67 -0
  128. package/dist/types/controllers/gitlab.controller.d.ts.map +1 -0
  129. package/dist/types/controllers/newsletter.controller.d.ts +8 -7
  130. package/dist/types/controllers/newsletter.controller.d.ts.map +1 -1
  131. package/dist/types/controllers/oAuth2.controller.d.ts +4 -2
  132. package/dist/types/controllers/oAuth2.controller.d.ts.map +1 -1
  133. package/dist/types/controllers/organization.controller.d.ts +28 -12
  134. package/dist/types/controllers/organization.controller.d.ts.map +1 -1
  135. package/dist/types/controllers/project.controller.d.ts +60 -17
  136. package/dist/types/controllers/project.controller.d.ts.map +1 -1
  137. package/dist/types/controllers/projectAccessKey.controller.d.ts +10 -5
  138. package/dist/types/controllers/projectAccessKey.controller.d.ts.map +1 -1
  139. package/dist/types/controllers/search.controller.d.ts +4 -2
  140. package/dist/types/controllers/search.controller.d.ts.map +1 -1
  141. package/dist/types/controllers/stripe.controller.d.ts +11 -12
  142. package/dist/types/controllers/stripe.controller.d.ts.map +1 -1
  143. package/dist/types/controllers/tag.controller.d.ts +14 -9
  144. package/dist/types/controllers/tag.controller.d.ts.map +1 -1
  145. package/dist/types/controllers/user.controller.d.ts +22 -9
  146. package/dist/types/controllers/user.controller.d.ts.map +1 -1
  147. package/dist/types/emails/InviteUserEmail.d.ts +4 -4
  148. package/dist/types/emails/MagicLinkEmail.d.ts +4 -4
  149. package/dist/types/emails/OAuthTokenCreatedEmail.d.ts +4 -4
  150. package/dist/types/emails/OAuthTokenCreatedEmail.d.ts.map +1 -1
  151. package/dist/types/emails/PasswordChangeConfirmation.d.ts +4 -4
  152. package/dist/types/emails/ResetUserPassword.d.ts +4 -4
  153. package/dist/types/emails/ResetUserPassword.d.ts.map +1 -1
  154. package/dist/types/emails/SubscriptionPaymentCancellation.d.ts +4 -4
  155. package/dist/types/emails/SubscriptionPaymentError.d.ts +4 -4
  156. package/dist/types/emails/SubscriptionPaymentSuccess.d.ts +4 -4
  157. package/dist/types/emails/ValidateUserEmail.d.ts +4 -4
  158. package/dist/types/emails/Welcome.d.ts +4 -4
  159. package/dist/types/export.d.ts +11 -5
  160. package/dist/types/middlewares/oAuth2.middleware.d.ts +9 -4
  161. package/dist/types/middlewares/oAuth2.middleware.d.ts.map +1 -1
  162. package/dist/types/middlewares/sessionAuth.middleware.d.ts +13 -3
  163. package/dist/types/middlewares/sessionAuth.middleware.d.ts.map +1 -1
  164. package/dist/types/models/discussion.model.d.ts +3 -3
  165. package/dist/types/models/oAuth2.model.d.ts +3 -3
  166. package/dist/types/routes/ai.routes.d.ts +2 -2
  167. package/dist/types/routes/ai.routes.d.ts.map +1 -1
  168. package/dist/types/routes/bitbucket.routes.d.ts +35 -0
  169. package/dist/types/routes/bitbucket.routes.d.ts.map +1 -0
  170. package/dist/types/routes/dictionary.routes.d.ts +2 -2
  171. package/dist/types/routes/dictionary.routes.d.ts.map +1 -1
  172. package/dist/types/routes/eventListener.routes.d.ts +2 -2
  173. package/dist/types/routes/eventListener.routes.d.ts.map +1 -1
  174. package/dist/types/routes/github.routes.d.ts +35 -0
  175. package/dist/types/routes/github.routes.d.ts.map +1 -0
  176. package/dist/types/routes/gitlab.routes.d.ts +35 -0
  177. package/dist/types/routes/gitlab.routes.d.ts.map +1 -0
  178. package/dist/types/routes/newsletter.routes.d.ts +2 -2
  179. package/dist/types/routes/newsletter.routes.d.ts.map +1 -1
  180. package/dist/types/routes/organization.routes.d.ts +2 -2
  181. package/dist/types/routes/organization.routes.d.ts.map +1 -1
  182. package/dist/types/routes/project.routes.d.ts +22 -2
  183. package/dist/types/routes/project.routes.d.ts.map +1 -1
  184. package/dist/types/routes/search.routes.d.ts +2 -2
  185. package/dist/types/routes/search.routes.d.ts.map +1 -1
  186. package/dist/types/routes/stripe.routes.d.ts +2 -2
  187. package/dist/types/routes/stripe.routes.d.ts.map +1 -1
  188. package/dist/types/routes/tags.routes.d.ts +2 -2
  189. package/dist/types/routes/tags.routes.d.ts.map +1 -1
  190. package/dist/types/routes/user.routes.d.ts +2 -2
  191. package/dist/types/routes/user.routes.d.ts.map +1 -1
  192. package/dist/types/schemas/dictionary.schema.d.ts +6 -6
  193. package/dist/types/schemas/discussion.schema.d.ts +6 -6
  194. package/dist/types/schemas/oAuth2.schema.d.ts +5 -5
  195. package/dist/types/schemas/oAuth2.schema.d.ts.map +1 -1
  196. package/dist/types/schemas/plans.schema.d.ts +6 -6
  197. package/dist/types/schemas/project.schema.d.ts +6 -6
  198. package/dist/types/schemas/project.schema.d.ts.map +1 -1
  199. package/dist/types/schemas/session.schema.d.ts +6 -6
  200. package/dist/types/schemas/tag.schema.d.ts +6 -6
  201. package/dist/types/schemas/user.schema.d.ts +6 -6
  202. package/dist/types/schemas/user.schema.d.ts.map +1 -1
  203. package/dist/types/services/bitbucket.service.d.ts +71 -0
  204. package/dist/types/services/bitbucket.service.d.ts.map +1 -0
  205. package/dist/types/services/ci.service.d.ts +27 -0
  206. package/dist/types/services/ci.service.d.ts.map +1 -0
  207. package/dist/types/services/github.service.d.ts +40 -0
  208. package/dist/types/services/github.service.d.ts.map +1 -0
  209. package/dist/types/services/gitlab.service.d.ts +58 -0
  210. package/dist/types/services/gitlab.service.d.ts.map +1 -0
  211. package/dist/types/services/webhook.service.d.ts +19 -0
  212. package/dist/types/services/webhook.service.d.ts.map +1 -0
  213. package/dist/types/types/project.types.d.ts +46 -5
  214. package/dist/types/types/project.types.d.ts.map +1 -1
  215. package/dist/types/types/session.types.d.ts +1 -1
  216. package/dist/types/types/user.types.d.ts +1 -1
  217. package/dist/types/utils/AI/auditTag/index.d.ts +1 -1
  218. package/dist/types/utils/auth/getAuth.d.ts.map +1 -1
  219. package/dist/types/utils/cors.d.ts +2 -2
  220. package/dist/types/utils/errors/ErrorHandler.d.ts +31 -3
  221. package/dist/types/utils/errors/ErrorHandler.d.ts.map +1 -1
  222. package/dist/types/utils/errors/ErrorsClass.d.ts +1 -1
  223. package/dist/types/utils/errors/errorCodes.d.ts +234 -0
  224. package/dist/types/utils/errors/errorCodes.d.ts.map +1 -1
  225. package/dist/types/utils/filtersAndPagination/getDictionaryFiltersAndPagination.d.ts +8 -4
  226. package/dist/types/utils/filtersAndPagination/getDictionaryFiltersAndPagination.d.ts.map +1 -1
  227. package/dist/types/utils/filtersAndPagination/getDiscussionFiltersAndPagination.d.ts +6 -3
  228. package/dist/types/utils/filtersAndPagination/getDiscussionFiltersAndPagination.d.ts.map +1 -1
  229. package/dist/types/utils/filtersAndPagination/getFiltersAndPaginationFromBody.d.ts +6 -2
  230. package/dist/types/utils/filtersAndPagination/getFiltersAndPaginationFromBody.d.ts.map +1 -1
  231. package/dist/types/utils/filtersAndPagination/getOrganizationFiltersAndPagination.d.ts +8 -4
  232. package/dist/types/utils/filtersAndPagination/getOrganizationFiltersAndPagination.d.ts.map +1 -1
  233. package/dist/types/utils/filtersAndPagination/getProjectFiltersAndPagination.d.ts +6 -2
  234. package/dist/types/utils/filtersAndPagination/getProjectFiltersAndPagination.d.ts.map +1 -1
  235. package/dist/types/utils/filtersAndPagination/getTagFiltersAndPagination.d.ts +8 -4
  236. package/dist/types/utils/filtersAndPagination/getTagFiltersAndPagination.d.ts.map +1 -1
  237. package/dist/types/utils/filtersAndPagination/getUserFiltersAndPagination.d.ts +6 -2
  238. package/dist/types/utils/filtersAndPagination/getUserFiltersAndPagination.d.ts.map +1 -1
  239. package/dist/types/utils/mapper/project.d.ts.map +1 -1
  240. package/dist/types/utils/permissions.d.ts +1 -1
  241. package/dist/types/utils/rateLimiter.d.ts +4 -2
  242. package/dist/types/utils/rateLimiter.d.ts.map +1 -1
  243. package/package.json +24 -28
  244. package/dist/esm/middlewares/request.middleware.mjs +0 -17
  245. package/dist/esm/middlewares/request.middleware.mjs.map +0 -1
  246. package/dist/types/middlewares/request.middleware.d.ts +0 -7
  247. package/dist/types/middlewares/request.middleware.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github.service.d.ts","names":[],"sources":["../../../src/services/github.service.ts"],"sourcesContent":[],"mappings":";;;;KAQY,gBAAA,GACV;KACU,iBAAA,GACV;AAHU,cAKC,mBAJX,EAAA,CAAA,WAAA,EAAA,MAAuB,EAAA,KAAA,CAAA,EAAA,MAAA,EAAA,GAAA,MAAA;AACb,cA2BC,oBA1BX,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,GA0BwD,OA1BjC,CAAA,MAAA,CAAA;AAEZ,cAkEA,YA5CZ,EAAA,CAAA,WAAA,EAAA,MAAA,EAAA,GA8CE,OA9CF,CA8CU,gBA9CV,EAAA,CAAA;AAED;AA0CA;AAuBA;AA8CA;AAoCa,cAlFA,mBA8HZ,EA1CE,CAAA,WAAO,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,MAAA,EAAA,GA/EP,OA+EO,CAAA,MAAA,EAAA,CAAA;AA0CR;AAQF;;AAA4C,cAxF/B,yBAwF+B,EAAA,CAAA,WAAA,EAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,MAAA,EAAA,GAlFzC,OAkFyC,CAAA,MAAA,GAAA,IAAA,CAAA;AAAA,cApD/B,sBAoD+B,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,GAlDzC,OAkDyC,CAAA,MAAA,GAAA,IAAA,CAAA;KANvC,oBAAA,GAUF;EAAoB,OAAA,EATZ,OASY;EAAA,SAAA,CAAA,EAAA,MAAA;EAwDV,OAAA,CAAA,EA/DD,MA+DC,CAAA,MAAA,EAAA,GAqBZ,CAAA;AAKD,CAAA;cAtFa;;;;GAIV,yBAAoB;;;;cAwDV,kHAMV;;;;cAoBU,gJAQV"}
@@ -0,0 +1,58 @@
1
+ //#region src/services/gitlab.service.d.ts
2
+ type GitLabProject = {
3
+ id: number;
4
+ name: string;
5
+ path_with_namespace: string;
6
+ web_url: string;
7
+ default_branch: string;
8
+ visibility: string;
9
+ last_activity_at: string;
10
+ namespace: {
11
+ id: number;
12
+ name: string;
13
+ path: string;
14
+ };
15
+ };
16
+ type GitLabTreeItem = {
17
+ id: string;
18
+ name: string;
19
+ type: 'tree' | 'blob';
20
+ path: string;
21
+ mode: string;
22
+ };
23
+ /**
24
+ * Get GitLab authorization URL for OAuth flow
25
+ */
26
+ declare const getAuthorizationUrl: (redirectUri: string, instanceUrl?: string, login?: string) => string;
27
+ /**
28
+ * Exchange GitLab authorization code for access token
29
+ */
30
+ declare const exchangeCodeForToken: (code: string, redirectUri: string, instanceUrl?: string) => Promise<string>;
31
+ /**
32
+ * Get user's GitLab projects/repositories
33
+ */
34
+ declare const getUserProjects: (accessToken: string, instanceUrl?: string) => Promise<GitLabProject[]>;
35
+ /**
36
+ * Check if valid intlayer configuration files exist in a GitLab repository (Recursively).
37
+ * Returns an array of file paths found.
38
+ */
39
+ declare const checkIntlayerConfig: (accessToken: string, projectId: number, branch?: string, instanceUrl?: string) => Promise<string[]>;
40
+ /**
41
+ * Get repository file contents from GitLab and decode it
42
+ */
43
+ declare const getRepositoryFileContents: (accessToken: string, projectId: number, path: string, branch?: string, instanceUrl?: string) => Promise<string | null>;
44
+ /**
45
+ * Get GitLab access token from user's linked account
46
+ */
47
+ declare const getGitLabTokenFromUser: (userId: string) => Promise<string | null>;
48
+ /**
49
+ * Check if a GitLab CI pipeline file exists
50
+ */
51
+ declare const checkPipelineFileExists: (accessToken: string, projectId: number, filename?: string, branch?: string, instanceUrl?: string) => Promise<boolean>;
52
+ /**
53
+ * Create or update a GitLab CI pipeline file
54
+ */
55
+ declare const createPipelineFile: (accessToken: string, projectId: number, filename: string, content: string, branch?: string, instanceUrl?: string, message?: string) => Promise<void>;
56
+ //#endregion
57
+ export { GitLabProject, GitLabTreeItem, checkIntlayerConfig, checkPipelineFileExists, createPipelineFile, exchangeCodeForToken, getAuthorizationUrl, getGitLabTokenFromUser, getRepositoryFileContents, getUserProjects };
58
+ //# sourceMappingURL=gitlab.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gitlab.service.d.ts","names":[],"sources":["../../../src/services/gitlab.service.ts"],"sourcesContent":[],"mappings":";KAOY,aAAA;EAAA,EAAA,EAAA,MAAA;EAeA,IAAA,EAAA,MAAA;EAWC,mBAAA,EAAA,MAyBZ;EAKY,OAAA,EAAA,MAAA;EAiDA,cAAA,EAAA,MA6BZ;EAMY,UAAA,EAAA,MAAA;EAkDA,gBAAA,EAAA,MAAA;EAsCA,SAAA,EAAA;IAiDA,EAAA,EAAA,MAAA;IAqCA,IAAA,EAAA,MAAA;;;;KA3SD,cAAA;;;;;;;;;;cAWC;;;;cA8BA,mFAIV;;;;cA6CU,gEAGV,QAAQ;;;;;cAgCE,wGAKV;;;;cA6CU,4HAMV;;;;cAgCU,4CAEV;;;;cA+CU,+HAMV;;;;cA+BU,4JAQV"}
@@ -0,0 +1,19 @@
1
+ import { Project } from "../types/project.types.js";
2
+
3
+ //#region src/services/webhook.service.d.ts
4
+ type TriggerResult = {
5
+ target: string;
6
+ success: boolean;
7
+ message?: string;
8
+ };
9
+ /**
10
+ * Main entry point to trigger all configured CI pipelines for a project
11
+ */
12
+ declare const triggerAll: (project: Project) => Promise<TriggerResult[]>;
13
+ /**
14
+ * Triggers a single webhook by index
15
+ */
16
+ declare const triggerSingleWebhook: (project: Project, webhookIndex: number) => Promise<TriggerResult>;
17
+ //#endregion
18
+ export { TriggerResult, triggerAll, triggerSingleWebhook };
19
+ //# sourceMappingURL=webhook.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.service.d.ts","names":[],"sources":["../../../src/services/webhook.service.ts"],"sourcesContent":[],"mappings":";;;KAKY,aAAA;;EAAA,OAAA,EAAA,OAAa;EASZ,OAAA,CAAA,EAAA,MA2CZ;CA1CU;;;;AA+CE,cAhDA,UA2EZ,EAAA,CAAA,OAAA,EA1EU,OA0EV,EAAA,GAzEE,OAyEF,CAzEU,aAyEV,EAAA,CAAA;;;;AAxBS,cAHG,oBAGH,EAAA,CAAA,OAAA,EAFC,OAED,EAAA,YAAA,EAAA,MAAA,EAAA,GAAP,OAAO,CAAC,aAAD,CAAA"}
@@ -9,12 +9,51 @@ import { Token } from "oauth2-server";
9
9
  type ProjectCreationData = {
10
10
  name: Project['name'];
11
11
  };
12
- type ProjectConfigInternationalization = Pick<IntlayerConfig['internationalization'], 'locales' | 'defaultLocale'>;
13
- type ProjectConfigEditor = Pick<IntlayerConfig['editor'], 'applicationURL' | 'cmsURL'>;
12
+ type ProjectConfigInternationalization = Partial<Pick<IntlayerConfig['internationalization'], 'locales' | 'defaultLocale'>>;
13
+ type ProjectConfigEditor = Partial<Pick<IntlayerConfig['editor'], 'applicationURL' | 'cmsURL'>>;
14
+ type ProjectConfigAI = Partial<Pick<IntlayerConfig['ai'], 'provider' | 'model' | 'apiKey' | 'applicationContext' | 'baseURL'>> & {
15
+ apiKeyConfigured?: boolean;
16
+ };
17
+ type Webhook = {
18
+ id?: string;
19
+ name: string;
20
+ url: string;
21
+ enabled: boolean;
22
+ secret?: string;
23
+ };
24
+ type ProjectConfigCI = {
25
+ autoTriggerBuilds?: boolean;
26
+ webhooks?: Webhook[];
27
+ };
14
28
  type ProjectConfiguration = {
15
- internationalization: ProjectConfigInternationalization;
16
- editor: ProjectConfigEditor;
29
+ internationalization?: ProjectConfigInternationalization;
30
+ editor?: ProjectConfigEditor;
31
+ ai?: ProjectConfigAI;
32
+ };
33
+ type RepositoryProvider = 'github' | 'gitlab' | 'bitbucket';
34
+ type BaseRepository = {
35
+ provider: RepositoryProvider;
36
+ owner: string;
37
+ repository: string;
38
+ branch: string;
39
+ url: string;
40
+ configFilePath: string;
41
+ };
42
+ type GitHubRepository = BaseRepository & {
43
+ provider: 'github';
44
+ installationId?: number;
45
+ };
46
+ type GitLabRepository = BaseRepository & {
47
+ provider: 'gitlab';
48
+ projectId?: number;
49
+ /** Custom GitLab instance URL (e.g., https://gitlab.company.com) */
50
+ instanceUrl?: string;
51
+ };
52
+ type BitbucketRepository = BaseRepository & {
53
+ provider: 'bitbucket';
54
+ workspace: string;
17
55
  };
56
+ type RepositoryConnection = GitHubRepository | GitLabRepository | BitbucketRepository;
18
57
  type ProjectData = {
19
58
  organizationId: Organization['id'];
20
59
  name: string;
@@ -22,6 +61,8 @@ type ProjectData = {
22
61
  adminsIds: User['id'][];
23
62
  creatorId: User['id'];
24
63
  configuration?: ProjectConfiguration;
64
+ repository?: RepositoryConnection;
65
+ webhooks?: ProjectConfigCI;
25
66
  };
26
67
  type AccessKeyData = {
27
68
  name: string;
@@ -58,5 +99,5 @@ type ProjectSchema = RenameId<Project>;
58
99
  type ProjectModelType = Model<Project>;
59
100
  type ProjectDocument = Document<unknown, {}, Project> & Project;
60
101
  //#endregion
61
- export { AccessKeyData, OAuth2Access, OAuth2AccessAPI, OAuth2AccessContext, OAuth2AccessData, Project, ProjectAPI, ProjectConfiguration, ProjectCreationData, ProjectData, ProjectDocument, ProjectModelType, ProjectSchema };
102
+ export { AccessKeyData, BaseRepository, BitbucketRepository, GitHubRepository, GitLabRepository, OAuth2Access, OAuth2AccessAPI, OAuth2AccessContext, OAuth2AccessData, Project, ProjectAPI, ProjectConfigCI, ProjectConfiguration, ProjectCreationData, ProjectData, ProjectDocument, ProjectModelType, ProjectSchema, RepositoryConnection, RepositoryProvider, Webhook };
62
103
  //# sourceMappingURL=project.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project.types.d.ts","names":[],"sources":["../../../src/types/project.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAOY,mBAAA;QACJ;AADR,CAAA;AAEE,KAEG,iCAAA,GAAoC,IAAH,CACpC,cAAA,CAAA,sBAD2C,CAAA,EAAA,SAAA,GAAA,eAAA,CAAA;AAAA,KAKxC,mBAAA,GAAsB,IAAH,CACtB,cAAA,CAAA,QADyB,CAAA,EAAA,gBAAI,GAAA,QAAA,CAAA;AAKnB,KAAA,oBAAA,GAAoB;EAKpB,oBAAW,EAJC,iCAID;EACL,MAAA,EAJR,mBAIQ;CAEJ;AACD,KAJD,WAAA,GAIC;EACA,cAAA,EAJK,YAIL,CAAA,IAAA,CAAA;EACK,IAAA,EAAA,MAAA;EAAoB,UAAA,EAHxB,IAGwB,CAAA,IAAA,CAAA,EAAA;EAG1B,SAAA,EALC,IAKD,CAAa,IAAA,CAAA,EAAA;EAMb,SAAA,EAVC,IAUD,CAAA,IAAgB,CAAA;EAOhB,aAAA,CAAA,EAhBM,oBAgBa;CAChB;AACN,KAfG,aAAA,GAeH;EACG,IAAA,EAAA,MAAA;EACK,MAAA,EAAA,MAAA,EAAA;EACP,SAAA,CAAA,EAfI,IAeJ;CAAK;AAGH,KAfA,gBAAA,GAAmB,aAeJ,GAAA;EAMf,QAAA,EAAA,MAAA;EAEA,YAAO,EAAA,MAAA;EAAG,WAAA,EAAA,MAAA,EAAA;EAChB,MAAM,EApBF,IAoBE,CAAA,IAAA,CAAA;CAGI;AAAY,KApBhB,mBAAA,GAoBgB;EAGhB,WAAA,EAtBG,KAsBO;EAEV,IAAA,CAAA,EAvBH,OAuBG;EACA,OAAA,CAAA,EAvBA,UAuBgB;EAChB,YAAA,CAAA,EAvBK,eAuBU;EAAyB,MAAA,EAtB1C,KAsB0C,CAAA,QAAA,CAAA;CAAtB;AAAiC,KAnBnD,YAAA,GAAe,gBAmBoC,GAAA;EAAO,EAAA,EAlBhE,KAAA,CAAM,QAkB0D;;;;KAb1D,eAAA,GAAkB,iBAAiB;KAEnC,OAAA,GAAU;MAChB,KAAA,CAAM;;;gBAGI;;KAGJ,UAAA,GAAa,iBAAiB;KAE9B,aAAA,GAAgB,SAAS;KACzB,gBAAA,GAAmB,MAAM;KACzB,eAAA,GAAkB,sBAAsB,WAAW"}
1
+ {"version":3,"file":"project.types.d.ts","names":[],"sources":["../../../src/types/project.types.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAOY,mBAAA;QACJ;AADR,CAAA;AAEE,KAEG,iCAAA,GAAoC,OAAH,CACpC,IADoC,CAC/B,cAD+B,CAAA,sBAAA,CAAA,EAAA,SAAA,GAAA,eAAA,CAAA,CAAA;KAIjC,mBAAA,GAAsB,OAHpB,CAIL,IAJK,CAIA,cAJA,CAAA,QAAA,CAAA,EAAA,gBAAA,GAAA,QAAA,CAAA,CAAA;KAOF,eAAA,GAAkB,OAPrB,CAQA,IARA,CASE,cATF,CAAA,IAAA,CAAA,EAAA,UAAA,GAAA,OAAA,GAAA,QAAA,GAAA,oBAAA,GAAA,SAAA,CAAA,CAAA,GAAA;EADuC,gBAAA,CAAA,EAAA,OAAA;CAAO;AAI3C,KAWO,OAAA,GAXP;EACE,EAAA,CAAA,EAAA,MAAA;EAAL,IAAA,EAAA,MAAA;EADyB,GAAA,EAAA,MAAA;EAAO,OAAA,EAAA,OAAA;EAI7B,MAAA,CAAA,EAAA,MAAA;CAED;AADF,KAcU,eAAA,GAdV;EADqB,iBAAA,CAAA,EAAA,OAAA;EAAO,QAAA,CAAA,EAiBjB,OAjBiB,EAAA;AAO9B,CAAA;AAQY,KAKA,oBAAA,GAHC;EAGD,oBAAA,CAAA,EACa,iCADO;EACP,MAAA,CAAA,EACd,mBADc;EACd,EAAA,CAAA,EACJ,eADI;CACJ;AAAe,KAGV,kBAAA,GAHU,QAAA,GAAA,QAAA,GAAA,WAAA;AAGV,KAEA,cAAA,GAFkB;EAElB,QAAA,EACA,kBADc;EASd,KAAA,EAAA,MAAA;EAKA,UAAA,EAAA,MAAA;EAOA,MAAA,EAAA,MAAA;EAKA,GAAA,EAAA,MAAA;EACR,cAAA,EAAA,MAAA;CACA;AACA,KApBQ,gBAAA,GAAmB,cAoB3B,GAAA;EAAmB,QAAA,EAAA,QAAA;EAEX,cAAW,CAAA,EAAA,MAAA;CACL;AAEJ,KApBF,gBAAA,GAAmB,cAoBjB,GAAA;EACD,QAAA,EAAA,QAAA;EACA,SAAA,CAAA,EAAA,MAAA;EACK;EACH,WAAA,CAAA,EAAA,MAAA;CACF;AAAe,KAlBhB,mBAAA,GAAsB,cAkBN,GAAA;EAGhB,QAAA,EAAA,WAAa;EAMb,SAAA,EAAA,MAAA;AAOZ,CAAA;AACe,KA9BH,oBAAA,GACR,gBA6BW,GA5BX,gBA4BW,GA3BX,mBA2BW;AACN,KA1BG,WAAA,GA0BH;EACG,cAAA,EA1BM,YA0BN,CAAA,IAAA,CAAA;EACK,IAAA,EAAA,MAAA;EACP,UAAA,EA1BI,IA0BJ,CAAA,IAAA,CAAA,EAAA;EAAK,SAAA,EAzBF,IAyBE,CAAA,IAAA,CAAA,EAAA;EAGH,SAAA,EA3BC,IA2BW,CAAA,IAAA,CAAA;EAMZ,aAAA,CAAA,EAhCM,oBAgC6B;EAEnC,UAAO,CAAA,EAjCJ,oBAiCI;EAAG,QAAA,CAAA,EAhCT,eAgCS;CAChB;AAGU,KAjCJ,aAAA,GAiCI;EAAY,IAAA,EAAA,MAAA;EAGhB,MAAA,EAAA,MAAU,EAAA;EAEV,SAAA,CAAA,EAnCE,IAmCW;AACzB,CAAA;AACY,KAlCA,gBAAA,GAAmB,aAkCJ,GAAA;EAAyB,QAAA,EAAA,MAAA;EAAtB,YAAA,EAAA,MAAA;EAAiC,WAAA,EAAA,MAAA,EAAA;EAAO,MAAA,EA9B5D,IA8B4D,CAAA,IAAA,CAAA;;KA3B1D,mBAAA;eACG;SACN;YACG;iBACK;UACP;;KAGE,YAAA,GAAe;MACrB,KAAA,CAAM;;;;KAKA,eAAA,GAAkB,iBAAiB;KAEnC,OAAA,GAAU;MAChB,KAAA,CAAM;;;gBAGI;;KAGJ,UAAA,GAAa,iBAAiB;KAE9B,aAAA,GAAgB,SAAS;KACzB,gBAAA,GAAmB,MAAM;KACzB,eAAA,GAAkB,sBAAsB,WAAW"}
@@ -3,8 +3,8 @@ import { User as User$1, UserAPI } from "./user.types.js";
3
3
  import { Organization, OrganizationAPI } from "./organization.types.js";
4
4
  import { Project, ProjectAPI } from "./project.types.js";
5
5
  import { Permission, Roles } from "../utils/permissions.js";
6
- import { OmitId, Session as Session$1 } from "better-auth";
7
6
  import { Document, Model, ObjectIdToString, Types } from "mongoose";
7
+ import { OmitId, Session as Session$1 } from "better-auth";
8
8
 
9
9
  //#region src/types/session.types.d.ts
10
10
  type SessionData = OmitId<Session$1> & {
@@ -1,6 +1,6 @@
1
1
  import { RenameId } from "../utils/mongoDB/types.js";
2
- import { OmitId, User as User$1 } from "better-auth";
3
2
  import { Document, Model, ObjectIdToString, Types } from "mongoose";
3
+ import { OmitId, User as User$1 } from "better-auth";
4
4
 
5
5
  //#region src/types/user.types.d.ts
6
6
  interface UserData {
@@ -1,5 +1,5 @@
1
- import { Dictionary } from "../../../types/dictionary.types.js";
2
1
  import { TagAPI } from "../../../types/tag.types.js";
2
+ import { Dictionary } from "../../../types/dictionary.types.js";
3
3
  import { AIConfig, AIOptions } from "@intlayer/ai";
4
4
 
5
5
  //#region src/utils/AI/auditTag/index.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"getAuth.d.ts","names":[],"sources":["../../../../src/utils/auth/getAuth.ts"],"sourcesContent":[],"mappings":";;;;;KAiCY,IAAA,GAAO,kBAAkB;cAExB,yBAA0B,mBAAiB,OAAO;AAFnD,cAwBC,OAxBwB,EAAA,CAAA,QAAlB,EAwBe,WAxBL,EAAA,GAwBmB,IAxBnB"}
1
+ {"version":3,"file":"getAuth.d.ts","names":[],"sources":["../../../../src/utils/auth/getAuth.ts"],"sourcesContent":[],"mappings":";;;;;KAgCY,IAAA,GAAO,kBAAkB;cAExB,yBAA0B,mBAAiB,OAAO;AAFnD,cAwBC,OAxBwB,EAAA,CAAA,QAAlB,EAwBe,WAxBL,EAAA,GAwBmB,IAxBnB"}
@@ -1,7 +1,7 @@
1
- import { CorsOptions } from "cors";
1
+ import { FastifyCorsOptions } from "@fastify/cors";
2
2
 
3
3
  //#region src/utils/cors.d.ts
4
- declare const corsOptions: CorsOptions;
4
+ declare const corsOptions: FastifyCorsOptions;
5
5
  //#endregion
6
6
  export { corsOptions };
7
7
  //# sourceMappingURL=cors.d.ts.map
@@ -1,10 +1,13 @@
1
1
  import { HttpStatusCodes } from "../httpStatusCodes.js";
2
+ import { ResponseData } from "../responseData.js";
2
3
  import { ErrorCodes } from "./errorCodes.js";
3
4
  import { AppError } from "./ErrorsClass.js";
4
5
  import { StrictModeLocaleMap } from "@intlayer/types";
6
+ import { FastifyReply } from "fastify";
5
7
  import { Response } from "express";
6
8
 
7
9
  //#region src/utils/errors/ErrorHandler.d.ts
10
+ type ResponseLike = Response | FastifyReply;
8
11
  declare class ErrorHandler {
9
12
  /**
10
13
  * Handles generic error responses by formatting and sending a JSON response.
@@ -13,7 +16,7 @@ declare class ErrorHandler {
13
16
  * @param statusCode - (Optional) A specific HTTP status code to use for the response.
14
17
  * @param isPaginatedResponse - Flag to determine if the response should be paginated.
15
18
  */
16
- static handleGenericErrorResponse(res: Response, errorKey: ErrorCodes, errorDetails?: object, statusCode?: HttpStatusCodes, isPaginatedResponse?: boolean): void;
19
+ static handleGenericErrorResponse(res: ResponseLike, errorKey: ErrorCodes, errorDetails?: object, statusCode?: HttpStatusCodes, isPaginatedResponse?: boolean): void;
17
20
  /**
18
21
  * Handles application-specific error responses by formatting and sending a JSON response.
19
22
  * @param res - The response object provided by Express.js.
@@ -21,7 +24,7 @@ declare class ErrorHandler {
21
24
  * @param messageDetails - (Optional) Additional message details to include in the response.
22
25
  * @param isPaginatedResponse - (Optional) Flag to determine if the response should be paginated.
23
26
  */
24
- static handleAppErrorResponse(res: Response, error: AppError, messageDetails?: object, isPaginatedResponse?: boolean): void;
27
+ static handleAppErrorResponse(res: ResponseLike, error: AppError, messageDetails?: object, isPaginatedResponse?: boolean): void;
25
28
  /**
26
29
  * Handles more customizable error responses with detailed error messages and codes.
27
30
  * @param res - The response object.
@@ -31,7 +34,32 @@ declare class ErrorHandler {
31
34
  * @param statusCode - (Optional) HTTP status code, defaults to 500 if not specified.
32
35
  * @param isPaginatedResponse - Determines if the error should be part of a paginated response.
33
36
  */
34
- static handleCustomErrorResponse<T>(res: Response, errorKey: ErrorCodes | string, title: StrictModeLocaleMap<string> | string, message: StrictModeLocaleMap<string> | string, messageDetails?: object, statusCode?: HttpStatusCodes, isPaginatedResponse?: boolean): void;
37
+ static handleCustomErrorResponse<T>(res: ResponseLike, errorKey: ErrorCodes | string, title: StrictModeLocaleMap<string> | string, message: StrictModeLocaleMap<string> | string, messageDetails?: object, statusCode?: HttpStatusCodes, isPaginatedResponse?: boolean): void;
38
+ /**
39
+ * Formats a generic error response without sending it (useful for Fastify plugins).
40
+ * @param errorKey - A key representing the specific error.
41
+ * @param errorDetails - Optional error details to include.
42
+ * @param statusCode - Optional HTTP status code.
43
+ * @returns Formatted error response object.
44
+ */
45
+ static formatGenericErrorResponse(errorKey: ErrorCodes, errorDetails?: object, statusCode?: HttpStatusCodes): ResponseData<{
46
+ name: string;
47
+ id: string;
48
+ createdAt: Date;
49
+ updatedAt: Date;
50
+ email: string;
51
+ emailVerified: boolean;
52
+ image?: string;
53
+ phone?: string;
54
+ dateOfBirth?: Date;
55
+ emailsList?: {
56
+ newsLetter: boolean;
57
+ };
58
+ customerId?: string;
59
+ role?: string;
60
+ lastLoginMethod?: "email" | "google" | "github" | "passkey";
61
+ lang?: string;
62
+ }>;
35
63
  }
36
64
  //#endregion
37
65
  export { ErrorHandler };
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorHandler.d.ts","names":[],"sources":["../../../../src/utils/errors/ErrorHandler.ts"],"sourcesContent":[],"mappings":";;;;;;;cAaa,YAAA;;AAAb;;;;;;EA8ES,OAAA,0BAAA,CAAA,GAAA,EArEA,QAqEA,EAAA,QAAA,EApEK,UAoEL,EAAA,YAAA,CAAA,EAAA,MAAA,EAAA,UAAA,CAAA,EAlEQ,eAkER,EAAA,mBAAA,CAAA,EAAA,OAAA,CAAA,EAAA,IAAA;EACK;;;;;;;qCAzCL,iBACE;;;;;;;;;;2CAuCF,oBACK,4BACH,+CACE,4EAEI"}
1
+ {"version":3,"file":"ErrorHandler.d.ts","names":[],"sources":["../../../../src/utils/errors/ErrorHandler.ts"],"sourcesContent":[],"mappings":";;;;;;;;;KAaK,YAAA,GAAe,WAAW;cAGlB,YAAA;;AAL6C;AAK1D;;;;;EAuCW,OAAA,0BAAA,CAAA,GAAA,EA9BF,YA8BE,EAAA,QAAA,EA7BG,UA6BH,EAAA,YAAA,CAAA,EAAA,MAAA,EAAA,UAAA,CAAA,EA3BM,eA2BN,EAAA,mBAAA,CAAA,EAAA,OAAA,CAAA,EAAA,IAAA;EAwCF;;;;;;;qCAzCA,qBACE;;;;;;;;;;2CAwCF,wBACK,4BACH,+CACE,4EAEI;;;;;;;;8CAyDH,gDAEG"}
@@ -1,6 +1,6 @@
1
1
  import { HttpStatusCodes } from "../httpStatusCodes.js";
2
2
  import { ErrorCodes } from "./errorCodes.js";
3
- import { StrictModeLocaleMap } from "express-intlayer";
3
+ import { StrictModeLocaleMap } from "fastify-intlayer";
4
4
 
5
5
  //#region src/utils/errors/ErrorsClass.d.ts
6
6
 
@@ -1380,6 +1380,240 @@ declare const errorData: {
1380
1380
  };
1381
1381
  statusCode: HttpStatusCodes.BAD_REQUEST_400;
1382
1382
  };
1383
+ GITHUB_CODE_MISSING: {
1384
+ title: {
1385
+ en: string;
1386
+ fr: string;
1387
+ es: string;
1388
+ };
1389
+ message: {
1390
+ en: string;
1391
+ fr: string;
1392
+ es: string;
1393
+ };
1394
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1395
+ };
1396
+ GITHUB_TOKEN_MISSING: {
1397
+ title: {
1398
+ en: string;
1399
+ fr: string;
1400
+ es: string;
1401
+ };
1402
+ message: {
1403
+ en: string;
1404
+ fr: string;
1405
+ es: string;
1406
+ };
1407
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1408
+ };
1409
+ GITHUB_CHECK_CONFIG_MISSING_PARAMS: {
1410
+ title: {
1411
+ en: string;
1412
+ fr: string;
1413
+ es: string;
1414
+ };
1415
+ message: {
1416
+ en: string;
1417
+ fr: string;
1418
+ es: string;
1419
+ };
1420
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1421
+ };
1422
+ GITHUB_REDIRECT_URI_MISSING: {
1423
+ title: {
1424
+ en: string;
1425
+ fr: string;
1426
+ es: string;
1427
+ };
1428
+ message: {
1429
+ en: string;
1430
+ fr: string;
1431
+ es: string;
1432
+ };
1433
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1434
+ };
1435
+ GITHUB_GET_CONFIG_FILE_MISSING_PARAMS: {
1436
+ title: {
1437
+ en: string;
1438
+ fr: string;
1439
+ es: string;
1440
+ };
1441
+ message: {
1442
+ en: string;
1443
+ fr: string;
1444
+ es: string;
1445
+ };
1446
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1447
+ };
1448
+ GITHUB_CONFIG_FILE_NOT_FOUND: {
1449
+ title: {
1450
+ en: string;
1451
+ fr: string;
1452
+ es: string;
1453
+ };
1454
+ message: {
1455
+ en: string;
1456
+ fr: string;
1457
+ es: string;
1458
+ };
1459
+ statusCode: HttpStatusCodes.NOT_FOUND_404;
1460
+ };
1461
+ BITBUCKET_REDIRECT_URI_MISSING: {
1462
+ title: {
1463
+ en: string;
1464
+ fr: string;
1465
+ es: string;
1466
+ };
1467
+ message: {
1468
+ en: string;
1469
+ fr: string;
1470
+ es: string;
1471
+ };
1472
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1473
+ };
1474
+ BITBUCKET_CODE_MISSING: {
1475
+ title: {
1476
+ en: string;
1477
+ fr: string;
1478
+ es: string;
1479
+ };
1480
+ message: {
1481
+ en: string;
1482
+ fr: string;
1483
+ es: string;
1484
+ };
1485
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1486
+ };
1487
+ BITBUCKET_TOKEN_MISSING: {
1488
+ title: {
1489
+ en: string;
1490
+ fr: string;
1491
+ es: string;
1492
+ };
1493
+ message: {
1494
+ en: string;
1495
+ fr: string;
1496
+ es: string;
1497
+ };
1498
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1499
+ };
1500
+ BITBUCKET_CHECK_CONFIG_MISSING_PARAMS: {
1501
+ title: {
1502
+ en: string;
1503
+ fr: string;
1504
+ es: string;
1505
+ };
1506
+ message: {
1507
+ en: string;
1508
+ fr: string;
1509
+ es: string;
1510
+ };
1511
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1512
+ };
1513
+ BITBUCKET_GET_CONFIG_FILE_MISSING_PARAMS: {
1514
+ title: {
1515
+ en: string;
1516
+ fr: string;
1517
+ es: string;
1518
+ };
1519
+ message: {
1520
+ en: string;
1521
+ fr: string;
1522
+ es: string;
1523
+ };
1524
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1525
+ };
1526
+ BITBUCKET_CONFIG_FILE_NOT_FOUND: {
1527
+ title: {
1528
+ en: string;
1529
+ fr: string;
1530
+ es: string;
1531
+ };
1532
+ message: {
1533
+ en: string;
1534
+ fr: string;
1535
+ es: string;
1536
+ };
1537
+ statusCode: HttpStatusCodes.NOT_FOUND_404;
1538
+ };
1539
+ GITLAB_REDIRECT_URI_MISSING: {
1540
+ title: {
1541
+ en: string;
1542
+ fr: string;
1543
+ es: string;
1544
+ };
1545
+ message: {
1546
+ en: string;
1547
+ fr: string;
1548
+ es: string;
1549
+ };
1550
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1551
+ };
1552
+ GITLAB_CODE_MISSING: {
1553
+ title: {
1554
+ en: string;
1555
+ fr: string;
1556
+ es: string;
1557
+ };
1558
+ message: {
1559
+ en: string;
1560
+ fr: string;
1561
+ es: string;
1562
+ };
1563
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1564
+ };
1565
+ GITLAB_TOKEN_MISSING: {
1566
+ title: {
1567
+ en: string;
1568
+ fr: string;
1569
+ es: string;
1570
+ };
1571
+ message: {
1572
+ en: string;
1573
+ fr: string;
1574
+ es: string;
1575
+ };
1576
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1577
+ };
1578
+ GITLAB_CHECK_CONFIG_MISSING_PARAMS: {
1579
+ title: {
1580
+ en: string;
1581
+ fr: string;
1582
+ es: string;
1583
+ };
1584
+ message: {
1585
+ en: string;
1586
+ fr: string;
1587
+ es: string;
1588
+ };
1589
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1590
+ };
1591
+ GITLAB_GET_CONFIG_FILE_MISSING_PARAMS: {
1592
+ title: {
1593
+ en: string;
1594
+ fr: string;
1595
+ es: string;
1596
+ };
1597
+ message: {
1598
+ en: string;
1599
+ fr: string;
1600
+ es: string;
1601
+ };
1602
+ statusCode: HttpStatusCodes.BAD_REQUEST_400;
1603
+ };
1604
+ GITLAB_CONFIG_FILE_NOT_FOUND: {
1605
+ title: {
1606
+ en: string;
1607
+ fr: string;
1608
+ es: string;
1609
+ };
1610
+ message: {
1611
+ en: string;
1612
+ fr: string;
1613
+ es: string;
1614
+ };
1615
+ statusCode: HttpStatusCodes.NOT_FOUND_404;
1616
+ };
1383
1617
  };
1384
1618
  type ErrorCodes = keyof typeof errorData;
1385
1619
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"errorCodes.d.ts","names":[],"sources":["../../../../src/utils/errors/errorCodes.ts"],"sourcesContent":[],"mappings":";;;cAUa;;IAAA,KAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAw2CD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAAA,UAAA,gBAA0B"}
1
+ {"version":3,"file":"errorCodes.d.ts","names":[],"sources":["../../../../src/utils/errors/errorCodes.ts"],"sourcesContent":[],"mappings":";;;cAUa;;IAAA,KAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAklDD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAAA,UAAA,gBAA0B"}
@@ -1,8 +1,9 @@
1
1
  import { Dictionary } from "../../types/dictionary.types.js";
2
2
  import { ResponseWithSession } from "../../middlewares/sessionAuth.middleware.js";
3
3
  import { FiltersAndPagination } from "./getFiltersAndPaginationFromBody.js";
4
- import * as mongoose106 from "mongoose";
4
+ import * as mongoose110 from "mongoose";
5
5
  import { RootFilterQuery } from "mongoose";
6
+ import { FastifyRequest } from "fastify";
6
7
  import { Request } from "express";
7
8
 
8
9
  //#region src/utils/filtersAndPagination/getDictionaryFiltersAndPagination.d.ts
@@ -33,15 +34,18 @@ type DictionaryFiltersParams = {
33
34
  type DictionaryFilters = RootFilterQuery<Dictionary>;
34
35
  /**
35
36
  * Extracts filters and pagination information from the request body.
36
- * @param req - Express request object.
37
+ * @param req - Express or Fastify request object.
38
+ * @param res - Express or Fastify response object (optional, for Express compatibility).
37
39
  * @returns Object containing filters, page, pageSize, and getNumberOfPages functions.
38
40
  */
39
- declare const getDictionaryFiltersAndPagination: (req: Request<FiltersAndPagination<DictionaryFiltersParams>>, res: ResponseWithSession) => {
41
+ declare const getDictionaryFiltersAndPagination: (req: Request<FiltersAndPagination<DictionaryFiltersParams>> | FastifyRequest<{
42
+ Querystring: FiltersAndPagination<DictionaryFiltersParams>;
43
+ }>, res?: ResponseWithSession) => {
40
44
  page: number;
41
45
  skip: number;
42
46
  pageSize: number;
43
47
  getNumberOfPages: (totalItems: number) => number;
44
- filters: mongoose106.FilterQuery<Dictionary>;
48
+ filters: mongoose110.FilterQuery<Dictionary>;
45
49
  sortOptions: Record<string, 1 | -1>;
46
50
  };
47
51
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"getDictionaryFiltersAndPagination.d.ts","names":[],"sources":["../../../../src/utils/filtersAndPagination/getDictionaryFiltersAndPagination.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAUY,uBAAA;;;EAAA,UAAA,CAAA,EAAA,MAAA,EAAA;EAwBA,cAAA,CAAA,EAAA,MAAiB;EAOhB,eAAA,CAAA,EAAA,MAAA,EAAA;EACuB,MAAA,CAAA,EAAA,MAAA;EAArB,OAAA,CAAA,EAAA,MAAA,EAAA;EAAR,SAAA,CAAA,EAAA,MAAA;EACA,UAAA,CAAA,EAAA,MAAA,EAAA;;;;;;;;;;;;;;;KATK,iBAAA,GAAoB,gBAAgB;;;;;;cAOnC,yCACN,QAAQ,qBAAqB,gCAC7B"}
1
+ {"version":3,"file":"getDictionaryFiltersAndPagination.d.ts","names":[],"sources":["../../../../src/utils/filtersAndPagination/getDictionaryFiltersAndPagination.ts"],"sourcesContent":[],"mappings":";;;;;;;;;KAWY,uBAAA;;;EAAA,UAAA,CAAA,EAAA,MAAA,EAAA;EAwBA,cAAA,CAAA,EAAA,MAAiB;EAQhB,eAAA,CAAA,EAAA,MAAA,EAAA;EAEsB,MAAA,CAAA,EAAA,MAAA;EAArB,OAAA,CAAA,EAAA,MAAA,EAAA;EAAR,SAAA,CAAA,EAAA,MAAA;EAEoC,UAAA,CAAA,EAAA,MAAA,EAAA;EAArB,KAAA,CAAA,EAAA,MAAA;EADf,WAAA,CAAA,EAAA,MAAA;EAGE,GAAA,CAAA,EAAA,MAAA;;;;;;;;;;;;KAdI,iBAAA,GAAoB,gBAAgB;;;;;;;cAQnC,yCAEP,QAAQ,qBAAqB,4BAC7B;eACe,qBAAqB;UAElC"}
@@ -1,8 +1,9 @@
1
1
  import { ResponseWithSession } from "../../middlewares/sessionAuth.middleware.js";
2
2
  import { Discussion } from "../../types/discussion.types.js";
3
3
  import { FiltersAndPagination } from "./getFiltersAndPaginationFromBody.js";
4
- import * as mongoose103 from "mongoose";
4
+ import * as mongoose105 from "mongoose";
5
5
  import { RootFilterQuery } from "mongoose";
6
+ import { FastifyRequest } from "fastify";
6
7
  import { Request } from "express";
7
8
 
8
9
  //#region src/utils/filtersAndPagination/getDiscussionFiltersAndPagination.d.ts
@@ -25,12 +26,14 @@ type DiscussionFilters = RootFilterQuery<Discussion>;
25
26
  * Extracts filters and pagination information for discussions.
26
27
  * Enforces that non-admin users can only see their own discussions.
27
28
  */
28
- declare const getDiscussionFiltersAndPagination: (req: Request<FiltersAndPagination<DiscussionFiltersParams>>, res: ResponseWithSession) => {
29
+ declare const getDiscussionFiltersAndPagination: (req: Request<FiltersAndPagination<DiscussionFiltersParams>> | FastifyRequest<{
30
+ Querystring: FiltersAndPagination<DiscussionFiltersParams>;
31
+ }>, res?: ResponseWithSession) => {
29
32
  page: number;
30
33
  skip: number;
31
34
  pageSize: number;
32
35
  getNumberOfPages: (totalItems: number) => number;
33
- filters: mongoose103.Types.ObjectId | mongoose103.Query<any, any, {}, unknown, "find", Record<string, never>> | mongoose103.FilterQuery<Discussion>;
36
+ filters: mongoose105.Query<any, any, {}, unknown, "find", Record<string, never>> | mongoose105.Types.ObjectId | mongoose105.FilterQuery<Discussion>;
34
37
  sortOptions: Record<string, 1 | -1>;
35
38
  };
36
39
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"getDiscussionFiltersAndPagination.d.ts","names":[],"sources":["../../../../src/utils/filtersAndPagination/getDiscussionFiltersAndPagination.ts"],"sourcesContent":[],"mappings":";;;;;;;;KAUY,uBAAA;;;EAAA,OAAA,CAAA,EAAA,MAAA,EAAA;EAcA,YAAA,CAAA,EAAA,MAAiB;EAMhB,MAAA,CAAA,EAAA,MAAA;EACuB,UAAA,CAAA,EAAA,MAAA,GAAA,OAAA;EAArB,MAAA,CAAA,EAAA,MAAA;EAAR,SAAA,CAAA,EAAA,MAAA;EACA;;;;;KARK,iBAAA,GAAoB,gBAAgB;;;;;cAMnC,yCACN,QAAQ,qBAAqB,gCAC7B"}
1
+ {"version":3,"file":"getDiscussionFiltersAndPagination.d.ts","names":[],"sources":["../../../../src/utils/filtersAndPagination/getDiscussionFiltersAndPagination.ts"],"sourcesContent":[],"mappings":";;;;;;;;;KAWY,uBAAA;;;EAAA,OAAA,CAAA,EAAA,MAAA,EAAA;EAcA,YAAA,CAAA,EAAA,MAAiB;EAMhB,MAAA,CAAA,EAAA,MAAA;EAEsB,UAAA,CAAA,EAAA,MAAA,GAAA,OAAA;EAArB,MAAA,CAAA,EAAA,MAAA;EAAR,SAAA,CAAA,EAAA,MAAA;EAEoC;;;EAElC,QAAA,CAAA,EAAA,MAAA,GAAA,OAAA;;KAZI,iBAAA,GAAoB,gBAAgB;;;;;cAMnC,yCAEP,QAAQ,qBAAqB,4BAC7B;eACe,qBAAqB;UAElC"}
@@ -1,4 +1,5 @@
1
1
  import { ObjectId } from "mongoose";
2
+ import { FastifyRequest } from "fastify";
2
3
  import { Request } from "express";
3
4
 
4
5
  //#region src/utils/filtersAndPagination/getFiltersAndPaginationFromBody.d.ts
@@ -14,12 +15,15 @@ type FiltersAndPaginationResult<T extends Filters> = {
14
15
  pageSize: number;
15
16
  getNumberOfPages: (totalItems: number) => number;
16
17
  };
18
+ type RequestLike<T extends Filters> = Request<FiltersAndPagination<T>> | FastifyRequest<{
19
+ Querystring: FiltersAndPagination<T>;
20
+ }>;
17
21
  /**
18
22
  * Extracts filters and pagination information from the request body.
19
- * @param req - Express request object.
23
+ * @param req - Express or Fastify request object.
20
24
  * @returns Object containing filters, page, pageSize, and getNumberOfPages functions.
21
25
  */
22
- declare const getFiltersAndPaginationFromBody: <T extends Filters>(req: Request<FiltersAndPagination<T>>) => FiltersAndPaginationResult<T>;
26
+ declare const getFiltersAndPaginationFromBody: <T extends Filters>(req: RequestLike<T>) => FiltersAndPaginationResult<T>;
23
27
  //#endregion
24
28
  export { FiltersAndPagination, FiltersAndPaginationResult, getFiltersAndPaginationFromBody };
25
29
  //# sourceMappingURL=getFiltersAndPaginationFromBody.d.ts.map