@owox/backend 0.35.0 → 0.36.0

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 (283) hide show
  1. package/dist/src/common/exceptions/concurrency-limit-exceeded.exception.d.ts +1 -1
  2. package/dist/src/common/exceptions/concurrency-limit-exceeded.exception.js +2 -2
  3. package/dist/src/common/markdown/markdown-parser.service.d.ts +2 -0
  4. package/dist/src/common/markdown/markdown-parser.service.js +15 -8
  5. package/dist/src/common/validators/max-byte-length.validator.d.ts +2 -0
  6. package/dist/src/common/validators/max-byte-length.validator.js +29 -0
  7. package/dist/src/config/env-validation.config.d.ts +12 -0
  8. package/dist/src/config/env-validation.config.js +7 -0
  9. package/dist/src/data-marts/ai-insights/agent/types.d.ts +6 -6
  10. package/dist/src/data-marts/calculated-fields/calculated-field-validator.service.js +22 -30
  11. package/dist/src/data-marts/calculated-fields/calculated-field.utils.d.ts +1 -0
  12. package/dist/src/data-marts/calculated-fields/calculated-field.utils.js +21 -0
  13. package/dist/src/data-marts/calculated-fields/formula-analyzer.d.ts +1 -0
  14. package/dist/src/data-marts/calculated-fields/formula-analyzer.js +2 -0
  15. package/dist/src/data-marts/calculated-fields/formula-violations.d.ts +7 -0
  16. package/dist/src/data-marts/calculated-fields/formula-violations.js +82 -1
  17. package/dist/src/data-marts/calculated-fields/join-grain.d.ts +32 -0
  18. package/dist/src/data-marts/calculated-fields/join-grain.js +107 -0
  19. package/dist/src/data-marts/calculated-fields/set-quantifier.d.ts +8 -0
  20. package/dist/src/data-marts/calculated-fields/set-quantifier.js +12 -0
  21. package/dist/src/data-marts/connector-types/connector-message/schemas/connector-message.schema.d.ts +66 -0
  22. package/dist/src/data-marts/connector-types/connector-message/schemas/connector-message.schema.js +13 -1
  23. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-credentials-update.schema.d.ts +3 -0
  24. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-credentials-update.schema.js +1 -0
  25. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-error.schema.d.ts +3 -0
  26. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-error.schema.js +1 -0
  27. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-log.schema.d.ts +12 -0
  28. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-log.schema.js +4 -0
  29. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-requested-date.schema.d.ts +3 -0
  30. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-requested-date.schema.js +1 -0
  31. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-state-update.schema.d.ts +16 -0
  32. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-state-update.schema.js +16 -0
  33. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-status.schema.d.ts +3 -0
  34. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-status.schema.js +1 -0
  35. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-warning.schema.d.ts +3 -0
  36. package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-warning.schema.js +1 -0
  37. package/dist/src/data-marts/connector-types/connector-message/services/connector-event.translator.d.ts +10 -0
  38. package/dist/src/data-marts/connector-types/connector-message/services/connector-event.translator.js +138 -0
  39. package/dist/src/data-marts/connector-types/connector-message/services/connector-message-parser.service.d.ts +1 -3
  40. package/dist/src/data-marts/connector-types/connector-message/services/connector-message-parser.service.js +30 -34
  41. package/dist/src/data-marts/connector-types/connector-message/services/connector-output-capture.service.js +10 -12
  42. package/dist/src/data-marts/connector-types/connector-message/services/connector-state.service.js +3 -1
  43. package/dist/src/data-marts/connector-types/enums/connector-message-type-enum.d.ts +1 -0
  44. package/dist/src/data-marts/connector-types/enums/connector-message-type-enum.js +1 -0
  45. package/dist/src/data-marts/controllers/connector-definition.controller.d.ts +30 -0
  46. package/dist/src/data-marts/controllers/connector-definition.controller.js +252 -0
  47. package/dist/src/data-marts/controllers/data-mart-preview.controller.d.ts +10 -0
  48. package/dist/src/data-marts/controllers/data-mart-preview.controller.js +58 -0
  49. package/dist/src/data-marts/controllers/data-mart.controller.d.ts +5 -1
  50. package/dist/src/data-marts/controllers/data-mart.controller.js +25 -4
  51. package/dist/src/data-marts/controllers/insight-template.controller.js +4 -4
  52. package/dist/src/data-marts/controllers/insight.controller.js +5 -5
  53. package/dist/src/data-marts/controllers/project-data-mart-runs.controller.js +1 -1
  54. package/dist/src/data-marts/controllers/spec/connector-definition.api.d.ts +12 -0
  55. package/dist/src/data-marts/controllers/spec/connector-definition.api.js +179 -0
  56. package/dist/src/data-marts/controllers/spec/data-mart.api.d.ts +1 -0
  57. package/dist/src/data-marts/controllers/spec/data-mart.api.js +5 -0
  58. package/dist/src/data-marts/controllers/spec/report-openapi.d.ts +18 -0
  59. package/dist/src/data-marts/controllers/spec/report-openapi.js +3 -0
  60. package/dist/src/data-marts/data-marts.module.js +20 -2
  61. package/dist/src/data-marts/data-storage-types/blending/metric-sleeve.planner.js +3 -12
  62. package/dist/src/data-marts/data-storage-types/data-mart-schema.utils.d.ts +1 -0
  63. package/dist/src/data-marts/data-storage-types/data-mart-schema.utils.js +16 -0
  64. package/dist/src/data-marts/dto/domain/blendable-schema.dto.d.ts +10 -0
  65. package/dist/src/data-marts/dto/domain/blendable-schema.dto.js +71 -1
  66. package/dist/src/data-marts/dto/domain/create-data-mart.command.d.ts +3 -1
  67. package/dist/src/data-marts/dto/domain/create-data-mart.command.js +3 -1
  68. package/dist/src/data-marts/dto/domain/create-report.command.d.ts +3 -1
  69. package/dist/src/data-marts/dto/domain/create-report.command.js +3 -1
  70. package/dist/src/data-marts/dto/domain/data-mart-list-item.dto.d.ts +3 -1
  71. package/dist/src/data-marts/dto/domain/data-mart-list-item.dto.js +3 -1
  72. package/dist/src/data-marts/dto/domain/data-mart.dto.d.ts +4 -1
  73. package/dist/src/data-marts/dto/domain/data-mart.dto.js +5 -1
  74. package/dist/src/data-marts/dto/domain/model-canvas.dto.d.ts +4 -0
  75. package/dist/src/data-marts/dto/domain/report-like-read-plan.d.ts +2 -0
  76. package/dist/src/data-marts/dto/domain/report.dto.d.ts +3 -1
  77. package/dist/src/data-marts/dto/domain/report.dto.js +3 -1
  78. package/dist/src/data-marts/dto/domain/update-data-mart-icon.command.d.ts +9 -0
  79. package/dist/src/data-marts/dto/domain/update-data-mart-icon.command.js +19 -0
  80. package/dist/src/data-marts/dto/domain/update-report.command.d.ts +3 -1
  81. package/dist/src/data-marts/dto/domain/update-report.command.js +3 -1
  82. package/dist/src/data-marts/dto/presentation/create-data-mart-request-api.dto.d.ts +2 -0
  83. package/dist/src/data-marts/dto/presentation/create-data-mart-request-api.dto.js +13 -0
  84. package/dist/src/data-marts/dto/presentation/create-report-request-api.dto.d.ts +2 -0
  85. package/dist/src/data-marts/dto/presentation/create-report-request-api.dto.js +10 -0
  86. package/dist/src/data-marts/dto/presentation/custom-connector-response.dto.d.ts +46 -0
  87. package/dist/src/data-marts/dto/presentation/custom-connector-response.dto.js +216 -0
  88. package/dist/src/data-marts/dto/presentation/custom-connector.dto.d.ts +27 -0
  89. package/dist/src/data-marts/dto/presentation/custom-connector.dto.js +159 -0
  90. package/dist/src/data-marts/dto/presentation/data-mart-list-item-response-api.dto.d.ts +2 -0
  91. package/dist/src/data-marts/dto/presentation/data-mart-list-item-response-api.dto.js +10 -0
  92. package/dist/src/data-marts/dto/presentation/data-mart-response-api.dto.d.ts +2 -0
  93. package/dist/src/data-marts/dto/presentation/data-mart-response-api.dto.js +10 -0
  94. package/dist/src/data-marts/dto/presentation/model-canvas-response-api.dto.d.ts +4 -0
  95. package/dist/src/data-marts/dto/presentation/model-canvas-response-api.dto.js +20 -0
  96. package/dist/src/data-marts/dto/presentation/preview-data-mart-request-api.dto.d.ts +7 -0
  97. package/dist/src/data-marts/dto/presentation/preview-data-mart-request-api.dto.js +56 -0
  98. package/dist/src/data-marts/dto/presentation/preview-data-mart-response-api.dto.d.ts +12 -0
  99. package/dist/src/data-marts/dto/presentation/preview-data-mart-response-api.dto.js +64 -0
  100. package/dist/src/data-marts/dto/presentation/report-response-api.dto.d.ts +2 -0
  101. package/dist/src/data-marts/dto/presentation/report-response-api.dto.js +6 -0
  102. package/dist/src/data-marts/dto/presentation/run-data-mart-request-api.dto.js +67 -0
  103. package/dist/src/data-marts/dto/presentation/update-data-mart-description-api.dto.js +3 -0
  104. package/dist/src/data-marts/dto/presentation/update-data-mart-icon-api.dto.d.ts +4 -0
  105. package/dist/src/data-marts/dto/presentation/update-data-mart-icon-api.dto.js +30 -0
  106. package/dist/src/data-marts/dto/presentation/update-report-request-api.dto.d.ts +2 -0
  107. package/dist/src/data-marts/dto/presentation/update-report-request-api.dto.js +10 -0
  108. package/dist/src/data-marts/dto/schemas/auto-aggregation-opt-out.schema.d.ts +15 -0
  109. package/dist/src/data-marts/dto/schemas/auto-aggregation-opt-out.schema.js +29 -0
  110. package/dist/src/data-marts/dto/schemas/data-mart-run/data-mart-run.schema.d.ts +9 -0
  111. package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.d.ts +15 -0
  112. package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.js +1 -0
  113. package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/data-mart-definition.schema.d.ts +7 -0
  114. package/dist/src/data-marts/dto/schemas/data-quality/data-quality-run.schema.d.ts +20 -0
  115. package/dist/src/data-marts/entities/connector-definition-version.entity.d.ts +16 -0
  116. package/dist/src/data-marts/entities/connector-definition-version.entity.js +78 -0
  117. package/dist/src/data-marts/entities/connector-definition.entity.d.ts +14 -0
  118. package/dist/src/data-marts/entities/connector-definition.entity.js +82 -0
  119. package/dist/src/data-marts/entities/data-mart.entity.d.ts +2 -0
  120. package/dist/src/data-marts/entities/data-mart.entity.js +5 -0
  121. package/dist/src/data-marts/entities/report.entity.d.ts +2 -0
  122. package/dist/src/data-marts/entities/report.entity.js +11 -0
  123. package/dist/src/data-marts/enums/data-mart-icon.enum.d.ts +75 -0
  124. package/dist/src/data-marts/enums/data-mart-icon.enum.js +80 -0
  125. package/dist/src/data-marts/errors/connector-credential-boundary.error.d.ts +3 -0
  126. package/dist/src/data-marts/errors/connector-credential-boundary.error.js +14 -0
  127. package/dist/src/data-marts/facades/mcp-data-marts.facade.d.ts +2 -0
  128. package/dist/src/data-marts/facades/mcp-data-marts.facade.impl.d.ts +7 -1
  129. package/dist/src/data-marts/facades/mcp-data-marts.facade.impl.js +70 -5
  130. package/dist/src/data-marts/mappers/connector-definition.mapper.d.ts +14 -0
  131. package/dist/src/data-marts/mappers/connector-definition.mapper.js +57 -0
  132. package/dist/src/data-marts/mappers/data-mart.mapper.d.ts +9 -6
  133. package/dist/src/data-marts/mappers/data-mart.mapper.js +44 -19
  134. package/dist/src/data-marts/mappers/insight-template.mapper.d.ts +1 -1
  135. package/dist/src/data-marts/mappers/insight-template.mapper.js +2 -2
  136. package/dist/src/data-marts/mappers/insight.mapper.d.ts +1 -1
  137. package/dist/src/data-marts/mappers/insight.mapper.js +2 -2
  138. package/dist/src/data-marts/mappers/model-canvas.mapper.d.ts +10 -2
  139. package/dist/src/data-marts/mappers/model-canvas.mapper.js +9 -3
  140. package/dist/src/data-marts/mappers/report.mapper.js +4 -3
  141. package/dist/src/data-marts/services/auto-collapse.resolver.d.ts +1 -1
  142. package/dist/src/data-marts/services/auto-collapse.resolver.js +4 -0
  143. package/dist/src/data-marts/services/blendable-schema.service.d.ts +2 -0
  144. package/dist/src/data-marts/services/blendable-schema.service.js +59 -0
  145. package/dist/src/data-marts/services/connector/connector-credential-injector.service.d.ts +1 -1
  146. package/dist/src/data-marts/services/connector/connector-credential-injector.service.js +15 -1
  147. package/dist/src/data-marts/services/connector/connector-definition.service.d.ts +59 -0
  148. package/dist/src/data-marts/services/connector/connector-definition.service.js +491 -0
  149. package/dist/src/data-marts/services/connector/connector-executor.service.d.ts +9 -1
  150. package/dist/src/data-marts/services/connector/connector-executor.service.js +173 -63
  151. package/dist/src/data-marts/services/connector/connector-fields-preview.service.js +1 -1
  152. package/dist/src/data-marts/services/connector/connector-message.utils.js +2 -2
  153. package/dist/src/data-marts/services/connector/connector-preview-credentials.service.js +1 -1
  154. package/dist/src/data-marts/services/connector/connector-preview-support.d.ts +1 -1
  155. package/dist/src/data-marts/services/connector/connector-preview-support.js +14 -21
  156. package/dist/src/data-marts/services/connector/connector-process-spawner.service.d.ts +11 -2
  157. package/dist/src/data-marts/services/connector/connector-process-spawner.service.js +88 -60
  158. package/dist/src/data-marts/services/connector/connector-secret.service.d.ts +6 -3
  159. package/dist/src/data-marts/services/connector/connector-secret.service.js +77 -12
  160. package/dist/src/data-marts/services/connector/connector-source-config.service.js +1 -1
  161. package/dist/src/data-marts/services/connector/connector-source-credentials.service.d.ts +6 -2
  162. package/dist/src/data-marts/services/connector/connector-source-credentials.service.js +18 -16
  163. package/dist/src/data-marts/services/connector/connector-specification.mapper.d.ts +47 -0
  164. package/dist/src/data-marts/services/connector/connector-specification.mapper.js +46 -0
  165. package/dist/src/data-marts/services/connector/connector-test.service.d.ts +43 -0
  166. package/dist/src/data-marts/services/connector/connector-test.service.js +343 -0
  167. package/dist/src/data-marts/services/connector/connector.service.d.ts +8 -2
  168. package/dist/src/data-marts/services/connector/connector.service.js +65 -54
  169. package/dist/src/data-marts/services/connector/declarative-manifest-schemas.d.ts +4 -0
  170. package/dist/src/data-marts/services/connector/declarative-manifest-schemas.js +48 -0
  171. package/dist/src/data-marts/services/connector/run-log-flusher.d.ts +21 -0
  172. package/dist/src/data-marts/services/connector/run-log-flusher.js +67 -0
  173. package/dist/src/data-marts/services/data-mart.service.js +2 -0
  174. package/dist/src/data-marts/services/report-sql-composer.service.js +15 -1
  175. package/dist/src/data-marts/services/report.service.d.ts +1 -0
  176. package/dist/src/data-marts/services/report.service.js +13 -0
  177. package/dist/src/data-marts/services/scheduled-trigger.service.d.ts +1 -0
  178. package/dist/src/data-marts/services/scheduled-trigger.service.js +13 -0
  179. package/dist/src/data-marts/use-cases/create-data-mart.service.js +1 -0
  180. package/dist/src/data-marts/use-cases/create-report.service.js +2 -0
  181. package/dist/src/data-marts/use-cases/get-model-canvas-data-marts.service.d.ts +5 -1
  182. package/dist/src/data-marts/use-cases/get-model-canvas-data-marts.service.js +16 -3
  183. package/dist/src/data-marts/use-cases/list-project-scheduled-triggers.service.js +1 -1
  184. package/dist/src/data-marts/use-cases/preview-data-mart.service.d.ts +59 -0
  185. package/dist/src/data-marts/use-cases/preview-data-mart.service.js +293 -0
  186. package/dist/src/data-marts/use-cases/stream-http-data.service.js +1 -0
  187. package/dist/src/data-marts/use-cases/update-data-mart-definition.service.d.ts +1 -1
  188. package/dist/src/data-marts/use-cases/update-data-mart-definition.service.js +8 -6
  189. package/dist/src/data-marts/use-cases/update-data-mart-icon.service.d.ts +12 -0
  190. package/dist/src/data-marts/use-cases/update-data-mart-icon.service.js +46 -0
  191. package/dist/src/data-marts/use-cases/update-data-mart-schema.service.js +14 -1
  192. package/dist/src/data-marts/use-cases/update-report.service.js +9 -1
  193. package/dist/src/ee/ee.module.js +5 -8
  194. package/dist/src/ee/mcp/auth/mcp-auth-context.d.ts +0 -4
  195. package/dist/src/ee/mcp/auth/mcp-auth.middleware.d.ts +26 -0
  196. package/dist/src/ee/mcp/auth/mcp-auth.middleware.js +184 -0
  197. package/dist/src/ee/mcp/http-headers.util.d.ts +2 -0
  198. package/dist/src/ee/mcp/http-headers.util.js +8 -0
  199. package/dist/src/ee/mcp/observability/mcp-bus-wiring.js +4 -4
  200. package/dist/src/ee/mcp/observability/mcp-call-instrumentation.d.ts +2 -4
  201. package/dist/src/ee/mcp/observability/mcp-call-instrumentation.js +6 -6
  202. package/dist/src/ee/mcp/sdk/mcp-sdk-server.factory.d.ts +1 -1
  203. package/dist/src/ee/mcp/sdk/mcp-sdk-server.factory.js +5 -5
  204. package/dist/src/ee/mcp/tools/add-destination.tool.d.ts +20 -14
  205. package/dist/src/ee/mcp/tools/add-destination.tool.js +10 -10
  206. package/dist/src/ee/mcp/tools/add-report.tool.d.ts +88 -228
  207. package/dist/src/ee/mcp/tools/add-report.tool.js +28 -28
  208. package/dist/src/ee/mcp/tools/create-report-run-schedule.tool.d.ts +2 -12
  209. package/dist/src/ee/mcp/tools/create-report-run-schedule.tool.js +13 -13
  210. package/dist/src/ee/mcp/tools/data-mart-catalog.tool.d.ts +15 -81
  211. package/dist/src/ee/mcp/tools/data-mart-catalog.tool.js +11 -11
  212. package/dist/src/ee/mcp/tools/data-mart-details.tool.d.ts +19 -111
  213. package/dist/src/ee/mcp/tools/data-mart-details.tool.js +64 -48
  214. package/dist/src/ee/mcp/tools/delete-report-run-schedule.tool.d.ts +2 -6
  215. package/dist/src/ee/mcp/tools/delete-report-run-schedule.tool.js +7 -7
  216. package/dist/src/ee/mcp/tools/delete-report.tool.d.ts +2 -6
  217. package/dist/src/ee/mcp/tools/delete-report.tool.js +4 -4
  218. package/dist/src/ee/mcp/tools/get-data-mart-reports.tool.d.ts +30 -195
  219. package/dist/src/ee/mcp/tools/get-data-mart-reports.tool.js +22 -22
  220. package/dist/src/ee/mcp/tools/get-report-output-schema.tool.d.ts +3 -21
  221. package/dist/src/ee/mcp/tools/get-report-output-schema.tool.js +10 -10
  222. package/dist/src/ee/mcp/tools/get-report-run-status.tool.d.ts +15 -11
  223. package/dist/src/ee/mcp/tools/get-report-run-status.tool.js +14 -14
  224. package/dist/src/ee/mcp/tools/list-destinations.tool.d.ts +12 -20
  225. package/dist/src/ee/mcp/tools/list-destinations.tool.js +10 -10
  226. package/dist/src/ee/mcp/tools/list-report-run-schedules.tool.d.ts +5 -61
  227. package/dist/src/ee/mcp/tools/list-report-run-schedules.tool.js +14 -14
  228. package/dist/src/ee/mcp/tools/mcp-getting-started.util.d.ts +4 -52
  229. package/dist/src/ee/mcp/tools/mcp-getting-started.util.js +13 -13
  230. package/dist/src/ee/mcp/tools/mcp-tool.definition.d.ts +2 -2
  231. package/dist/src/ee/mcp/tools/project-context.tool.d.ts +3 -17
  232. package/dist/src/ee/mcp/tools/project-context.tool.js +10 -10
  233. package/dist/src/ee/mcp/tools/query-data-mart.input.d.ts +111 -152
  234. package/dist/src/ee/mcp/tools/query-data-mart.input.js +39 -39
  235. package/dist/src/ee/mcp/tools/query-data-mart.tool.d.ts +60 -130
  236. package/dist/src/ee/mcp/tools/query-data-mart.tool.js +35 -35
  237. package/dist/src/ee/mcp/tools/report-output-controls-output.d.ts +17 -60
  238. package/dist/src/ee/mcp/tools/report-output-controls-output.js +20 -20
  239. package/dist/src/ee/mcp/tools/report-run-outcome.d.ts +6 -42
  240. package/dist/src/ee/mcp/tools/report-run-outcome.js +20 -20
  241. package/dist/src/ee/mcp/tools/run-report.tool.d.ts +2 -6
  242. package/dist/src/ee/mcp/tools/run-report.tool.js +5 -5
  243. package/dist/src/ee/mcp/tools/search-data-marts.tool.d.ts +7 -79
  244. package/dist/src/ee/mcp/tools/search-data-marts.tool.js +11 -11
  245. package/dist/src/ee/mcp/tools/search-reports.tool.d.ts +15 -61
  246. package/dist/src/ee/mcp/tools/search-reports.tool.js +15 -15
  247. package/dist/src/ee/mcp/tools/summarize-data-catalog.tool.d.ts +7 -79
  248. package/dist/src/ee/mcp/tools/summarize-data-catalog.tool.js +15 -15
  249. package/dist/src/ee/mcp/tools/update-report-run-schedule.tool.d.ts +2 -12
  250. package/dist/src/ee/mcp/tools/update-report-run-schedule.tool.js +13 -13
  251. package/dist/src/ee/mcp/tools/update-report.tool.d.ts +105 -414
  252. package/dist/src/ee/mcp/tools/update-report.tool.js +20 -20
  253. package/dist/src/ee/mcp/transport/mcp-http-entry.service.d.ts +30 -0
  254. package/dist/src/ee/mcp/transport/mcp-http-entry.service.js +193 -0
  255. package/dist/src/idp/guards/idp.guard.js +2 -8
  256. package/dist/src/idp/oauth/controllers/oauth-authorization.controller.d.ts +4 -0
  257. package/dist/src/idp/oauth/controllers/oauth-authorization.controller.js +77 -1
  258. package/dist/src/idp/oauth/controllers/oauth-metadata.controller.d.ts +2 -1
  259. package/dist/src/idp/oauth/controllers/oauth-metadata.controller.js +5 -8
  260. package/dist/src/idp/oauth/controllers/oauth-token.controller.js +14 -1
  261. package/dist/src/idp/oauth/oauth-request.validator.d.ts +8 -0
  262. package/dist/src/idp/oauth/oauth-request.validator.js +27 -0
  263. package/dist/src/idp/utils/is-authentication-error.d.ts +1 -0
  264. package/dist/src/idp/utils/is-authentication-error.js +9 -0
  265. package/dist/src/idp/utils/role-hierarchy.d.ts +3 -0
  266. package/dist/src/idp/utils/role-hierarchy.js +14 -0
  267. package/dist/src/index.d.ts +1 -0
  268. package/dist/src/index.js +3 -1
  269. package/dist/src/migrations/1788048000000-create-connector-definition-tables.d.ts +6 -0
  270. package/dist/src/migrations/1788048000000-create-connector-definition-tables.js +116 -0
  271. package/dist/src/migrations/1790156789783-add-auto-aggregation-opt-out-to-report.d.ts +8 -0
  272. package/dist/src/migrations/1790156789783-add-auto-aggregation-opt-out-to-report.js +30 -0
  273. package/dist/src/migrations/1790247861000-add-icon-to-data-mart.d.ts +8 -0
  274. package/dist/src/migrations/1790247861000-add-icon-to-data-mart.js +31 -0
  275. package/package.json +10 -6
  276. package/dist/src/ee/mcp/auth/mcp-auth.exception-filter.d.ts +0 -14
  277. package/dist/src/ee/mcp/auth/mcp-auth.exception-filter.js +0 -84
  278. package/dist/src/ee/mcp/auth/mcp-auth.guard.d.ts +0 -14
  279. package/dist/src/ee/mcp/auth/mcp-auth.guard.js +0 -99
  280. package/dist/src/ee/mcp/controllers/mcp-transport.controller.d.ts +0 -17
  281. package/dist/src/ee/mcp/controllers/mcp-transport.controller.js +0 -134
  282. package/dist/src/ee/mcp/sdk/mcp-streamable-http-transport.handler.d.ts +0 -16
  283. package/dist/src/ee/mcp/sdk/mcp-streamable-http-transport.handler.js +0 -133
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NEW_EVENT_TYPES = void 0;
4
+ exports.isNewEvent = isNewEvent;
5
+ exports.translateNewEventToLegacy = translateNewEventToLegacy;
6
+ const connectors_1 = require("@owox/connectors");
7
+ const connector_message_type_enum_1 = require("../../enums/connector-message-type-enum");
8
+ const EVENT_TYPE = connectors_1.Core.EVENT_TYPE;
9
+ const LOG_LEVEL = connectors_1.Core.LOG_LEVEL;
10
+ const CONTROL_ACTION = connectors_1.Core
11
+ .CONTROL_ACTION;
12
+ const EXECUTION_STATUS = connectors_1.Core
13
+ .EXECUTION_STATUS;
14
+ exports.NEW_EVENT_TYPES = [
15
+ EVENT_TYPE.LOG,
16
+ EVENT_TYPE.DATA,
17
+ EVENT_TYPE.TRACE,
18
+ EVENT_TYPE.ANALYTICS,
19
+ EVENT_TYPE.STATE,
20
+ EVENT_TYPE.CONTROL,
21
+ EVENT_TYPE.CREDENTIALS,
22
+ EVENT_TYPE.FIELDS,
23
+ ];
24
+ const LEGACY_STATUS_IMPORT_DONE = EXECUTION_STATUS.IMPORT_DONE;
25
+ function isNewEvent(value) {
26
+ if (!value || typeof value !== 'object')
27
+ return false;
28
+ const t = value.type;
29
+ if (typeof t !== 'string')
30
+ return false;
31
+ return exports.NEW_EVENT_TYPES.includes(t);
32
+ }
33
+ function translateNewEventToLegacy(event) {
34
+ const at = typeof event.timestamp === 'string' ? event.timestamp : new Date().toISOString();
35
+ const type = event.type;
36
+ const legacy = translateEventBody(event, type, at);
37
+ if (legacy !== null) {
38
+ legacy.eventType = type;
39
+ }
40
+ return legacy;
41
+ }
42
+ function translateEventBody(event, type, at) {
43
+ switch (type) {
44
+ case EVENT_TYPE.LOG: {
45
+ const level = typeof event.level === 'string' ? event.level : LOG_LEVEL.INFO;
46
+ const message = typeof event.message === 'string' ? event.message : JSON.stringify(event);
47
+ if (level === LOG_LEVEL.ERROR) {
48
+ return { type: connector_message_type_enum_1.ConnectorMessageType.ERROR, at, error: message };
49
+ }
50
+ if (level === LOG_LEVEL.WARN || level === 'warning') {
51
+ return { type: connector_message_type_enum_1.ConnectorMessageType.WARNING, at, warning: message };
52
+ }
53
+ return { type: connector_message_type_enum_1.ConnectorMessageType.LOG, at, message };
54
+ }
55
+ case EVENT_TYPE.CONTROL: {
56
+ const action = typeof event.action === 'string' ? event.action : 'unknown';
57
+ if (action === CONTROL_ACTION.COMPLETED) {
58
+ return { type: connector_message_type_enum_1.ConnectorMessageType.STATUS, at, status: LEGACY_STATUS_IMPORT_DONE };
59
+ }
60
+ if (action === CONTROL_ACTION.FAILED) {
61
+ const error = typeof event.error === 'string' && event.error.length > 0
62
+ ? event.error
63
+ : 'Connector reported failure';
64
+ return { type: connector_message_type_enum_1.ConnectorMessageType.ERROR, at, error };
65
+ }
66
+ return {
67
+ type: connector_message_type_enum_1.ConnectorMessageType.LOG,
68
+ at,
69
+ message: `[CONTROL] ${action}`,
70
+ };
71
+ }
72
+ case EVENT_TYPE.STATE: {
73
+ const state = (event.state ?? {});
74
+ const lastRequestedDate = state.lastRequestedDate;
75
+ if (typeof lastRequestedDate === 'string' && lastRequestedDate.length > 0) {
76
+ return {
77
+ type: connector_message_type_enum_1.ConnectorMessageType.REQUESTED_DATE,
78
+ at,
79
+ date: lastRequestedDate,
80
+ };
81
+ }
82
+ if (Object.keys(state).length > 0) {
83
+ return {
84
+ type: connector_message_type_enum_1.ConnectorMessageType.STATE_UPDATE,
85
+ at,
86
+ state,
87
+ };
88
+ }
89
+ return {
90
+ type: connector_message_type_enum_1.ConnectorMessageType.LOG,
91
+ at,
92
+ message: `[STATE] ${JSON.stringify(state)}`,
93
+ };
94
+ }
95
+ case EVENT_TYPE.TRACE: {
96
+ const action = typeof event.action === 'string' ? event.action : 'trace';
97
+ const details = event.details !== undefined ? JSON.stringify(event.details) : '';
98
+ return {
99
+ type: connector_message_type_enum_1.ConnectorMessageType.LOG,
100
+ at,
101
+ message: `[TRACE] ${action}${details ? ` ${details}` : ''}`,
102
+ };
103
+ }
104
+ case EVENT_TYPE.ANALYTICS: {
105
+ const metric = typeof event.metric === 'string' ? event.metric : 'metric';
106
+ const value = event.value;
107
+ const tags = event.tags && typeof event.tags === 'object'
108
+ ? event.tags
109
+ : undefined;
110
+ const tagsText = tags !== undefined ? ` ${JSON.stringify(tags)}` : '';
111
+ return {
112
+ type: connector_message_type_enum_1.ConnectorMessageType.LOG,
113
+ at,
114
+ metric,
115
+ value,
116
+ ...(tags !== undefined ? { tags } : {}),
117
+ message: `[ANALYTICS] ${metric}=${JSON.stringify(value)}${tagsText}`,
118
+ };
119
+ }
120
+ case EVENT_TYPE.CREDENTIALS: {
121
+ const credentials = event.credentials && typeof event.credentials === 'object'
122
+ ? event.credentials
123
+ : {};
124
+ return { type: connector_message_type_enum_1.ConnectorMessageType.CREDENTIALS_UPDATE, at, credentials };
125
+ }
126
+ case EVENT_TYPE.FIELDS: {
127
+ const fields = Array.isArray(event.fields)
128
+ ? event.fields.filter((field) => typeof field === 'string')
129
+ : [];
130
+ return { type: connector_message_type_enum_1.ConnectorMessageType.FIELDS_UPDATE, at, fields };
131
+ }
132
+ case EVENT_TYPE.DATA:
133
+ return null;
134
+ default:
135
+ return null;
136
+ }
137
+ }
138
+ //# sourceMappingURL=connector-event.translator.js.map
@@ -1,9 +1,7 @@
1
1
  import { ConnectorMessage } from '../schemas/connector-message.schema';
2
2
  export declare class ConnectorMessageParserService {
3
3
  private logger;
4
- parse(message: string): ConnectorMessage;
4
+ parse(message: string): ConnectorMessage | null;
5
5
  private parseAsUnknown;
6
6
  private redactCredentialUpdateMessage;
7
- private redactCredentialUpdateJson;
8
- private hasCredentialUpdateContent;
9
7
  }
@@ -12,26 +12,45 @@ const common_1 = require("@nestjs/common");
12
12
  const connector_message_schema_1 = require("../schemas/connector-message.schema");
13
13
  const connector_message_type_enum_1 = require("../../enums/connector-message-type-enum");
14
14
  const connectors_1 = require("@owox/connectors");
15
+ const connector_event_translator_1 = require("./connector-event.translator");
15
16
  const { GENERATED_REFRESH_TOKEN_CREDENTIAL_FIELD } = connectors_1.Core;
17
+ const MAX_DESCRIBED_KEYS = 20;
18
+ function describeShape(value) {
19
+ if (value === null)
20
+ return 'null';
21
+ if (Array.isArray(value))
22
+ return `array(${value.length})`;
23
+ if (typeof value !== 'object')
24
+ return typeof value;
25
+ const keys = Object.keys(value);
26
+ const shown = keys.slice(0, MAX_DESCRIBED_KEYS);
27
+ const omitted = keys.length - shown.length;
28
+ return `object{${shown.join(', ')}${omitted > 0 ? `, +${omitted} more` : ''}}`;
29
+ }
16
30
  let ConnectorMessageParserService = ConnectorMessageParserService_1 = class ConnectorMessageParserService {
17
31
  logger = new common_1.Logger(ConnectorMessageParserService_1.name);
18
32
  parse(message) {
33
+ let asJson;
19
34
  try {
20
- const asJson = JSON.parse(message);
21
- const parsedMessage = connector_message_schema_1.ConnectorMessageSchema.safeParse(asJson);
22
- if (!parsedMessage.success) {
23
- this.logger.warn(`Schema validation failed for message:`, {
24
- message: this.redactCredentialUpdateMessage(message),
25
- parsedJson: this.redactCredentialUpdateJson(asJson),
26
- errors: parsedMessage.error.errors,
27
- });
28
- return this.parseAsUnknown(message);
29
- }
30
- return parsedMessage.data;
35
+ asJson = JSON.parse(message);
31
36
  }
32
37
  catch {
33
38
  return this.parseAsUnknown(message);
34
39
  }
40
+ const candidate = (0, connector_event_translator_1.isNewEvent)(asJson) ? (0, connector_event_translator_1.translateNewEventToLegacy)(asJson) : asJson;
41
+ if (candidate === null) {
42
+ return null;
43
+ }
44
+ const parsedMessage = connector_message_schema_1.ConnectorMessageSchema.safeParse(candidate);
45
+ if (!parsedMessage.success) {
46
+ this.logger.warn(`Schema validation failed for message:`, {
47
+ messageLength: message.length,
48
+ shape: describeShape(asJson),
49
+ errors: parsedMessage.error.errors,
50
+ });
51
+ return this.parseAsUnknown(message);
52
+ }
53
+ return parsedMessage.data;
35
54
  }
36
55
  parseAsUnknown(message) {
37
56
  const safeMessage = this.redactCredentialUpdateMessage(message).trim();
@@ -49,29 +68,6 @@ let ConnectorMessageParserService = ConnectorMessageParserService_1 = class Conn
49
68
  }
50
69
  return '[REDACTED updateCredentials message]';
51
70
  }
52
- redactCredentialUpdateJson(value) {
53
- if (!value || typeof value !== 'object') {
54
- return value;
55
- }
56
- if (!this.hasCredentialUpdateContent(value)) {
57
- return value;
58
- }
59
- return '[REDACTED updateCredentials message]';
60
- }
61
- hasCredentialUpdateContent(value) {
62
- if (!value || typeof value !== 'object') {
63
- return false;
64
- }
65
- if (Array.isArray(value)) {
66
- return value.some(item => this.hasCredentialUpdateContent(item));
67
- }
68
- const objectValue = value;
69
- if (objectValue.type === connector_message_type_enum_1.ConnectorMessageType.CREDENTIALS_UPDATE ||
70
- Object.prototype.hasOwnProperty.call(objectValue, GENERATED_REFRESH_TOKEN_CREDENTIAL_FIELD)) {
71
- return true;
72
- }
73
- return Object.values(objectValue).some(item => this.hasCredentialUpdateContent(item));
74
- }
75
71
  };
76
72
  exports.ConnectorMessageParserService = ConnectorMessageParserService;
77
73
  exports.ConnectorMessageParserService = ConnectorMessageParserService = ConnectorMessageParserService_1 = __decorate([
@@ -29,24 +29,22 @@ let ConnectorOutputCaptureService = class ConnectorOutputCaptureService {
29
29
  };
30
30
  }
31
31
  captureMessage(message) {
32
- return this.cleanMessage(message).map(line => {
33
- const parsedMessage = this.connectorMessageParserService.parse(line);
34
- return parsedMessage;
35
- });
32
+ return this.cleanMessage(message)
33
+ .map(line => this.connectorMessageParserService.parse(line))
34
+ .filter((parsed) => parsed !== null);
36
35
  }
37
36
  captureError(message) {
38
- return this.cleanMessage(message).map(line => {
39
- const parsedMessage = this.connectorMessageParserService.parse(line);
40
- if (parsedMessage.type !== connector_message_type_enum_1.ConnectorMessageType.UNKNOWN) {
41
- return parsedMessage;
42
- }
43
- return {
37
+ return this.cleanMessage(message)
38
+ .map(line => this.connectorMessageParserService.parse(line))
39
+ .filter((parsed) => parsed !== null)
40
+ .map(parsedMessage => parsedMessage.type !== connector_message_type_enum_1.ConnectorMessageType.UNKNOWN
41
+ ? parsedMessage
42
+ : {
44
43
  type: connector_message_type_enum_1.ConnectorMessageType.ERROR,
45
44
  at: parsedMessage.at,
46
45
  error: parsedMessage.toFormattedString(),
47
46
  toFormattedString: () => `[ERROR] ${parsedMessage.toFormattedString()}`,
48
- };
49
- });
47
+ });
50
48
  }
51
49
  cleanMessage(message) {
52
50
  const trimmed = message.trim();
@@ -39,9 +39,11 @@ let ConnectorStateService = class ConnectorStateService {
39
39
  where: { datamartId: dataMartId },
40
40
  });
41
41
  const now = new Date().toISOString();
42
+ const previousState = existingState?.state?.states?.find((s) => s._id === configId)?.state ??
43
+ {};
42
44
  const newStateItem = {
43
45
  _id: configId,
44
- state: outputState.state || {},
46
+ state: { ...previousState, ...(outputState.state || {}) },
45
47
  at: outputState.at || now,
46
48
  };
47
49
  if (existingState) {
@@ -6,6 +6,7 @@ export declare enum ConnectorMessageType {
6
6
  CREDENTIALS_UPDATE = "updateCredentials",
7
7
  FIELDS_UPDATE = "updateFields",
8
8
  REQUESTED_DATE = "updateLastRequstedDate",
9
+ STATE_UPDATE = "updateState",
9
10
  WARNING = "addWarningToCurrentStatus",
10
11
  UNKNOWN = "unknown",
11
12
  ERROR = "error"
@@ -10,6 +10,7 @@ var ConnectorMessageType;
10
10
  ConnectorMessageType["CREDENTIALS_UPDATE"] = "updateCredentials";
11
11
  ConnectorMessageType["FIELDS_UPDATE"] = "updateFields";
12
12
  ConnectorMessageType["REQUESTED_DATE"] = "updateLastRequstedDate";
13
+ ConnectorMessageType["STATE_UPDATE"] = "updateState";
13
14
  ConnectorMessageType["WARNING"] = "addWarningToCurrentStatus";
14
15
  ConnectorMessageType["UNKNOWN"] = "unknown";
15
16
  ConnectorMessageType["ERROR"] = "error";
@@ -0,0 +1,30 @@
1
+ import { AuthorizationContext } from '../../idp';
2
+ import { ConnectorFieldsResponseApiDto } from '../dto/presentation/connector-fields-response-api.dto';
3
+ import { ConnectorSpecificationResponseApiDto } from '../dto/presentation/connector-specification-response-api.dto';
4
+ import { ConnectorDefinitionService } from '../services/connector/connector-definition.service';
5
+ import { ConnectorService } from '../services/connector/connector.service';
6
+ import { ConnectorTestService } from '../services/connector/connector-test.service';
7
+ import { CreateCustomConnectorRequestApiDto, SaveDraftRequestApiDto, TestConnectorRequestApiDto, UpdateCustomConnectorRequestApiDto } from '../dto/presentation/custom-connector.dto';
8
+ import { ActivateCustomConnectorVersionResponseApiDto, ConnectorTestResultResponseApiDto, CreateCustomConnectorResponseApiDto, CustomConnectorDetailResponseApiDto, CustomConnectorListItemResponseApiDto, CustomConnectorVersionResponseApiDto, CustomConnectorVersionStateResponseApiDto, DeleteCustomConnectorResponseApiDto, PublishCustomConnectorResponseApiDto } from '../dto/presentation/custom-connector-response.dto';
9
+ import { ConnectorDefinitionMapper } from '../mappers/connector-definition.mapper';
10
+ import { ConnectorMapper } from '../mappers/connector.mapper';
11
+ export declare class ConnectorDefinitionController {
12
+ private readonly definitionService;
13
+ private readonly connectorService;
14
+ private readonly testService;
15
+ private readonly mapper;
16
+ private readonly connectorMapper;
17
+ constructor(definitionService: ConnectorDefinitionService, connectorService: ConnectorService, testService: ConnectorTestService, mapper: ConnectorDefinitionMapper, connectorMapper: ConnectorMapper);
18
+ list(ctx: AuthorizationContext): Promise<CustomConnectorListItemResponseApiDto[]>;
19
+ create(ctx: AuthorizationContext, body: CreateCustomConnectorRequestApiDto): Promise<CreateCustomConnectorResponseApiDto>;
20
+ test(ctx: AuthorizationContext, body: TestConnectorRequestApiDto): Promise<ConnectorTestResultResponseApiDto>;
21
+ get(ctx: AuthorizationContext, id: string): Promise<CustomConnectorDetailResponseApiDto>;
22
+ update(ctx: AuthorizationContext, id: string, body: UpdateCustomConnectorRequestApiDto): Promise<CustomConnectorDetailResponseApiDto>;
23
+ getVersion(ctx: AuthorizationContext, id: string, version: number): Promise<CustomConnectorVersionResponseApiDto>;
24
+ saveDraft(ctx: AuthorizationContext, id: string, body: SaveDraftRequestApiDto): Promise<CustomConnectorVersionStateResponseApiDto>;
25
+ publish(ctx: AuthorizationContext, id: string): Promise<PublishCustomConnectorResponseApiDto>;
26
+ activate(ctx: AuthorizationContext, id: string, version: number): Promise<ActivateCustomConnectorVersionResponseApiDto>;
27
+ remove(ctx: AuthorizationContext, id: string): Promise<DeleteCustomConnectorResponseApiDto>;
28
+ specification(ctx: AuthorizationContext, id: string, version?: number): Promise<ConnectorSpecificationResponseApiDto[]>;
29
+ fields(ctx: AuthorizationContext, id: string, version?: number): Promise<ConnectorFieldsResponseApiDto[]>;
30
+ }
@@ -0,0 +1,252 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ConnectorDefinitionController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const swagger_1 = require("@nestjs/swagger");
18
+ const idp_1 = require("../../idp");
19
+ const decorators_1 = require("../../idp/decorators");
20
+ const role_config_types_1 = require("../../idp/types/role-config.types");
21
+ const connector_definition_service_1 = require("../services/connector/connector-definition.service");
22
+ const connector_service_1 = require("../services/connector/connector.service");
23
+ const connector_test_service_1 = require("../services/connector/connector-test.service");
24
+ const custom_connector_dto_1 = require("../dto/presentation/custom-connector.dto");
25
+ const connector_definition_mapper_1 = require("../mappers/connector-definition.mapper");
26
+ const connector_mapper_1 = require("../mappers/connector.mapper");
27
+ const connector_definition_api_1 = require("./spec/connector-definition.api");
28
+ let ConnectorDefinitionController = class ConnectorDefinitionController {
29
+ definitionService;
30
+ connectorService;
31
+ testService;
32
+ mapper;
33
+ connectorMapper;
34
+ constructor(definitionService, connectorService, testService, mapper, connectorMapper) {
35
+ this.definitionService = definitionService;
36
+ this.connectorService = connectorService;
37
+ this.testService = testService;
38
+ this.mapper = mapper;
39
+ this.connectorMapper = connectorMapper;
40
+ }
41
+ async list(ctx) {
42
+ const defs = await this.definitionService.listByProject(ctx.projectId);
43
+ const activeVersionByDefId = await this.definitionService.getActiveVersionNumbersByDefId(defs);
44
+ return this.mapper.toListResponse(defs, activeVersionByDefId);
45
+ }
46
+ async create(ctx, body) {
47
+ const def = await this.definitionService.create(ctx.projectId, ctx.userId, {
48
+ name: body.name,
49
+ title: body.title,
50
+ description: body.description ?? null,
51
+ logo: body.logo ?? null,
52
+ docUrl: body.docUrl ?? null,
53
+ manifest: body.manifest,
54
+ });
55
+ return this.mapper.toCreateResponse(def);
56
+ }
57
+ async test(ctx, body) {
58
+ return this.testService.runTest({
59
+ projectId: ctx.projectId,
60
+ manifest: body.manifest,
61
+ node: body.node,
62
+ configuration: body.configuration,
63
+ maxRows: body.maxRows,
64
+ maxPages: body.maxPages,
65
+ });
66
+ }
67
+ async get(ctx, id) {
68
+ const def = await this.definitionService.getById(ctx.projectId, id);
69
+ const versions = await this.definitionService.listVersions(ctx.projectId, id);
70
+ const activeVersion = await this.definitionService.getActiveVersionNumberForDef(def);
71
+ return this.mapper.toDetailResponse(def, versions, activeVersion);
72
+ }
73
+ async update(ctx, id, body) {
74
+ const def = await this.definitionService.updateMetadata(ctx.projectId, id, body);
75
+ const versions = await this.definitionService.listVersions(ctx.projectId, id);
76
+ const activeVersion = await this.definitionService.getActiveVersionNumberForDef(def);
77
+ return this.mapper.toDetailResponse(def, versions, activeVersion);
78
+ }
79
+ async getVersion(ctx, id, version) {
80
+ const row = await this.definitionService.getVersion(ctx.projectId, id, version);
81
+ return this.mapper.toVersionResponse(row);
82
+ }
83
+ async saveDraft(ctx, id, body) {
84
+ const row = await this.definitionService.saveDraft(ctx.projectId, id, body.manifest);
85
+ return this.mapper.toVersionStateResponse(row);
86
+ }
87
+ async publish(ctx, id) {
88
+ const { version: row, warnings } = await this.definitionService.publish(ctx.projectId, id, {
89
+ userId: ctx.userId,
90
+ roles: ctx.roles ?? [],
91
+ });
92
+ return this.mapper.toPublishResponse(row, warnings);
93
+ }
94
+ async activate(ctx, id, version) {
95
+ const def = await this.definitionService.setActiveVersion(ctx.projectId, id, version, {
96
+ userId: ctx.userId,
97
+ roles: ctx.roles ?? [],
98
+ });
99
+ return this.mapper.toActivateResponse(def, version);
100
+ }
101
+ async remove(ctx, id) {
102
+ await this.definitionService.softDelete(ctx.projectId, id);
103
+ return { success: true };
104
+ }
105
+ async specification(ctx, id, version) {
106
+ const def = await this.definitionService.getById(ctx.projectId, id);
107
+ const manifest = await this.definitionService.resolveManifest(ctx.projectId, def.name, version);
108
+ return this.connectorMapper.toSpecificationResponse(this.connectorService.getSpecificationFromManifest(manifest));
109
+ }
110
+ async fields(ctx, id, version) {
111
+ const def = await this.definitionService.getById(ctx.projectId, id);
112
+ const manifest = await this.definitionService.resolveManifest(ctx.projectId, def.name, version);
113
+ return this.connectorMapper.toFieldsResponse(this.connectorService.getFieldsSchemaFromManifest(manifest));
114
+ }
115
+ };
116
+ exports.ConnectorDefinitionController = ConnectorDefinitionController;
117
+ __decorate([
118
+ (0, idp_1.Auth)(role_config_types_1.Role.viewer()),
119
+ (0, common_1.Get)(),
120
+ (0, connector_definition_api_1.ListCustomConnectorsSpec)(),
121
+ __param(0, (0, idp_1.AuthContext)()),
122
+ __metadata("design:type", Function),
123
+ __metadata("design:paramtypes", [Object]),
124
+ __metadata("design:returntype", Promise)
125
+ ], ConnectorDefinitionController.prototype, "list", null);
126
+ __decorate([
127
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
128
+ (0, common_1.Post)(),
129
+ (0, connector_definition_api_1.CreateCustomConnectorSpec)(),
130
+ __param(0, (0, idp_1.AuthContext)()),
131
+ __param(1, (0, common_1.Body)()),
132
+ __metadata("design:type", Function),
133
+ __metadata("design:paramtypes", [Object, custom_connector_dto_1.CreateCustomConnectorRequestApiDto]),
134
+ __metadata("design:returntype", Promise)
135
+ ], ConnectorDefinitionController.prototype, "create", null);
136
+ __decorate([
137
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
138
+ (0, common_1.Post)('test'),
139
+ (0, connector_definition_api_1.TestCustomConnectorSpec)(),
140
+ __param(0, (0, idp_1.AuthContext)()),
141
+ __param(1, (0, common_1.Body)()),
142
+ __metadata("design:type", Function),
143
+ __metadata("design:paramtypes", [Object, custom_connector_dto_1.TestConnectorRequestApiDto]),
144
+ __metadata("design:returntype", Promise)
145
+ ], ConnectorDefinitionController.prototype, "test", null);
146
+ __decorate([
147
+ (0, idp_1.Auth)(role_config_types_1.Role.viewer()),
148
+ (0, common_1.Get)(':id'),
149
+ (0, connector_definition_api_1.GetCustomConnectorSpec)(),
150
+ __param(0, (0, idp_1.AuthContext)()),
151
+ __param(1, (0, common_1.Param)('id')),
152
+ __metadata("design:type", Function),
153
+ __metadata("design:paramtypes", [Object, String]),
154
+ __metadata("design:returntype", Promise)
155
+ ], ConnectorDefinitionController.prototype, "get", null);
156
+ __decorate([
157
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
158
+ (0, common_1.Patch)(':id'),
159
+ (0, connector_definition_api_1.UpdateCustomConnectorSpec)(),
160
+ __param(0, (0, idp_1.AuthContext)()),
161
+ __param(1, (0, common_1.Param)('id')),
162
+ __param(2, (0, common_1.Body)()),
163
+ __metadata("design:type", Function),
164
+ __metadata("design:paramtypes", [Object, String, custom_connector_dto_1.UpdateCustomConnectorRequestApiDto]),
165
+ __metadata("design:returntype", Promise)
166
+ ], ConnectorDefinitionController.prototype, "update", null);
167
+ __decorate([
168
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
169
+ (0, common_1.Get)(':id/versions/:version'),
170
+ (0, connector_definition_api_1.GetCustomConnectorVersionSpec)(),
171
+ __param(0, (0, idp_1.AuthContext)()),
172
+ __param(1, (0, common_1.Param)('id')),
173
+ __param(2, (0, common_1.Param)('version', common_1.ParseIntPipe)),
174
+ __metadata("design:type", Function),
175
+ __metadata("design:paramtypes", [Object, String, Number]),
176
+ __metadata("design:returntype", Promise)
177
+ ], ConnectorDefinitionController.prototype, "getVersion", null);
178
+ __decorate([
179
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
180
+ (0, common_1.Put)(':id/draft'),
181
+ (0, connector_definition_api_1.SaveCustomConnectorDraftSpec)(),
182
+ __param(0, (0, idp_1.AuthContext)()),
183
+ __param(1, (0, common_1.Param)('id')),
184
+ __param(2, (0, common_1.Body)()),
185
+ __metadata("design:type", Function),
186
+ __metadata("design:paramtypes", [Object, String, custom_connector_dto_1.SaveDraftRequestApiDto]),
187
+ __metadata("design:returntype", Promise)
188
+ ], ConnectorDefinitionController.prototype, "saveDraft", null);
189
+ __decorate([
190
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
191
+ (0, common_1.Post)(':id/publish'),
192
+ (0, connector_definition_api_1.PublishCustomConnectorSpec)(),
193
+ __param(0, (0, idp_1.AuthContext)()),
194
+ __param(1, (0, common_1.Param)('id')),
195
+ __metadata("design:type", Function),
196
+ __metadata("design:paramtypes", [Object, String]),
197
+ __metadata("design:returntype", Promise)
198
+ ], ConnectorDefinitionController.prototype, "publish", null);
199
+ __decorate([
200
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
201
+ (0, common_1.Post)(':id/versions/:version/activate'),
202
+ (0, connector_definition_api_1.ActivateCustomConnectorVersionSpec)(),
203
+ __param(0, (0, idp_1.AuthContext)()),
204
+ __param(1, (0, common_1.Param)('id')),
205
+ __param(2, (0, common_1.Param)('version', common_1.ParseIntPipe)),
206
+ __metadata("design:type", Function),
207
+ __metadata("design:paramtypes", [Object, String, Number]),
208
+ __metadata("design:returntype", Promise)
209
+ ], ConnectorDefinitionController.prototype, "activate", null);
210
+ __decorate([
211
+ (0, idp_1.Auth)(role_config_types_1.Role.editor()),
212
+ (0, common_1.Delete)(':id'),
213
+ (0, connector_definition_api_1.DeleteCustomConnectorSpec)(),
214
+ __param(0, (0, idp_1.AuthContext)()),
215
+ __param(1, (0, common_1.Param)('id')),
216
+ __metadata("design:type", Function),
217
+ __metadata("design:paramtypes", [Object, String]),
218
+ __metadata("design:returntype", Promise)
219
+ ], ConnectorDefinitionController.prototype, "remove", null);
220
+ __decorate([
221
+ (0, idp_1.Auth)(role_config_types_1.Role.viewer()),
222
+ (0, common_1.Get)(':id/specification'),
223
+ (0, connector_definition_api_1.GetCustomConnectorSpecificationSpec)(),
224
+ __param(0, (0, idp_1.AuthContext)()),
225
+ __param(1, (0, common_1.Param)('id')),
226
+ __param(2, (0, common_1.Query)('version', new common_1.ParseIntPipe({ optional: true }))),
227
+ __metadata("design:type", Function),
228
+ __metadata("design:paramtypes", [Object, String, Number]),
229
+ __metadata("design:returntype", Promise)
230
+ ], ConnectorDefinitionController.prototype, "specification", null);
231
+ __decorate([
232
+ (0, idp_1.Auth)(role_config_types_1.Role.viewer()),
233
+ (0, common_1.Get)(':id/fields'),
234
+ (0, connector_definition_api_1.GetCustomConnectorFieldsSpec)(),
235
+ __param(0, (0, idp_1.AuthContext)()),
236
+ __param(1, (0, common_1.Param)('id')),
237
+ __param(2, (0, common_1.Query)('version', new common_1.ParseIntPipe({ optional: true }))),
238
+ __metadata("design:type", Function),
239
+ __metadata("design:paramtypes", [Object, String, Number]),
240
+ __metadata("design:returntype", Promise)
241
+ ], ConnectorDefinitionController.prototype, "fields", null);
242
+ exports.ConnectorDefinitionController = ConnectorDefinitionController = __decorate([
243
+ (0, common_1.Controller)('connectors/custom'),
244
+ (0, swagger_1.ApiTags)('Custom Connectors'),
245
+ (0, decorators_1.RejectPluginAuth)(),
246
+ __metadata("design:paramtypes", [connector_definition_service_1.ConnectorDefinitionService,
247
+ connector_service_1.ConnectorService,
248
+ connector_test_service_1.ConnectorTestService,
249
+ connector_definition_mapper_1.ConnectorDefinitionMapper,
250
+ connector_mapper_1.ConnectorMapper])
251
+ ], ConnectorDefinitionController);
252
+ //# sourceMappingURL=connector-definition.controller.js.map
@@ -0,0 +1,10 @@
1
+ import type { Response } from 'express';
2
+ import { AuthorizationContext } from '../../idp';
3
+ import { PreviewDataMartRequestApiDto } from '../dto/presentation/preview-data-mart-request-api.dto';
4
+ import { PreviewDataMartResponseApiDto } from '../dto/presentation/preview-data-mart-response-api.dto';
5
+ import { PreviewDataMartService } from '../use-cases/preview-data-mart.service';
6
+ export declare class DataMartPreviewController {
7
+ private readonly previewDataMartService;
8
+ constructor(previewDataMartService: PreviewDataMartService);
9
+ preview(context: AuthorizationContext, id: string, dto: PreviewDataMartRequestApiDto, response: Response): Promise<PreviewDataMartResponseApiDto>;
10
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DataMartPreviewController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const swagger_1 = require("@nestjs/swagger");
18
+ const idp_1 = require("../../idp");
19
+ const preview_data_mart_request_api_dto_1 = require("../dto/presentation/preview-data-mart-request-api.dto");
20
+ const preview_data_mart_response_api_dto_1 = require("../dto/presentation/preview-data-mart-response-api.dto");
21
+ const preview_data_mart_service_1 = require("../use-cases/preview-data-mart.service");
22
+ let DataMartPreviewController = class DataMartPreviewController {
23
+ previewDataMartService;
24
+ constructor(previewDataMartService) {
25
+ this.previewDataMartService = previewDataMartService;
26
+ }
27
+ async preview(context, id, dto, response) {
28
+ const abortController = new AbortController();
29
+ response.on('close', () => {
30
+ if (!response.writableFinished)
31
+ abortController.abort();
32
+ });
33
+ return this.previewDataMartService.run(new preview_data_mart_service_1.PreviewDataMartCommand(id, context.projectId, context.userId, context.roles ?? [], dto.limit, dto.filters, dto.sort), abortController.signal);
34
+ }
35
+ };
36
+ exports.DataMartPreviewController = DataMartPreviewController;
37
+ __decorate([
38
+ (0, idp_1.Auth)(idp_1.Role.viewer(idp_1.Strategy.INTROSPECT)),
39
+ (0, idp_1.RejectApiKeyAuth)(),
40
+ (0, idp_1.RejectPluginAuth)(),
41
+ (0, common_1.Post)(':id/preview'),
42
+ (0, common_1.HttpCode)(200),
43
+ (0, swagger_1.ApiOperation)({ summary: 'Read a sample of Data Mart rows for the Data Setup preview' }),
44
+ (0, swagger_1.ApiOkResponse)({ type: preview_data_mart_response_api_dto_1.PreviewDataMartResponseApiDto }),
45
+ __param(0, (0, idp_1.AuthContext)()),
46
+ __param(1, (0, common_1.Param)('id')),
47
+ __param(2, (0, common_1.Body)()),
48
+ __param(3, (0, common_1.Res)({ passthrough: true })),
49
+ __metadata("design:type", Function),
50
+ __metadata("design:paramtypes", [Object, String, preview_data_mart_request_api_dto_1.PreviewDataMartRequestApiDto, Object]),
51
+ __metadata("design:returntype", Promise)
52
+ ], DataMartPreviewController.prototype, "preview", null);
53
+ exports.DataMartPreviewController = DataMartPreviewController = __decorate([
54
+ (0, common_1.Controller)('data-marts'),
55
+ (0, swagger_1.ApiTags)('DataMarts'),
56
+ __metadata("design:paramtypes", [preview_data_mart_service_1.PreviewDataMartService])
57
+ ], DataMartPreviewController);
58
+ //# sourceMappingURL=data-mart-preview.controller.js.map