@intlayer/backend 3.5.5 → 3.5.7

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 (253) hide show
  1. package/dist/cjs/controllers/ai.controller.cjs +175 -7
  2. package/dist/cjs/controllers/ai.controller.cjs.map +1 -1
  3. package/dist/cjs/controllers/dictionary.controller.cjs +50 -17
  4. package/dist/cjs/controllers/dictionary.controller.cjs.map +1 -1
  5. package/dist/cjs/controllers/project.controller.cjs +2 -6
  6. package/dist/cjs/controllers/project.controller.cjs.map +1 -1
  7. package/dist/cjs/controllers/tag.controller.cjs +235 -0
  8. package/dist/cjs/controllers/tag.controller.cjs.map +1 -0
  9. package/dist/cjs/controllers/user.controller.cjs +1 -0
  10. package/dist/cjs/controllers/user.controller.cjs.map +1 -1
  11. package/dist/cjs/export.cjs.map +1 -1
  12. package/dist/cjs/index.cjs +2 -0
  13. package/dist/cjs/index.cjs.map +1 -1
  14. package/dist/cjs/models/tag.model.cjs +31 -0
  15. package/dist/cjs/models/tag.model.cjs.map +1 -0
  16. package/dist/cjs/routes/ai.routes.cjs +37 -4
  17. package/dist/cjs/routes/ai.routes.cjs.map +1 -1
  18. package/dist/cjs/routes/dictionary.routes.cjs +4 -4
  19. package/dist/cjs/routes/dictionary.routes.cjs.map +1 -1
  20. package/dist/cjs/routes/tags.routes.cjs +60 -0
  21. package/dist/cjs/routes/tags.routes.cjs.map +1 -0
  22. package/dist/cjs/schemas/dictionary.schema.cjs +31 -6
  23. package/dist/cjs/schemas/dictionary.schema.cjs.map +1 -1
  24. package/dist/cjs/schemas/project.schema.cjs +5 -0
  25. package/dist/cjs/schemas/project.schema.cjs.map +1 -1
  26. package/dist/cjs/schemas/tag.schema.cjs +64 -0
  27. package/dist/cjs/schemas/tag.schema.cjs.map +1 -0
  28. package/dist/cjs/services/dictionary.service.cjs +138 -27
  29. package/dist/cjs/services/dictionary.service.cjs.map +1 -1
  30. package/dist/cjs/services/project.service.cjs +13 -5
  31. package/dist/cjs/services/project.service.cjs.map +1 -1
  32. package/dist/cjs/services/tag.service.cjs +91 -0
  33. package/dist/cjs/services/tag.service.cjs.map +1 -0
  34. package/dist/cjs/types/dictionary.types.cjs.map +1 -1
  35. package/dist/cjs/types/tag.types.cjs +17 -0
  36. package/dist/cjs/types/tag.types.cjs.map +1 -0
  37. package/dist/cjs/utils/AI/askDocQuestion.cjs +185 -0
  38. package/dist/cjs/utils/AI/askDocQuestion.cjs.map +1 -0
  39. package/dist/cjs/utils/AI/embeddings.json +150583 -0
  40. package/dist/cjs/utils/{audit → auditDictionary}/PROMPT.md +6 -1
  41. package/dist/cjs/utils/{audit → auditDictionary}/index.cjs +10 -8
  42. package/dist/cjs/utils/auditDictionary/index.cjs.map +1 -0
  43. package/dist/cjs/utils/auditDictionaryField/PROMPT.md +115 -0
  44. package/dist/cjs/utils/auditDictionaryField/index.cjs +80 -0
  45. package/dist/cjs/utils/auditDictionaryField/index.cjs.map +1 -0
  46. package/dist/cjs/utils/auditDictionaryMetadata/PROMPT.md +76 -0
  47. package/dist/cjs/utils/auditDictionaryMetadata/index.cjs +76 -0
  48. package/dist/cjs/utils/auditDictionaryMetadata/index.cjs.map +1 -0
  49. package/dist/cjs/utils/auditTag/PROMPT.md +34 -0
  50. package/dist/cjs/utils/auditTag/index.cjs +72 -0
  51. package/dist/cjs/utils/auditTag/index.cjs.map +1 -0
  52. package/dist/cjs/utils/ensureArrayQueryFilter.cjs +39 -0
  53. package/dist/cjs/utils/ensureArrayQueryFilter.cjs.map +1 -0
  54. package/dist/cjs/utils/ensureMongoDocumentToObject.cjs +35 -0
  55. package/dist/cjs/utils/ensureMongoDocumentToObject.cjs.map +1 -0
  56. package/dist/cjs/utils/errors/errorCodes.cjs +91 -0
  57. package/dist/cjs/utils/errors/errorCodes.cjs.map +1 -1
  58. package/dist/cjs/utils/filtersAndPagination/getDictionaryFiltersAndPagination.cjs +10 -11
  59. package/dist/cjs/utils/filtersAndPagination/getDictionaryFiltersAndPagination.cjs.map +1 -1
  60. package/dist/cjs/utils/filtersAndPagination/getOrganizationFiltersAndPagination.cjs +6 -10
  61. package/dist/cjs/utils/filtersAndPagination/getOrganizationFiltersAndPagination.cjs.map +1 -1
  62. package/dist/cjs/utils/filtersAndPagination/getProjectFiltersAndPagination.cjs +6 -10
  63. package/dist/cjs/utils/filtersAndPagination/getProjectFiltersAndPagination.cjs.map +1 -1
  64. package/dist/cjs/utils/filtersAndPagination/getTagFiltersAndPagination.cjs +51 -0
  65. package/dist/cjs/utils/filtersAndPagination/getTagFiltersAndPagination.cjs.map +1 -0
  66. package/dist/cjs/utils/filtersAndPagination/getUserFiltersAndPagination.cjs +2 -9
  67. package/dist/cjs/utils/filtersAndPagination/getUserFiltersAndPagination.cjs.map +1 -1
  68. package/dist/cjs/utils/mapper/dictionary.cjs +8 -4
  69. package/dist/cjs/utils/mapper/dictionary.cjs.map +1 -1
  70. package/dist/cjs/utils/mapper/organization.cjs +2 -4
  71. package/dist/cjs/utils/mapper/organization.cjs.map +1 -1
  72. package/dist/cjs/utils/mapper/project.cjs +2 -4
  73. package/dist/cjs/utils/mapper/project.cjs.map +1 -1
  74. package/dist/cjs/utils/mapper/tag.cjs +37 -0
  75. package/dist/cjs/utils/mapper/tag.cjs.map +1 -0
  76. package/dist/cjs/utils/mapper/user.cjs +2 -4
  77. package/dist/cjs/utils/mapper/user.cjs.map +1 -1
  78. package/dist/cjs/utils/removeObjectKeys.cjs +35 -0
  79. package/dist/cjs/utils/removeObjectKeys.cjs.map +1 -0
  80. package/dist/cjs/utils/validation/validateProject.cjs +17 -10
  81. package/dist/cjs/utils/validation/validateProject.cjs.map +1 -1
  82. package/dist/cjs/utils/validation/validateTag.cjs +93 -0
  83. package/dist/cjs/utils/validation/validateTag.cjs.map +1 -0
  84. package/dist/esm/controllers/ai.controller.mjs +170 -6
  85. package/dist/esm/controllers/ai.controller.mjs.map +1 -1
  86. package/dist/esm/controllers/dictionary.controller.mjs +50 -17
  87. package/dist/esm/controllers/dictionary.controller.mjs.map +1 -1
  88. package/dist/esm/controllers/project.controller.mjs +2 -6
  89. package/dist/esm/controllers/project.controller.mjs.map +1 -1
  90. package/dist/esm/controllers/tag.controller.mjs +203 -0
  91. package/dist/esm/controllers/tag.controller.mjs.map +1 -0
  92. package/dist/esm/controllers/user.controller.mjs +1 -0
  93. package/dist/esm/controllers/user.controller.mjs.map +1 -1
  94. package/dist/esm/export.mjs.map +1 -1
  95. package/dist/esm/index.mjs +2 -0
  96. package/dist/esm/index.mjs.map +1 -1
  97. package/dist/esm/models/tag.model.mjs +7 -0
  98. package/dist/esm/models/tag.model.mjs.map +1 -0
  99. package/dist/esm/routes/ai.routes.mjs +44 -5
  100. package/dist/esm/routes/ai.routes.mjs.map +1 -1
  101. package/dist/esm/routes/dictionary.routes.mjs +4 -4
  102. package/dist/esm/routes/dictionary.routes.mjs.map +1 -1
  103. package/dist/esm/routes/tags.routes.mjs +40 -0
  104. package/dist/esm/routes/tags.routes.mjs.map +1 -0
  105. package/dist/esm/schemas/dictionary.schema.mjs +31 -6
  106. package/dist/esm/schemas/dictionary.schema.mjs.map +1 -1
  107. package/dist/esm/schemas/project.schema.mjs +5 -0
  108. package/dist/esm/schemas/project.schema.mjs.map +1 -1
  109. package/dist/esm/schemas/tag.schema.mjs +45 -0
  110. package/dist/esm/schemas/tag.schema.mjs.map +1 -0
  111. package/dist/esm/services/dictionary.service.mjs +136 -27
  112. package/dist/esm/services/dictionary.service.mjs.map +1 -1
  113. package/dist/esm/services/project.service.mjs +13 -5
  114. package/dist/esm/services/project.service.mjs.map +1 -1
  115. package/dist/esm/services/tag.service.mjs +61 -0
  116. package/dist/esm/services/tag.service.mjs.map +1 -0
  117. package/dist/esm/types/tag.types.mjs +1 -0
  118. package/dist/esm/types/tag.types.mjs.map +1 -0
  119. package/dist/esm/utils/AI/askDocQuestion.mjs +148 -0
  120. package/dist/esm/utils/AI/askDocQuestion.mjs.map +1 -0
  121. package/dist/esm/utils/AI/embeddings.json +150583 -0
  122. package/dist/esm/utils/{audit → auditDictionary}/PROMPT.md +6 -1
  123. package/dist/esm/utils/{audit → auditDictionary}/index.mjs +6 -4
  124. package/dist/esm/utils/auditDictionary/index.mjs.map +1 -0
  125. package/dist/esm/utils/auditDictionaryField/PROMPT.md +115 -0
  126. package/dist/esm/utils/auditDictionaryField/index.mjs +55 -0
  127. package/dist/esm/utils/auditDictionaryField/index.mjs.map +1 -0
  128. package/dist/esm/utils/auditDictionaryMetadata/PROMPT.md +76 -0
  129. package/dist/esm/utils/auditDictionaryMetadata/index.mjs +51 -0
  130. package/dist/esm/utils/auditDictionaryMetadata/index.mjs.map +1 -0
  131. package/dist/esm/utils/auditTag/PROMPT.md +34 -0
  132. package/dist/esm/utils/auditTag/index.mjs +47 -0
  133. package/dist/esm/utils/auditTag/index.mjs.map +1 -0
  134. package/dist/esm/utils/ensureArrayQueryFilter.mjs +15 -0
  135. package/dist/esm/utils/ensureArrayQueryFilter.mjs.map +1 -0
  136. package/dist/esm/utils/ensureMongoDocumentToObject.mjs +11 -0
  137. package/dist/esm/utils/ensureMongoDocumentToObject.mjs.map +1 -0
  138. package/dist/esm/utils/errors/errorCodes.mjs +91 -0
  139. package/dist/esm/utils/errors/errorCodes.mjs.map +1 -1
  140. package/dist/esm/utils/filtersAndPagination/getDictionaryFiltersAndPagination.mjs +10 -11
  141. package/dist/esm/utils/filtersAndPagination/getDictionaryFiltersAndPagination.mjs.map +1 -1
  142. package/dist/esm/utils/filtersAndPagination/getOrganizationFiltersAndPagination.mjs +6 -10
  143. package/dist/esm/utils/filtersAndPagination/getOrganizationFiltersAndPagination.mjs.map +1 -1
  144. package/dist/esm/utils/filtersAndPagination/getProjectFiltersAndPagination.mjs +6 -10
  145. package/dist/esm/utils/filtersAndPagination/getProjectFiltersAndPagination.mjs.map +1 -1
  146. package/dist/esm/utils/filtersAndPagination/getTagFiltersAndPagination.mjs +29 -0
  147. package/dist/esm/utils/filtersAndPagination/getTagFiltersAndPagination.mjs.map +1 -0
  148. package/dist/esm/utils/filtersAndPagination/getUserFiltersAndPagination.mjs +2 -9
  149. package/dist/esm/utils/filtersAndPagination/getUserFiltersAndPagination.mjs.map +1 -1
  150. package/dist/esm/utils/mapper/dictionary.mjs +8 -4
  151. package/dist/esm/utils/mapper/dictionary.mjs.map +1 -1
  152. package/dist/esm/utils/mapper/organization.mjs +2 -4
  153. package/dist/esm/utils/mapper/organization.mjs.map +1 -1
  154. package/dist/esm/utils/mapper/project.mjs +2 -4
  155. package/dist/esm/utils/mapper/project.mjs.map +1 -1
  156. package/dist/esm/utils/mapper/tag.mjs +12 -0
  157. package/dist/esm/utils/mapper/tag.mjs.map +1 -0
  158. package/dist/esm/utils/mapper/user.mjs +2 -4
  159. package/dist/esm/utils/mapper/user.mjs.map +1 -1
  160. package/dist/esm/utils/removeObjectKeys.mjs +11 -0
  161. package/dist/esm/utils/removeObjectKeys.mjs.map +1 -0
  162. package/dist/esm/utils/validation/validateProject.mjs +17 -10
  163. package/dist/esm/utils/validation/validateProject.mjs.map +1 -1
  164. package/dist/esm/utils/validation/validateTag.mjs +65 -0
  165. package/dist/esm/utils/validation/validateTag.mjs.map +1 -0
  166. package/dist/types/controllers/ai.controller.d.ts +51 -4
  167. package/dist/types/controllers/ai.controller.d.ts.map +1 -1
  168. package/dist/types/controllers/dictionary.controller.d.ts +6 -3
  169. package/dist/types/controllers/dictionary.controller.d.ts.map +1 -1
  170. package/dist/types/controllers/project.controller.d.ts +2 -4
  171. package/dist/types/controllers/project.controller.d.ts.map +1 -1
  172. package/dist/types/controllers/tag.controller.d.ts +39 -0
  173. package/dist/types/controllers/tag.controller.d.ts.map +1 -0
  174. package/dist/types/controllers/user.controller.d.ts.map +1 -1
  175. package/dist/types/export.d.ts +2 -0
  176. package/dist/types/export.d.ts.map +1 -1
  177. package/dist/types/index.d.ts.map +1 -1
  178. package/dist/types/models/dictionary.model.d.ts +1 -0
  179. package/dist/types/models/dictionary.model.d.ts.map +1 -1
  180. package/dist/types/models/tag.model.d.ts +3 -0
  181. package/dist/types/models/tag.model.d.ts.map +1 -0
  182. package/dist/types/routes/ai.routes.d.ts +21 -1
  183. package/dist/types/routes/ai.routes.d.ts.map +1 -1
  184. package/dist/types/routes/dictionary.routes.d.ts +6 -2
  185. package/dist/types/routes/dictionary.routes.d.ts.map +1 -1
  186. package/dist/types/routes/tags.routes.d.ts +29 -0
  187. package/dist/types/routes/tags.routes.d.ts.map +1 -0
  188. package/dist/types/schemas/dictionary.schema.d.ts +1 -0
  189. package/dist/types/schemas/dictionary.schema.d.ts.map +1 -1
  190. package/dist/types/schemas/project.schema.d.ts.map +1 -1
  191. package/dist/types/schemas/tag.schema.d.ts +16 -0
  192. package/dist/types/schemas/tag.schema.d.ts.map +1 -0
  193. package/dist/types/services/dictionary.service.d.ts +10 -2
  194. package/dist/types/services/dictionary.service.d.ts.map +1 -1
  195. package/dist/types/services/project.service.d.ts.map +1 -1
  196. package/dist/types/services/tag.service.d.ts +45 -0
  197. package/dist/types/services/tag.service.d.ts.map +1 -0
  198. package/dist/types/types/dictionary.types.d.ts +14 -4
  199. package/dist/types/types/dictionary.types.d.ts.map +1 -1
  200. package/dist/types/types/tag.types.d.ts +26 -0
  201. package/dist/types/types/tag.types.d.ts.map +1 -0
  202. package/dist/types/utils/AI/askDocQuestion.d.ts +38 -0
  203. package/dist/types/utils/AI/askDocQuestion.d.ts.map +1 -0
  204. package/dist/types/utils/auditDictionary/index.d.ts +24 -0
  205. package/dist/types/utils/auditDictionary/index.d.ts.map +1 -0
  206. package/dist/types/utils/auditDictionaryField/index.d.ts +24 -0
  207. package/dist/types/utils/auditDictionaryField/index.d.ts.map +1 -0
  208. package/dist/types/utils/auditDictionaryMetadata/index.d.ts +21 -0
  209. package/dist/types/utils/auditDictionaryMetadata/index.d.ts.map +1 -0
  210. package/dist/types/utils/{audit → auditTag}/index.d.ts +5 -6
  211. package/dist/types/utils/auditTag/index.d.ts.map +1 -0
  212. package/dist/types/utils/ensureArrayQueryFilter.d.ts +2 -0
  213. package/dist/types/utils/ensureArrayQueryFilter.d.ts.map +1 -0
  214. package/dist/types/utils/ensureMongoDocumentToObject.d.ts +8 -0
  215. package/dist/types/utils/ensureMongoDocumentToObject.d.ts.map +1 -0
  216. package/dist/types/utils/errors/errorCodes.d.ts +91 -0
  217. package/dist/types/utils/errors/errorCodes.d.ts.map +1 -1
  218. package/dist/types/utils/filtersAndPagination/getDictionaryFiltersAndPagination.d.ts +2 -0
  219. package/dist/types/utils/filtersAndPagination/getDictionaryFiltersAndPagination.d.ts.map +1 -1
  220. package/dist/types/utils/filtersAndPagination/getOrganizationFiltersAndPagination.d.ts.map +1 -1
  221. package/dist/types/utils/filtersAndPagination/getProjectFiltersAndPagination.d.ts.map +1 -1
  222. package/dist/types/utils/filtersAndPagination/getTagFiltersAndPagination.d.ts +24 -0
  223. package/dist/types/utils/filtersAndPagination/getTagFiltersAndPagination.d.ts.map +1 -0
  224. package/dist/types/utils/filtersAndPagination/getUserFiltersAndPagination.d.ts.map +1 -1
  225. package/dist/types/utils/mapper/dictionary.d.ts +1 -1
  226. package/dist/types/utils/mapper/dictionary.d.ts.map +1 -1
  227. package/dist/types/utils/mapper/organization.d.ts.map +1 -1
  228. package/dist/types/utils/mapper/project.d.ts.map +1 -1
  229. package/dist/types/utils/mapper/tag.d.ts +16 -0
  230. package/dist/types/utils/mapper/tag.d.ts.map +1 -0
  231. package/dist/types/utils/mapper/user.d.ts +2 -2
  232. package/dist/types/utils/mapper/user.d.ts.map +1 -1
  233. package/dist/types/utils/removeObjectKeys.d.ts +2 -0
  234. package/dist/types/utils/removeObjectKeys.d.ts.map +1 -0
  235. package/dist/types/utils/validation/validateProject.d.ts.map +1 -1
  236. package/dist/types/utils/validation/validateTag.d.ts +16 -0
  237. package/dist/types/utils/validation/validateTag.d.ts.map +1 -0
  238. package/package.json +11 -10
  239. package/dist/cjs/utils/audit/index.cjs.map +0 -1
  240. package/dist/esm/utils/audit/index.mjs.map +0 -1
  241. package/dist/types/utils/audit/index.d.ts.map +0 -1
  242. /package/dist/cjs/utils/{audit → auditDictionary}/CJS_FORMAT.md +0 -0
  243. /package/dist/cjs/utils/{audit → auditDictionary}/JSON_FORMAT.md +0 -0
  244. /package/dist/cjs/utils/{audit → auditDictionary}/JSX_FORMAT.md +0 -0
  245. /package/dist/cjs/utils/{audit → auditDictionary}/MJS_FORMAT.md +0 -0
  246. /package/dist/cjs/utils/{audit → auditDictionary}/TSX_FORMAT.md +0 -0
  247. /package/dist/cjs/utils/{audit → auditDictionary}/TS_FORMAT.md +0 -0
  248. /package/dist/esm/utils/{audit → auditDictionary}/CJS_FORMAT.md +0 -0
  249. /package/dist/esm/utils/{audit → auditDictionary}/JSON_FORMAT.md +0 -0
  250. /package/dist/esm/utils/{audit → auditDictionary}/JSX_FORMAT.md +0 -0
  251. /package/dist/esm/utils/{audit → auditDictionary}/MJS_FORMAT.md +0 -0
  252. /package/dist/esm/utils/{audit → auditDictionary}/TSX_FORMAT.md +0 -0
  253. /package/dist/esm/utils/{audit → auditDictionary}/TS_FORMAT.md +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/utils/mapper/organization.ts"],"sourcesContent":["import {\n Organization,\n OrganizationAPI,\n OrganizationDocument,\n} from '@/types/organization.types';\n\n/**\n * Maps an organization to an API response.\n * @param organization - The organization to map.\n * @param isOrganizationAdmin - Whether the user is an admin of the organization.\n * @returns The organization mapped to an API response.\n */\nexport const mapOrganizationToAPI = (\n organization: Organization,\n isOrganizationAdmin: boolean | null\n): OrganizationAPI => {\n let organizationObject: Organization = organization;\n\n // If the organization is a mongoose document, convert it to an object\n if (typeof (organization as OrganizationDocument).toObject === 'function') {\n organizationObject = (organization as OrganizationDocument).toObject();\n }\n\n if (isOrganizationAdmin) {\n return organizationObject;\n }\n\n const { adminsIds, ...organizationAPI } = organizationObject;\n return organizationAPI;\n};\n"],"mappings":"AAYO,MAAM,uBAAuB,CAClC,cACA,wBACoB;AACpB,MAAI,qBAAmC;AAGvC,MAAI,OAAQ,aAAsC,aAAa,YAAY;AACzE,yBAAsB,aAAsC,SAAS;AAAA,EACvE;AAEA,MAAI,qBAAqB;AACvB,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,WAAW,GAAG,gBAAgB,IAAI;AAC1C,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/utils/mapper/organization.ts"],"sourcesContent":["import { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\nimport { Organization, OrganizationAPI } from '@/types/organization.types';\n\n/**\n * Maps an organization to an API response.\n * @param organization - The organization to map.\n * @param isOrganizationAdmin - Whether the user is an admin of the organization.\n * @returns The organization mapped to an API response.\n */\nexport const mapOrganizationToAPI = (\n organization: Organization,\n isOrganizationAdmin: boolean | null\n): OrganizationAPI => {\n const organizationObject =\n ensureMongoDocumentToObject<Organization>(organization);\n\n if (isOrganizationAdmin) {\n return organizationObject;\n }\n\n const { adminsIds, ...organizationAPI } = organizationObject;\n return organizationAPI;\n};\n"],"mappings":"AAAA,SAAS,mCAAmC;AASrC,MAAM,uBAAuB,CAClC,cACA,wBACoB;AACpB,QAAM,qBACJ,4BAA0C,YAAY;AAExD,MAAI,qBAAqB;AACvB,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,WAAW,GAAG,gBAAgB,IAAI;AAC1C,SAAO;AACT;","names":[]}
@@ -1,8 +1,6 @@
1
+ import { ensureMongoDocumentToObject } from './../../utils/ensureMongoDocumentToObject.mjs';
1
2
  const mapProjectToAPI = (project, user, isProjectAdmin) => {
2
- let projectObject = project;
3
- if (typeof project.toObject === "function") {
4
- projectObject = project.toObject();
5
- }
3
+ let projectObject = ensureMongoDocumentToObject(project);
6
4
  projectObject = {
7
5
  ...projectObject,
8
6
  oAuth2Access: projectObject.oAuth2Access.filter((token) => token.userId !== user?._id).map((token) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/utils/mapper/project.ts"],"sourcesContent":["import { Project, ProjectAPI, ProjectDocument } from '@/types/project.types';\nimport { User } from '@/types/user.types';\n\n/**\n * Maps a project to an API response.\n * @param project - The project to map.\n * @param isProjectAdmin - Whether the user is an admin of the project.\n * @returns The project mapped to an API response.\n */\nexport const mapProjectToAPI = (\n project: Project,\n user: User | null,\n isProjectAdmin: boolean | null\n): ProjectAPI => {\n let projectObject: Project = project;\n\n // If the project is a mongoose document, convert it to an object\n if (typeof (project as ProjectDocument).toObject === 'function') {\n projectObject = (project as ProjectDocument).toObject();\n }\n\n projectObject = {\n ...projectObject,\n oAuth2Access: projectObject.oAuth2Access\n .filter((token) => token.userId !== user?._id)\n .map((token) => {\n const isJustUpdated =\n new Date().getTime() - new Date(token.updatedAt).getTime() <\n 1000 * 60 * 5; // 5 min\n\n if (isJustUpdated) {\n return token;\n }\n\n return {\n ...token,\n clientSecret: `${token.clientSecret.substring(0, 10)}${'*'.repeat(token.clientSecret.length - 10)}`,\n };\n }),\n };\n\n if (isProjectAdmin) {\n return projectObject;\n }\n\n const { adminsIds, ...projectAPI } = projectObject;\n return projectAPI;\n};\n\n/**\n * Formats an array of projects for API response. Removes sensitive information.\n * @param projects - The array of project objects to format.\n * @param user - The user object.\n * @param isProjectAdmin - Whether the user is an admin of the project.\n * @returns The formatted array of user objects.\n */\nexport const mapProjectsToAPI = (\n projects: Project[],\n user: User,\n isProjectAdmin: boolean | null\n): ProjectAPI[] =>\n projects.map((project) => mapProjectToAPI(project, user, isProjectAdmin));\n"],"mappings":"AASO,MAAM,kBAAkB,CAC7B,SACA,MACA,mBACe;AACf,MAAI,gBAAyB;AAG7B,MAAI,OAAQ,QAA4B,aAAa,YAAY;AAC/D,oBAAiB,QAA4B,SAAS;AAAA,EACxD;AAEA,kBAAgB;AAAA,IACd,GAAG;AAAA,IACH,cAAc,cAAc,aACzB,OAAO,CAAC,UAAU,MAAM,WAAW,MAAM,GAAG,EAC5C,IAAI,CAAC,UAAU;AACd,YAAM,iBACJ,oBAAI,KAAK,GAAE,QAAQ,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,QAAQ,IACzD,MAAO,KAAK;AAEd,UAAI,eAAe;AACjB,eAAO;AAAA,MACT;AAEA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,cAAc,GAAG,MAAM,aAAa,UAAU,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,MAAM,aAAa,SAAS,EAAE,CAAC;AAAA,MACnG;AAAA,IACF,CAAC;AAAA,EACL;AAEA,MAAI,gBAAgB;AAClB,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,WAAW,GAAG,WAAW,IAAI;AACrC,SAAO;AACT;AASO,MAAM,mBAAmB,CAC9B,UACA,MACA,mBAEA,SAAS,IAAI,CAAC,YAAY,gBAAgB,SAAS,MAAM,cAAc,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/utils/mapper/project.ts"],"sourcesContent":["import { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\nimport { Project, ProjectAPI } from '@/types/project.types';\nimport { User } from '@/types/user.types';\n\n/**\n * Maps a project to an API response.\n * @param project - The project to map.\n * @param isProjectAdmin - Whether the user is an admin of the project.\n * @returns The project mapped to an API response.\n */\nexport const mapProjectToAPI = (\n project: Project,\n user: User | null,\n isProjectAdmin: boolean | null\n): ProjectAPI => {\n let projectObject = ensureMongoDocumentToObject<Project>(project);\n\n projectObject = {\n ...projectObject,\n oAuth2Access: projectObject.oAuth2Access\n .filter((token) => token.userId !== user?._id)\n .map((token) => {\n const isJustUpdated =\n new Date().getTime() - new Date(token.updatedAt).getTime() <\n 1000 * 60 * 5; // 5 min\n\n if (isJustUpdated) {\n return token;\n }\n\n return {\n ...token,\n clientSecret: `${token.clientSecret.substring(0, 10)}${'*'.repeat(token.clientSecret.length - 10)}`,\n };\n }),\n };\n\n if (isProjectAdmin) {\n return projectObject;\n }\n\n const { adminsIds, ...projectAPI } = projectObject;\n return projectAPI;\n};\n\n/**\n * Formats an array of projects for API response. Removes sensitive information.\n * @param projects - The array of project objects to format.\n * @param user - The user object.\n * @param isProjectAdmin - Whether the user is an admin of the project.\n * @returns The formatted array of user objects.\n */\nexport const mapProjectsToAPI = (\n projects: Project[],\n user: User,\n isProjectAdmin: boolean | null\n): ProjectAPI[] =>\n projects.map((project) => mapProjectToAPI(project, user, isProjectAdmin));\n"],"mappings":"AAAA,SAAS,mCAAmC;AAUrC,MAAM,kBAAkB,CAC7B,SACA,MACA,mBACe;AACf,MAAI,gBAAgB,4BAAqC,OAAO;AAEhE,kBAAgB;AAAA,IACd,GAAG;AAAA,IACH,cAAc,cAAc,aACzB,OAAO,CAAC,UAAU,MAAM,WAAW,MAAM,GAAG,EAC5C,IAAI,CAAC,UAAU;AACd,YAAM,iBACJ,oBAAI,KAAK,GAAE,QAAQ,IAAI,IAAI,KAAK,MAAM,SAAS,EAAE,QAAQ,IACzD,MAAO,KAAK;AAEd,UAAI,eAAe;AACjB,eAAO;AAAA,MACT;AAEA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,cAAc,GAAG,MAAM,aAAa,UAAU,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,MAAM,aAAa,SAAS,EAAE,CAAC;AAAA,MACnG;AAAA,IACF,CAAC;AAAA,EACL;AAEA,MAAI,gBAAgB;AAClB,WAAO;AAAA,EACT;AAEA,QAAM,EAAE,WAAW,GAAG,WAAW,IAAI;AACrC,SAAO;AACT;AASO,MAAM,mBAAmB,CAC9B,UACA,MACA,mBAEA,SAAS,IAAI,CAAC,YAAY,gBAAgB,SAAS,MAAM,cAAc,CAAC;","names":[]}
@@ -0,0 +1,12 @@
1
+ import { ensureMongoDocumentToObject } from './../../utils/ensureMongoDocumentToObject.mjs';
2
+ const mapTagToAPI = (tag) => {
3
+ const tagObject = ensureMongoDocumentToObject(tag);
4
+ const { ...tagAPI } = tagObject;
5
+ return tagAPI;
6
+ };
7
+ const mapTagsToAPI = (tags) => tags.map((tag) => mapTagToAPI(tag));
8
+ export {
9
+ mapTagToAPI,
10
+ mapTagsToAPI
11
+ };
12
+ //# sourceMappingURL=tag.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/utils/mapper/tag.ts"],"sourcesContent":["import { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\nimport { Tag, TagAPI } from '@/types/tag.types';\n\n/**\n * Maps a tag to an API response.\n * @param tag - The tag to map.\n * @returns The tag mapped to an API response.\n */\nexport const mapTagToAPI = (tag: Tag): TagAPI => {\n const tagObject = ensureMongoDocumentToObject(tag);\n\n const { ...tagAPI } = tagObject;\n return tagAPI;\n};\n\n/**\n * Formats an array of tags for API response. Removes sensitive information.\n * @param tags - The array of tag objects to format.\n * @param user - The user object.\n * @param isTagAdmin - Whether the user is an admin of the tag.\n * @returns The formatted array of user objects.\n */\nexport const mapTagsToAPI = (tags: Tag[]): TagAPI[] =>\n tags.map((tag) => mapTagToAPI(tag));\n"],"mappings":"AAAA,SAAS,mCAAmC;AAQrC,MAAM,cAAc,CAAC,QAAqB;AAC/C,QAAM,YAAY,4BAA4B,GAAG;AAEjD,QAAM,EAAE,GAAG,OAAO,IAAI;AACtB,SAAO;AACT;AASO,MAAM,eAAe,CAAC,SAC3B,KAAK,IAAI,CAAC,QAAQ,YAAY,GAAG,CAAC;","names":[]}
@@ -1,8 +1,6 @@
1
+ import { ensureMongoDocumentToObject } from './../../utils/ensureMongoDocumentToObject.mjs';
1
2
  const mapUserToAPI = (user) => {
2
- let userObject = user;
3
- if (typeof user.toObject === "function") {
4
- userObject = user.toObject();
5
- }
3
+ const userObject = ensureMongoDocumentToObject(user);
6
4
  const { provider, session, createdAt, ...userAPI } = userObject;
7
5
  return { ...userAPI, role: "user" };
8
6
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/utils/mapper/user.ts"],"sourcesContent":["import { User, UserAPI, UserDocument } from '@/types/user.types';\n\n/**\n * Formats a user for API response. Removes sensitive information and adds role.\n * @param user - The user object to format.\n * @returns The formatted user object.\n */\nexport const mapUserToAPI = (user: User | UserAPI | UserDocument): UserAPI => {\n let userObject: User = user as User;\n\n // If the user is a mongoose document, convert it to an object\n if (typeof (user as UserDocument).toObject === 'function') {\n userObject = (user as UserDocument).toObject();\n }\n\n const { provider, session, createdAt, ...userAPI } = userObject;\n\n return { ...userAPI, role: 'user' };\n};\n\n/**\n * Formats an array of users for API response. Removes sensitive information and adds role.\n * @param users - The array of user objects to format.\n * @returns The formatted array of user objects.\n */\nexport const mapUsersToAPI = (users: User[]): UserAPI[] =>\n users.map(mapUserToAPI);\n"],"mappings":"AAOO,MAAM,eAAe,CAAC,SAAiD;AAC5E,MAAI,aAAmB;AAGvB,MAAI,OAAQ,KAAsB,aAAa,YAAY;AACzD,iBAAc,KAAsB,SAAS;AAAA,EAC/C;AAEA,QAAM,EAAE,UAAU,SAAS,WAAW,GAAG,QAAQ,IAAI;AAErD,SAAO,EAAE,GAAG,SAAS,MAAM,OAAO;AACpC;AAOO,MAAM,gBAAgB,CAAC,UAC5B,MAAM,IAAI,YAAY;","names":[]}
1
+ {"version":3,"sources":["../../../../src/utils/mapper/user.ts"],"sourcesContent":["import { ensureMongoDocumentToObject } from '@utils/ensureMongoDocumentToObject';\nimport { User, UserAPI, UserDocument } from '@/types/user.types';\n\n/**\n * Formats a user for API response. Removes sensitive information and adds role.\n * @param user - The user object to format.\n * @returns The formatted user object.\n */\nexport const mapUserToAPI = (user: User | UserAPI): UserAPI => {\n const userObject = ensureMongoDocumentToObject(user);\n\n const { provider, session, createdAt, ...userAPI } =\n userObject as UserDocument;\n\n return { ...userAPI, role: 'user' };\n};\n\n/**\n * Formats an array of users for API response. Removes sensitive information and adds role.\n * @param users - The array of user objects to format.\n * @returns The formatted array of user objects.\n */\nexport const mapUsersToAPI = (users: User[]): UserAPI[] =>\n users.map(mapUserToAPI);\n"],"mappings":"AAAA,SAAS,mCAAmC;AAQrC,MAAM,eAAe,CAAC,SAAkC;AAC7D,QAAM,aAAa,4BAA4B,IAAI;AAEnD,QAAM,EAAE,UAAU,SAAS,WAAW,GAAG,QAAQ,IAC/C;AAEF,SAAO,EAAE,GAAG,SAAS,MAAM,OAAO;AACpC;AAOO,MAAM,gBAAgB,CAAC,UAC5B,MAAM,IAAI,YAAY;","names":[]}
@@ -0,0 +1,11 @@
1
+ const removeObjectKeys = (obj, keys) => {
2
+ const result = { ...obj };
3
+ for (const key of keys) {
4
+ delete result[key];
5
+ }
6
+ return result;
7
+ };
8
+ export {
9
+ removeObjectKeys
10
+ };
11
+ //# sourceMappingURL=removeObjectKeys.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/utils/removeObjectKeys.ts"],"sourcesContent":["export const removeObjectKeys = <\n T extends Record<string, unknown>,\n K extends (keyof T)[],\n>(\n obj: T,\n keys: K\n): Omit<T, K[number]> => {\n const result = { ...obj };\n for (const key of keys) {\n delete result[key];\n }\n\n return result;\n};\n"],"mappings":"AAAO,MAAM,mBAAmB,CAI9B,KACA,SACuB;AACvB,QAAM,SAAS,EAAE,GAAG,IAAI;AACxB,aAAW,OAAO,MAAM;AACtB,WAAO,OAAO,GAAG;AAAA,EACnB;AAEA,SAAO;AACT;","names":[]}
@@ -13,7 +13,6 @@ const MEMBERS_MIN_LENGTH = 1;
13
13
  const validateProject = async (project, fieldsToCheck = defaultFieldsToCheck) => {
14
14
  const errors = {};
15
15
  const fieldsToValidate = new Set(fieldsToCheck);
16
- const organization = await getOrganizationById(project.organizationId ?? "");
17
16
  for (const field of fieldsToValidate) {
18
17
  const value = project[field];
19
18
  errors[field] = [];
@@ -29,6 +28,7 @@ const validateProject = async (project, fieldsToCheck = defaultFieldsToCheck) =>
29
28
  }
30
29
  }
31
30
  if (field === "organizationId") {
31
+ const organization = await getOrganizationById(field);
32
32
  const organizationErrors = [];
33
33
  if (typeof value !== "string") {
34
34
  organizationErrors.push("Organization id must be a string");
@@ -44,15 +44,22 @@ const validateProject = async (project, fieldsToCheck = defaultFieldsToCheck) =>
44
44
  }
45
45
  }
46
46
  if (field === "membersIds" || field === "adminsIds") {
47
- const membersErrors = validateArray(
48
- value,
49
- "Members",
50
- "string",
51
- (item) => (organization?.membersIds).includes(item),
52
- MEMBERS_MIN_LENGTH
53
- );
54
- if (membersErrors.length > 0) {
55
- errors[field] = membersErrors;
47
+ if (!project.organizationId) {
48
+ errors[field] = [
49
+ "Organization id is required to validate project members"
50
+ ];
51
+ } else {
52
+ const organization = await getOrganizationById(project.organizationId);
53
+ const membersErrors = validateArray(
54
+ value,
55
+ "Members",
56
+ "string",
57
+ (item) => (organization?.membersIds).includes(item),
58
+ MEMBERS_MIN_LENGTH
59
+ );
60
+ if (membersErrors.length > 0) {
61
+ errors[field] = membersErrors;
62
+ }
56
63
  }
57
64
  }
58
65
  if (errors[field].length === 0) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/utils/validation/validateProject.ts"],"sourcesContent":["/* eslint-disable sonarjs/cognitive-complexity */\nimport { getOrganizationById } from '@services/organization.service';\nimport { validateArray } from './validateArray';\nimport { validateString } from './validateString';\nimport type { Project } from '@/types/project.types';\n\nexport type ProjectFields = (keyof Project)[];\n\nconst defaultFieldsToCheck: ProjectFields = [\n 'name',\n 'membersIds',\n 'adminsIds',\n 'organizationId',\n];\n\ntype FieldsToCheck = (typeof defaultFieldsToCheck)[number];\ntype ValidationErrors = Partial<\n Record<(typeof defaultFieldsToCheck)[number], string[]>\n>;\n\nexport const NAME_MIN_LENGTH = 4;\nexport const NAME_MAX_LENGTH = 100;\n\nexport const MEMBERS_MIN_LENGTH = 1;\n\n/**\n * Validates an project object.\n * @param project The project object to validate.\n * @returns An object containing the validation errors for each field.\n */\nexport const validateProject = async (\n project: Partial<Project>,\n fieldsToCheck = defaultFieldsToCheck\n): Promise<ValidationErrors> => {\n const errors: ValidationErrors = {};\n\n // Define the fields to validate\n const fieldsToValidate = new Set<FieldsToCheck>(fieldsToCheck);\n\n const organization = await getOrganizationById(project.organizationId ?? '');\n\n // Validate each field\n for (const field of fieldsToValidate) {\n const value = project[field];\n\n // Initialize error array for the field\n errors[field] = [];\n\n // Check for name validity\n if (field === 'name') {\n const nameErrors = validateString(\n value,\n 'Name',\n NAME_MIN_LENGTH,\n NAME_MAX_LENGTH\n );\n\n if (nameErrors.length > 0) {\n errors[field] = nameErrors;\n }\n }\n\n if (field === 'organizationId') {\n const organizationErrors: string[] = [];\n\n if (typeof value !== 'string') {\n organizationErrors.push('Organization id must be a string');\n }\n\n if (!value) {\n organizationErrors.push('Organization id is required');\n }\n\n if (!organization) {\n organizationErrors.push('Organization not found');\n }\n\n if (organizationErrors.length > 0) {\n errors[field] = organizationErrors;\n }\n }\n\n if (field === 'membersIds' || field === 'adminsIds') {\n const membersErrors = validateArray<string>(\n value as unknown as string[],\n 'Members',\n 'string',\n (item) =>\n (organization?.membersIds as unknown as string[]).includes(item),\n MEMBERS_MIN_LENGTH\n );\n\n if (membersErrors.length > 0) {\n errors[field] = membersErrors;\n }\n }\n\n // Remove the error field if there are no errors\n if (errors[field].length === 0) {\n delete errors[field];\n }\n }\n\n return errors;\n};\n"],"mappings":"AACA,SAAS,2BAA2B;AACpC,SAAS,qBAAqB;AAC9B,SAAS,sBAAsB;AAK/B,MAAM,uBAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAOO,MAAM,kBAAkB;AACxB,MAAM,kBAAkB;AAExB,MAAM,qBAAqB;AAO3B,MAAM,kBAAkB,OAC7B,SACA,gBAAgB,yBACc;AAC9B,QAAM,SAA2B,CAAC;AAGlC,QAAM,mBAAmB,IAAI,IAAmB,aAAa;AAE7D,QAAM,eAAe,MAAM,oBAAoB,QAAQ,kBAAkB,EAAE;AAG3E,aAAW,SAAS,kBAAkB;AACpC,UAAM,QAAQ,QAAQ,KAAK;AAG3B,WAAO,KAAK,IAAI,CAAC;AAGjB,QAAI,UAAU,QAAQ;AACpB,YAAM,aAAa;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,UAAI,WAAW,SAAS,GAAG;AACzB,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,UAAU,kBAAkB;AAC9B,YAAM,qBAA+B,CAAC;AAEtC,UAAI,OAAO,UAAU,UAAU;AAC7B,2BAAmB,KAAK,kCAAkC;AAAA,MAC5D;AAEA,UAAI,CAAC,OAAO;AACV,2BAAmB,KAAK,6BAA6B;AAAA,MACvD;AAEA,UAAI,CAAC,cAAc;AACjB,2BAAmB,KAAK,wBAAwB;AAAA,MAClD;AAEA,UAAI,mBAAmB,SAAS,GAAG;AACjC,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,UAAU,gBAAgB,UAAU,aAAa;AACnD,YAAM,gBAAgB;AAAA,QACpB;AAAA,QACA;AAAA,QACA;AAAA,QACA,CAAC,UACE,cAAc,YAAmC,SAAS,IAAI;AAAA,QACjE;AAAA,MACF;AAEA,UAAI,cAAc,SAAS,GAAG;AAC5B,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAGA,QAAI,OAAO,KAAK,EAAE,WAAW,GAAG;AAC9B,aAAO,OAAO,KAAK;AAAA,IACrB;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../src/utils/validation/validateProject.ts"],"sourcesContent":["import { getOrganizationById } from '@services/organization.service';\nimport { validateArray } from './validateArray';\nimport { validateString } from './validateString';\nimport type { Project } from '@/types/project.types';\n\nexport type ProjectFields = (keyof Project)[];\n\nconst defaultFieldsToCheck: ProjectFields = [\n 'name',\n 'membersIds',\n 'adminsIds',\n 'organizationId',\n];\n\ntype FieldsToCheck = (typeof defaultFieldsToCheck)[number];\ntype ValidationErrors = Partial<\n Record<(typeof defaultFieldsToCheck)[number], string[]>\n>;\n\nexport const NAME_MIN_LENGTH = 4;\nexport const NAME_MAX_LENGTH = 100;\n\nexport const MEMBERS_MIN_LENGTH = 1;\n\n/**\n * Validates an project object.\n * @param project The project object to validate.\n * @returns An object containing the validation errors for each field.\n */\nexport const validateProject = async (\n project: Partial<Project>,\n fieldsToCheck = defaultFieldsToCheck\n): Promise<ValidationErrors> => {\n const errors: ValidationErrors = {};\n\n // Define the fields to validate\n const fieldsToValidate = new Set<FieldsToCheck>(fieldsToCheck);\n\n // Validate each field\n for (const field of fieldsToValidate) {\n const value = project[field];\n\n // Initialize error array for the field\n errors[field] = [];\n\n // Check for name validity\n if (field === 'name') {\n const nameErrors = validateString(\n value,\n 'Name',\n NAME_MIN_LENGTH,\n NAME_MAX_LENGTH\n );\n\n if (nameErrors.length > 0) {\n errors[field] = nameErrors;\n }\n }\n\n if (field === 'organizationId') {\n const organization = await getOrganizationById(field);\n const organizationErrors: string[] = [];\n\n if (typeof value !== 'string') {\n organizationErrors.push('Organization id must be a string');\n }\n\n if (!value) {\n organizationErrors.push('Organization id is required');\n }\n\n if (!organization) {\n organizationErrors.push('Organization not found');\n }\n\n if (organizationErrors.length > 0) {\n errors[field] = organizationErrors;\n }\n }\n\n if (field === 'membersIds' || field === 'adminsIds') {\n if (!project.organizationId) {\n errors[field] = [\n 'Organization id is required to validate project members',\n ];\n } else {\n const organization = await getOrganizationById(project.organizationId);\n const membersErrors = validateArray<string>(\n value as unknown as string[],\n 'Members',\n 'string',\n (item) =>\n (organization?.membersIds as unknown as string[]).includes(item),\n MEMBERS_MIN_LENGTH\n );\n\n if (membersErrors.length > 0) {\n errors[field] = membersErrors;\n }\n }\n }\n\n // Remove the error field if there are no errors\n if (errors[field].length === 0) {\n delete errors[field];\n }\n }\n\n return errors;\n};\n"],"mappings":"AAAA,SAAS,2BAA2B;AACpC,SAAS,qBAAqB;AAC9B,SAAS,sBAAsB;AAK/B,MAAM,uBAAsC;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAOO,MAAM,kBAAkB;AACxB,MAAM,kBAAkB;AAExB,MAAM,qBAAqB;AAO3B,MAAM,kBAAkB,OAC7B,SACA,gBAAgB,yBACc;AAC9B,QAAM,SAA2B,CAAC;AAGlC,QAAM,mBAAmB,IAAI,IAAmB,aAAa;AAG7D,aAAW,SAAS,kBAAkB;AACpC,UAAM,QAAQ,QAAQ,KAAK;AAG3B,WAAO,KAAK,IAAI,CAAC;AAGjB,QAAI,UAAU,QAAQ;AACpB,YAAM,aAAa;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,UAAI,WAAW,SAAS,GAAG;AACzB,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,UAAU,kBAAkB;AAC9B,YAAM,eAAe,MAAM,oBAAoB,KAAK;AACpD,YAAM,qBAA+B,CAAC;AAEtC,UAAI,OAAO,UAAU,UAAU;AAC7B,2BAAmB,KAAK,kCAAkC;AAAA,MAC5D;AAEA,UAAI,CAAC,OAAO;AACV,2BAAmB,KAAK,6BAA6B;AAAA,MACvD;AAEA,UAAI,CAAC,cAAc;AACjB,2BAAmB,KAAK,wBAAwB;AAAA,MAClD;AAEA,UAAI,mBAAmB,SAAS,GAAG;AACjC,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,UAAU,gBAAgB,UAAU,aAAa;AACnD,UAAI,CAAC,QAAQ,gBAAgB;AAC3B,eAAO,KAAK,IAAI;AAAA,UACd;AAAA,QACF;AAAA,MACF,OAAO;AACL,cAAM,eAAe,MAAM,oBAAoB,QAAQ,cAAc;AACrE,cAAM,gBAAgB;AAAA,UACpB;AAAA,UACA;AAAA,UACA;AAAA,UACA,CAAC,UACE,cAAc,YAAmC,SAAS,IAAI;AAAA,UACjE;AAAA,QACF;AAEA,YAAI,cAAc,SAAS,GAAG;AAC5B,iBAAO,KAAK,IAAI;AAAA,QAClB;AAAA,MACF;AAAA,IACF;AAGA,QAAI,OAAO,KAAK,EAAE,WAAW,GAAG;AAC9B,aAAO,OAAO,KAAK;AAAA,IACrB;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
@@ -0,0 +1,65 @@
1
+ import { getOrganizationById } from './../../services/organization.service.mjs';
2
+ import { validateString } from './validateString.mjs';
3
+ const defaultFieldsToCheck = ["name"];
4
+ const KEY_MIN_LENGTH = 4;
5
+ const KEY_MAX_LENGTH = 20;
6
+ const NAME_MIN_LENGTH = 4;
7
+ const NAME_MAX_LENGTH = 50;
8
+ const validateTag = async (tag, fieldsToCheck = defaultFieldsToCheck) => {
9
+ const errors = {};
10
+ const fieldsToValidate = new Set(fieldsToCheck);
11
+ for (const field of fieldsToValidate) {
12
+ const value = tag[field];
13
+ errors[field] = [];
14
+ if (field === "key") {
15
+ const nameErrors = validateString(
16
+ value,
17
+ "Key",
18
+ KEY_MIN_LENGTH,
19
+ KEY_MAX_LENGTH
20
+ );
21
+ if (nameErrors.length > 0) {
22
+ errors[field] = nameErrors;
23
+ }
24
+ }
25
+ if (field === "name") {
26
+ const nameErrors = validateString(
27
+ value,
28
+ "Name",
29
+ NAME_MIN_LENGTH,
30
+ NAME_MAX_LENGTH
31
+ );
32
+ if (nameErrors.length > 0) {
33
+ errors[field] = nameErrors;
34
+ }
35
+ }
36
+ if (field === "organizationId") {
37
+ const organizationErrors = [];
38
+ if (typeof value !== "string") {
39
+ organizationErrors.push("Organization id must be a string");
40
+ }
41
+ if (!value) {
42
+ organizationErrors.push("Organization id is required");
43
+ }
44
+ const organization = await getOrganizationById(field);
45
+ if (!organization) {
46
+ organizationErrors.push("Organization not found");
47
+ }
48
+ if (organizationErrors.length > 0) {
49
+ errors[field] = organizationErrors;
50
+ }
51
+ }
52
+ if (errors[field].length === 0) {
53
+ delete errors[field];
54
+ }
55
+ }
56
+ return errors;
57
+ };
58
+ export {
59
+ KEY_MAX_LENGTH,
60
+ KEY_MIN_LENGTH,
61
+ NAME_MAX_LENGTH,
62
+ NAME_MIN_LENGTH,
63
+ validateTag
64
+ };
65
+ //# sourceMappingURL=validateTag.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/utils/validation/validateTag.ts"],"sourcesContent":["import { getOrganizationById } from '@services/organization.service';\nimport { validateString } from './validateString';\nimport type { Tag } from '@/types/tag.types';\n\nexport type TagFields = (keyof Tag)[];\n\nconst defaultFieldsToCheck: TagFields = ['name'];\n\ntype FieldsToCheck = (typeof defaultFieldsToCheck)[number];\ntype ValidationErrors = Partial<\n Record<(typeof defaultFieldsToCheck)[number], string[]>\n>;\n\nexport const KEY_MIN_LENGTH = 4;\nexport const KEY_MAX_LENGTH = 20;\n\nexport const NAME_MIN_LENGTH = 4;\nexport const NAME_MAX_LENGTH = 50;\n\n/**\n * Validates an tag object.\n * @param tag The tag object to validate.\n * @returns An object containing the validation errors for each field.\n */\nexport const validateTag = async (\n tag: Partial<Tag>,\n fieldsToCheck = defaultFieldsToCheck\n): Promise<ValidationErrors> => {\n const errors: ValidationErrors = {};\n\n // Define the fields to validate\n const fieldsToValidate = new Set<FieldsToCheck>(fieldsToCheck);\n\n // Validate each field\n for (const field of fieldsToValidate) {\n const value = tag[field];\n\n // Initialize error array for the field\n errors[field] = [];\n\n // Check for name validity\n if (field === 'key') {\n const nameErrors = validateString(\n value,\n 'Key',\n KEY_MIN_LENGTH,\n KEY_MAX_LENGTH\n );\n\n if (nameErrors.length > 0) {\n errors[field] = nameErrors;\n }\n }\n\n // Check for name validity\n if (field === 'name') {\n const nameErrors = validateString(\n value,\n 'Name',\n NAME_MIN_LENGTH,\n NAME_MAX_LENGTH\n );\n\n if (nameErrors.length > 0) {\n errors[field] = nameErrors;\n }\n }\n\n if (field === 'organizationId') {\n const organizationErrors: string[] = [];\n\n if (typeof value !== 'string') {\n organizationErrors.push('Organization id must be a string');\n }\n\n if (!value) {\n organizationErrors.push('Organization id is required');\n }\n\n const organization = await getOrganizationById(field);\n if (!organization) {\n organizationErrors.push('Organization not found');\n }\n\n if (organizationErrors.length > 0) {\n errors[field] = organizationErrors;\n }\n }\n\n // Remove the error field if there are no errors\n if (errors[field].length === 0) {\n delete errors[field];\n }\n }\n\n return errors;\n};\n"],"mappings":"AAAA,SAAS,2BAA2B;AACpC,SAAS,sBAAsB;AAK/B,MAAM,uBAAkC,CAAC,MAAM;AAOxC,MAAM,iBAAiB;AACvB,MAAM,iBAAiB;AAEvB,MAAM,kBAAkB;AACxB,MAAM,kBAAkB;AAOxB,MAAM,cAAc,OACzB,KACA,gBAAgB,yBACc;AAC9B,QAAM,SAA2B,CAAC;AAGlC,QAAM,mBAAmB,IAAI,IAAmB,aAAa;AAG7D,aAAW,SAAS,kBAAkB;AACpC,UAAM,QAAQ,IAAI,KAAK;AAGvB,WAAO,KAAK,IAAI,CAAC;AAGjB,QAAI,UAAU,OAAO;AACnB,YAAM,aAAa;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,UAAI,WAAW,SAAS,GAAG;AACzB,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAGA,QAAI,UAAU,QAAQ;AACpB,YAAM,aAAa;AAAA,QACjB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,UAAI,WAAW,SAAS,GAAG;AACzB,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAEA,QAAI,UAAU,kBAAkB;AAC9B,YAAM,qBAA+B,CAAC;AAEtC,UAAI,OAAO,UAAU,UAAU;AAC7B,2BAAmB,KAAK,kCAAkC;AAAA,MAC5D;AAEA,UAAI,CAAC,OAAO;AACV,2BAAmB,KAAK,6BAA6B;AAAA,MACvD;AAEA,YAAM,eAAe,MAAM,oBAAoB,KAAK;AACpD,UAAI,CAAC,cAAc;AACjB,2BAAmB,KAAK,wBAAwB;AAAA,MAClD;AAEA,UAAI,mBAAmB,SAAS,GAAG;AACjC,eAAO,KAAK,IAAI;AAAA,MAClB;AAAA,IACF;AAGA,QAAI,OAAO,KAAK,EAAE,WAAW,GAAG;AAC9B,aAAO,OAAO,KAAK;AAAA,IACrB;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
@@ -1,9 +1,12 @@
1
+ import { type KeyPath } from '@intlayer/core';
1
2
  import type { ResponseWithInformation } from '../middlewares/sessionAuth.middleware';
2
- import * as audit from '../utils/audit';
3
+ import * as askDocQuestionUtil from '../utils/AI/askDocQuestion';
4
+ import * as auditContentDeclarationUtil from '../utils/auditDictionary';
3
5
  import { type ResponseData } from '../utils/responseData';
4
6
  import type { NextFunction, Request } from 'express';
5
7
  import { Locales } from 'intlayer';
6
- export type AuditFileBody = {
8
+ import type { Tag } from '../types/tag.types';
9
+ export type AuditContentDeclarationBody = {
7
10
  openAiApiKey?: string;
8
11
  customPrompt?: string;
9
12
  locales: Locales[];
@@ -11,10 +14,54 @@ export type AuditFileBody = {
11
14
  fileContent: string;
12
15
  filePath?: string;
13
16
  model?: string;
17
+ tagsKeys?: string[];
14
18
  };
15
- export type AuditFileResult = ResponseData<audit.AuditFileResultData>;
19
+ export type AuditContentDeclarationResult = ResponseData<auditContentDeclarationUtil.AuditFileResultData>;
16
20
  /**
17
21
  * Retrieves a list of dictionaries based on filters and pagination.
18
22
  */
19
- export declare const auditFile: (req: Request<AuditFileBody>, res: ResponseWithInformation<AuditFileResult>, _next: NextFunction) => Promise<void>;
23
+ export declare const auditContentDeclaration: (req: Request<AuditContentDeclarationBody>, res: ResponseWithInformation<AuditContentDeclarationResult>, _next: NextFunction) => Promise<void>;
24
+ export type AuditContentDeclarationFieldBody = {
25
+ openAiApiKey?: string;
26
+ customPrompt?: string;
27
+ locales: Locales[];
28
+ fileContent: string;
29
+ filePath?: string;
30
+ model?: string;
31
+ tagsKeys?: string[];
32
+ keyPath: KeyPath[];
33
+ };
34
+ export type AuditContentDeclarationFieldResult = ResponseData<auditContentDeclarationUtil.AuditFileResultData>;
35
+ /**
36
+ * Retrieves a list of dictionaries based on filters and pagination.
37
+ */
38
+ export declare const auditContentDeclarationField: (req: Request<AuditContentDeclarationFieldBody>, res: ResponseWithInformation<AuditContentDeclarationFieldResult>, _next: NextFunction) => Promise<void>;
39
+ export type AuditContentDeclarationMetadataBody = {
40
+ openAiApiKey?: string;
41
+ customPrompt?: string;
42
+ fileContent: string;
43
+ model?: string;
44
+ };
45
+ export type AuditContentDeclarationMetadataResult = ResponseData<auditContentDeclarationUtil.AuditFileResultData>;
46
+ /**
47
+ * Retrieves a list of dictionaries based on filters and pagination.
48
+ */
49
+ export declare const auditContentDeclarationMetadata: (req: Request<AuditContentDeclarationMetadataBody>, res: ResponseWithInformation<AuditContentDeclarationMetadataResult>, _next: NextFunction) => Promise<void>;
50
+ export type AuditTagBody = {
51
+ openAiApiKey?: string;
52
+ customPrompt?: string;
53
+ filePath?: string;
54
+ model?: string;
55
+ tag: Tag;
56
+ };
57
+ export type AuditTagResult = ResponseData<auditContentDeclarationUtil.AuditFileResultData>;
58
+ /**
59
+ * Retrieves a list of dictionaries based on filters and pagination.
60
+ */
61
+ export declare const auditTag: (req: Request<undefined, undefined, AuditTagBody>, res: ResponseWithInformation<AuditTagResult>, _next: NextFunction) => Promise<void>;
62
+ export type AskDocQuestionBody = {
63
+ messages: askDocQuestionUtil.ChatCompletionRequestMessage[];
64
+ };
65
+ export type AskDocQuestionResult = ResponseData<askDocQuestionUtil.AskDocQuestionResult>;
66
+ export declare const askDocQuestion: (req: Request<undefined, undefined, AskDocQuestionBody>, res: ResponseWithInformation<AskDocQuestionResult>) => Promise<void>;
20
67
  //# sourceMappingURL=ai.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/ai.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AACnF,OAAO,KAAK,KAAK,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,MAAM,MAAM,aAAa,GAAG;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,SAAS,QACf,OAAO,CAAC,aAAa,CAAC,OACtB,uBAAuB,CAAC,eAAe,CAAC,SACtC,YAAY,KAClB,OAAO,CAAC,IAAI,CAiDd,CAAC"}
1
+ {"version":3,"file":"ai.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/ai.controller.ts"],"names":[],"mappings":"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"}
@@ -20,13 +20,13 @@ export type GetDictionaryParams = {
20
20
  dictionaryKey: string;
21
21
  };
22
22
  export type GetDictionaryQuery = {
23
- version?: number;
23
+ version?: string;
24
24
  };
25
25
  export type GetDictionaryResult = ResponseData<DictionaryAPI>;
26
26
  /**
27
27
  * Retrieves a list of dictionaries based on filters and pagination.
28
28
  */
29
- export declare const getDictionaryByKey: (req: Request<GetDictionaryParams>, res: ResponseWithInformation<GetDictionaryResult>, _next: NextFunction) => Promise<void>;
29
+ export declare const getDictionaryByKey: (req: Request<GetDictionaryParams, any, any, GetDictionaryQuery>, res: ResponseWithInformation<GetDictionaryResult>, _next: NextFunction) => Promise<void>;
30
30
  export type AddDictionaryBody = DictionaryCreationData;
31
31
  export type AddDictionaryResult = ResponseData<DictionaryAPI>;
32
32
  /**
@@ -52,12 +52,15 @@ export type PushDictionariesResult = ResponseData<PushDictionariesResultData>;
52
52
  * @returns Response containing the created dictionary.
53
53
  */
54
54
  export declare const pushDictionaries: (req: Request<any, any, PushDictionariesBody>, res: ResponseWithInformation<PushDictionariesResult>, _next: NextFunction) => Promise<void>;
55
+ export type UpdateDictionaryParam = {
56
+ dictionaryId: string;
57
+ };
55
58
  export type UpdateDictionaryBody = Partial<Dictionary>;
56
59
  export type UpdateDictionaryResult = ResponseData<DictionaryAPI>;
57
60
  /**
58
61
  * Updates an existing dictionary in the database.
59
62
  */
60
- export declare const updateDictionary: (req: Request<any, any, UpdateDictionaryBody>, res: ResponseWithInformation<UpdateDictionaryResult>, _next: NextFunction) => Promise<void>;
63
+ export declare const updateDictionary: (req: Request<UpdateDictionaryParam, any, UpdateDictionaryBody>, res: ResponseWithInformation<UpdateDictionaryResult>, _next: NextFunction) => Promise<void>;
61
64
  export type DeleteDictionaryParam = {
62
65
  dictionaryId: string;
63
66
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dictionary.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/dictionary.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EACL,KAAK,uBAAuB,EAE7B,MAAM,+DAA+D,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AAExG,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAEvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,KAAK,EACV,UAAU,EACV,aAAa,EACb,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,qBAAqB,GAC/B,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;AAChD,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,eAAe,QACrB,OAAO,CAAC,qBAAqB,CAAC,OAC9B,uBAAuB,CAAC,qBAAqB,CAAC,SAC5C,YAAY,KAClB,OAAO,CAAC,IAAI,CA4Cd,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,mBAAmB,SACxB,OAAO,OACR,uBAAuB,CAAC,yBAAyB,CAAC,SAChD,YAAY,kBA4BpB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5D,MAAM,MAAM,kBAAkB,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACtD,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,kBAAkB,QACxB,OAAO,CAAC,mBAAmB,CAAC,OAC5B,uBAAuB,CAAC,mBAAmB,CAAC,SAC1C,YAAY,KAClB,OAAO,CAAC,IAAI,CA4Cd,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AACvD,MAAM,MAAM,mBAAmB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,aAAa,QACnB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,OACpC,uBAAuB,CAAC,mBAAmB,CAAC,SAC1C,YAAY,KAClB,OAAO,CAAC,IAAI,CAgEd,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAAE,YAAY,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC;AACvE,KAAK,0BAA0B,GAAG;IAChC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACpD,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC,0BAA0B,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QACtB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,OACvC,uBAAuB,CAAC,sBAAsB,CAAC,SAC7C,YAAY,KAClB,OAAO,CAAC,IAAI,CAuId,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACvD,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,gBAAgB,QACtB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,OACvC,uBAAuB,CAAC,sBAAsB,CAAC,SAC7C,YAAY,KAClB,OAAO,CAAC,IAAI,CAyDd,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7D,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,gBAAgB,QACtB,OAAO,CAAC,qBAAqB,CAAC,OAC9B,uBAAuB,CAAC,sBAAsB,CAAC,SAC7C,YAAY,KAClB,OAAO,CAAC,IAAI,CAiEd,CAAC"}
1
+ {"version":3,"file":"dictionary.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/dictionary.controller.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { type ProjectFiltersParams } from '../utils/filtersAndPagination/getProj
4
4
  import { type ResponseData, type PaginatedResponse } from '../utils/responseData';
5
5
  import type { NextFunction, Request } from 'express';
6
6
  import type { ObjectId } from 'mongoose';
7
- import type { Project, ProjectAPI, ProjectCreationData, ProjectData } from '../types/project.types';
7
+ import type { Project, ProjectAPI, ProjectCreationData } from '../types/project.types';
8
8
  export type GetProjectsParams = FiltersAndPagination<ProjectFiltersParams>;
9
9
  export type GetProjectsResult = PaginatedResponse<ProjectAPI>;
10
10
  /**
@@ -17,9 +17,7 @@ export type AddProjectResult = ResponseData<ProjectAPI>;
17
17
  * Adds a new project to the database.
18
18
  */
19
19
  export declare const addProject: (req: Request<any, any, AddProjectBody>, res: ResponseWithInformation<AddProjectResult>, _next: NextFunction) => Promise<void>;
20
- export type UpdateProjectBody = Partial<ProjectData> & {
21
- _id: string;
22
- };
20
+ export type UpdateProjectBody = Partial<Project>;
23
21
  export type UpdateProjectResult = ResponseData<ProjectAPI>;
24
22
  /**
25
23
  * Updates an existing project in the database.
@@ -1 +1 @@
1
- {"version":3,"file":"project.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/project.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/project.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { ResponseWithInformation } from '../middlewares/sessionAuth.middleware';
2
+ import type { FiltersAndPagination } from '../utils/filtersAndPagination/getFiltersAndPaginationFromBody';
3
+ import { type TagFiltersParams } from '../utils/filtersAndPagination/getTagFiltersAndPagination';
4
+ import { type ResponseData, type PaginatedResponse } from '../utils/responseData';
5
+ import type { NextFunction, Request } from 'express';
6
+ import type { Tag, TagAPI, TagCreationData, TagData } from '../types/tag.types';
7
+ export type GetTagsParams = FiltersAndPagination<TagFiltersParams>;
8
+ export type GetTagsResult = PaginatedResponse<TagAPI>;
9
+ /**
10
+ * Retrieves a list of tags based on filters and pagination.
11
+ */
12
+ export declare const getTags: (req: Request<GetTagsParams>, res: ResponseWithInformation<GetTagsResult>, _next: NextFunction) => Promise<void>;
13
+ export type AddTagBody = TagCreationData;
14
+ export type AddTagResult = ResponseData<TagAPI>;
15
+ /**
16
+ * Adds a new tag to the database.
17
+ */
18
+ export declare const addTag: (req: Request<any, any, AddTagBody>, res: ResponseWithInformation<AddTagResult>, _next: NextFunction) => Promise<void>;
19
+ export type UpdateTagParams = {
20
+ tagId: string | Tag['_id'];
21
+ };
22
+ export type UpdateTagBody = Partial<TagData>;
23
+ export type UpdateTagResult = ResponseData<TagAPI>;
24
+ /**
25
+ * Updates an existing tag in the database.
26
+ */
27
+ export declare const updateTag: (req: Request<UpdateTagParams, any, UpdateTagBody>, res: ResponseWithInformation<UpdateTagResult>, _next: NextFunction) => Promise<void>;
28
+ export type DeleteTagParams = {
29
+ tagId: string | Tag['_id'];
30
+ };
31
+ export type DeleteTagResult = ResponseData<TagAPI>;
32
+ /**
33
+ * Deletes a tag from the database by its ID.
34
+ * @param req - Express request object.
35
+ * @param res - Express response object.
36
+ * @returns Response confirming the deletion.
37
+ */
38
+ export declare const deleteTag: (req: Request<DeleteTagParams>, res: ResponseWithInformation<DeleteTagResult>, _next: NextFunction) => Promise<void>;
39
+ //# sourceMappingURL=tag.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/tag.controller.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6DAA6D,CAAC;AACxG,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,wDAAwD,CAAC;AAEhE,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EAEvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE/E,MAAM,MAAM,aAAa,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;AACnE,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,OAAO,QACb,OAAO,CAAC,aAAa,CAAC,OACtB,uBAAuB,CAAC,aAAa,CAAC,SACpC,YAAY,KAClB,OAAO,CAAC,IAAI,CAwCd,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,eAAe,CAAC;AACzC,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,MAAM,QACZ,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,OAC7B,uBAAuB,CAAC,YAAY,CAAC,SACnC,YAAY,KAClB,OAAO,CAAC,IAAI,CAiEd,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC;AAC7D,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC7C,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,SAAS,QACf,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,aAAa,CAAC,OAC5C,uBAAuB,CAAC,eAAe,CAAC,SACtC,YAAY,KAClB,OAAO,CAAC,IAAI,CAsDd,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC;AAC7D,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,SAAS,QACf,OAAO,CAAC,eAAe,CAAC,OACxB,uBAAuB,CAAC,eAAe,CAAC,SACtC,YAAY,KAClB,OAAO,CAAC,IAAI,CA6Dd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/user.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/user.controller.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,13 @@ export type * from './controllers/user.controller';
12
12
  export type * from './controllers/dictionary.controller';
13
13
  export type * from './controllers/stripe.controller';
14
14
  export type * from './controllers/ai.controller';
15
+ export type * from './controllers/tag.controller';
15
16
  export type * from './types/organization.types';
16
17
  export type * from './types/project.types';
17
18
  export type * from './types/user.types';
18
19
  export type * from './types/dictionary.types';
19
20
  export type * from './types/plan.types';
21
+ export type * from './types/tag.types';
20
22
  export * from './utils/cookies';
21
23
  export * from './utils/httpStatusCodes';
22
24
  //# sourceMappingURL=export.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAG/D,mBAAmB,qCAAqC,CAAC;AACzD,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,sCAAsC,CAAC;AAC1D,mBAAmB,iCAAiC,CAAC;AACrD,mBAAmB,0CAA0C,CAAC;AAC9D,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,oCAAoC,CAAC;AACxD,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,4BAA4B,CAAC;AAGhD,mBAAmB,4BAA4B,CAAC;AAChD,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,oBAAoB,CAAC;AAGxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAG/D,mBAAmB,qCAAqC,CAAC;AACzD,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,sCAAsC,CAAC;AAC1D,mBAAmB,iCAAiC,CAAC;AACrD,mBAAmB,0CAA0C,CAAC;AAC9D,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,oCAAoC,CAAC;AACxD,mBAAmB,gCAAgC,CAAC;AACpD,mBAAmB,4BAA4B,CAAC;AAChD,mBAAmB,6BAA6B,CAAC;AAGjD,mBAAmB,4BAA4B,CAAC;AAChD,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,mBAAmB,CAAC;AAGvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAOA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AA6ChD,QAAA,MAAM,GAAG,EAAE,OAAmB,CAAC;AAiI/B,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAOA,OAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AA8ChD,QAAA,MAAM,GAAG,EAAE,OAAmB,CAAC;AAkI/B,eAAe,GAAG,CAAC"}
@@ -3,6 +3,7 @@ export declare const DictionaryModel: import("mongoose").Model<Dictionary, {}, {
3
3
  _id: import("mongoose").ObjectId;
4
4
  createdAt: number;
5
5
  updatedAt: number;
6
+ availableVersions?: string[];
6
7
  } & Required<{
7
8
  _id: import("mongoose").Schema.Types.ObjectId;
8
9
  }> & {
@@ -1 +1 @@
1
- {"version":3,"file":"dictionary.model.d.ts","sourceRoot":"","sources":["../../../src/models/dictionary.model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,eAAO,MAAM,eAAe;;;;;;;;OAG3B,CAAC"}
1
+ {"version":3,"file":"dictionary.model.d.ts","sourceRoot":"","sources":["../../../src/models/dictionary.model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,eAAO,MAAM,eAAe;;;;;;;;;OAG3B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TagModelType } from '../types/tag.types';
2
+ export declare const TagModel: TagModelType;
3
+ //# sourceMappingURL=tag.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag.model.d.ts","sourceRoot":"","sources":["../../../src/models/tag.model.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAO,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE3D,eAAO,MAAM,QAAQ,cAA6C,CAAC"}
@@ -1,7 +1,27 @@
1
1
  import { Router } from 'express';
2
2
  export declare const aiRouter: Router;
3
3
  export declare const aiRoutes: {
4
- auditFile: {
4
+ auditContentDeclaration: {
5
+ urlModel: string;
6
+ url: string;
7
+ method: "POST";
8
+ };
9
+ auditContentDeclarationField: {
10
+ urlModel: string;
11
+ url: string;
12
+ method: "POST";
13
+ };
14
+ auditContentDeclarationMetadata: {
15
+ urlModel: string;
16
+ url: string;
17
+ method: "POST";
18
+ };
19
+ auditTag: {
20
+ urlModel: string;
21
+ url: string;
22
+ method: "POST";
23
+ };
24
+ ask: {
5
25
  urlModel: string;
6
26
  url: string;
7
27
  method: "POST";
@@ -1 +1 @@
1
- {"version":3,"file":"ai.routes.d.ts","sourceRoot":"","sources":["../../../src/routes/ai.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,eAAO,MAAM,QAAQ,EAAE,MAAiB,CAAC;AAIzC,eAAO,MAAM,QAAQ;;;;;;CAMH,CAAC"}
1
+ {"version":3,"file":"ai.routes.d.ts","sourceRoot":"","sources":["../../../src/routes/ai.routes.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,eAAO,MAAM,QAAQ,EAAE,MAAiB,CAAC;AAIzC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BH,CAAC"}
@@ -30,12 +30,16 @@ export declare const dictionaryRoutes: {
30
30
  };
31
31
  updateDictionary: {
32
32
  urlModel: string;
33
- url: string;
33
+ url: ({ dictionaryId }: {
34
+ dictionaryId: string;
35
+ }) => string;
34
36
  method: "PUT";
35
37
  };
36
38
  deleteDictionary: {
37
39
  urlModel: string;
38
- url: string;
40
+ url: ({ dictionaryId }: {
41
+ dictionaryId: string;
42
+ }) => string;
39
43
  method: "DELETE";
40
44
  };
41
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dictionary.routes.d.ts","sourceRoot":"","sources":["../../../src/routes/dictionary.routes.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,eAAO,MAAM,gBAAgB,EAAE,MAAiB,CAAC;AAIjD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;iCAaA;YAAE,aAAa,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;;;;;CAwBpC,CAAC"}
1
+ {"version":3,"file":"dictionary.routes.d.ts","sourceRoot":"","sources":["../../../src/routes/dictionary.routes.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGjC,eAAO,MAAM,gBAAgB,EAAE,MAAiB,CAAC;AAIjD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;iCAaA;YAAE,aAAa,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;gCAgB1B;YAAE,YAAY,EAAE,MAAM,CAAA;SAAE;;;;;gCAMxB;YAAE,YAAY,EAAE,MAAM,CAAA;SAAE;;;CAIlC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Router } from 'express';
2
+ export declare const tagRouter: Router;
3
+ export declare const tagRoutes: {
4
+ getTags: {
5
+ urlModel: string;
6
+ url: string;
7
+ method: "GET";
8
+ };
9
+ addTag: {
10
+ urlModel: string;
11
+ url: string;
12
+ method: "POST";
13
+ };
14
+ updateTag: {
15
+ urlModel: string;
16
+ url: ({ tagId }: {
17
+ tagId: string;
18
+ }) => string;
19
+ method: "PUT";
20
+ };
21
+ deleteTag: {
22
+ urlModel: string;
23
+ url: ({ tagId }: {
24
+ tagId: string;
25
+ }) => string;
26
+ method: "DELETE";
27
+ };
28
+ };
29
+ //# sourceMappingURL=tags.routes.d.ts.map