@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
@@ -59,6 +59,8 @@ const move_legacy_data_storage_service_1 = require("./use-cases/legacy-data-mart
59
59
  const sync_legacy_gcp_storages_for_project_service_1 = require("./use-cases/legacy-data-marts/sync-legacy-gcp-storages-for-project.service");
60
60
  const list_data_marts_service_1 = require("./use-cases/list-data-marts.service");
61
61
  const query_data_mart_service_1 = require("./use-cases/query-data-mart.service");
62
+ const preview_data_mart_service_1 = require("./use-cases/preview-data-mart.service");
63
+ const data_mart_preview_controller_1 = require("./controllers/data-mart-preview.controller");
62
64
  const summarize_mcp_data_catalog_service_1 = require("./use-cases/summarize-mcp-data-catalog.service");
63
65
  const mcp_data_marts_facade_1 = require("./facades/mcp-data-marts.facade");
64
66
  const mcp_data_marts_facade_impl_1 = require("./facades/mcp-data-marts.facade.impl");
@@ -129,6 +131,7 @@ const scheduled_trigger_service_1 = require("./services/scheduled-trigger.servic
129
131
  const publish_data_mart_service_1 = require("./use-cases/publish-data-mart.service");
130
132
  const update_blended_fields_config_service_1 = require("./use-cases/update-blended-fields-config.service");
131
133
  const update_data_mart_description_service_1 = require("./use-cases/update-data-mart-description.service");
134
+ const update_data_mart_icon_service_1 = require("./use-cases/update-data-mart-icon.service");
132
135
  const update_data_mart_owners_service_1 = require("./use-cases/update-data-mart-owners.service");
133
136
  const update_data_mart_title_service_1 = require("./use-cases/update-data-mart-title.service");
134
137
  const list_data_storages_service_1 = require("./use-cases/list-data-storages.service");
@@ -147,8 +150,13 @@ const insight_artifact_sql_preview_trigger_entity_1 = require("./entities/insigh
147
150
  const insight_template_entity_1 = require("./entities/insight-template.entity");
148
151
  const insight_template_source_entity_1 = require("./entities/insight-template-source.entity");
149
152
  const connector_controller_1 = require("./controllers/connector.controller");
153
+ const connector_definition_controller_1 = require("./controllers/connector-definition.controller");
150
154
  const available_connector_service_1 = require("./use-cases/connector/available-connector.service");
151
155
  const connector_service_1 = require("./services/connector/connector.service");
156
+ const connector_definition_service_1 = require("./services/connector/connector-definition.service");
157
+ const connector_test_service_1 = require("./services/connector/connector-test.service");
158
+ const connector_definition_entity_1 = require("./entities/connector-definition.entity");
159
+ const connector_definition_version_entity_1 = require("./entities/connector-definition-version.entity");
152
160
  const connector_execution_service_1 = require("./services/connector/connector-execution.service");
153
161
  const connector_run_service_1 = require("./services/connector/connector-run.service");
154
162
  const connector_executor_service_1 = require("./services/connector/connector-executor.service");
@@ -158,6 +166,7 @@ const connector_source_config_service_1 = require("./services/connector/connecto
158
166
  const connector_credential_injector_service_1 = require("./services/connector/connector-credential-injector.service");
159
167
  const connector_preview_credentials_service_1 = require("./services/connector/connector-preview-credentials.service");
160
168
  const connector_mapper_1 = require("./mappers/connector.mapper");
169
+ const connector_definition_mapper_1 = require("./mappers/connector-definition.mapper");
161
170
  const specification_connector_service_1 = require("./use-cases/connector/specification-connector.service");
162
171
  const fields_connector_service_1 = require("./use-cases/connector/fields-connector.service");
163
172
  const connector_fields_preview_service_1 = require("./services/connector/connector-fields-preview.service");
@@ -474,10 +483,10 @@ let DataMartsModule = class DataMartsModule {
474
483
  configure(consumer) {
475
484
  consumer
476
485
  .apply((0, operation_timeout_middleware_1.createOperationTimeoutMiddleware)(180000))
477
- .forRoutes({ path: 'data-marts/:id/definition', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/publish', method: common_1.RequestMethod.PUT });
486
+ .forRoutes({ path: 'data-marts/:id/definition', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/publish', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/preview', method: common_1.RequestMethod.POST });
478
487
  consumer
479
488
  .apply((0, operation_timeout_middleware_1.createOperationTimeoutMiddleware)(30000))
480
- .exclude({ path: 'data-marts/:id/definition', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/publish', method: common_1.RequestMethod.PUT }, { path: 'external/{*path}', method: common_1.RequestMethod.ALL }, ...mcp_operation_timeout_exclusions_1.MCP_OPERATION_TIMEOUT_EXCLUSIONS)
489
+ .exclude({ path: 'data-marts/:id/definition', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/publish', method: common_1.RequestMethod.PUT }, { path: 'data-marts/:id/preview', method: common_1.RequestMethod.POST }, { path: 'external/{*path}', method: common_1.RequestMethod.ALL }, ...mcp_operation_timeout_exclusions_1.MCP_OPERATION_TIMEOUT_EXCLUSIONS, { path: 'connectors/custom/test', method: common_1.RequestMethod.POST })
481
490
  .forRoutes({ path: '{*path}', method: common_1.RequestMethod.ALL });
482
491
  }
483
492
  };
@@ -546,6 +555,8 @@ exports.DataMartsModule = DataMartsModule = __decorate([
546
555
  credential_external_definition_entity_1.CredentialExternalDefinition,
547
556
  credential_definition_version_entity_1.CredentialDefinitionVersion,
548
557
  credential_consumer_binding_entity_1.CredentialConsumerBinding,
558
+ connector_definition_entity_1.ConnectorDefinition,
559
+ connector_definition_version_entity_1.ConnectorDefinitionVersion,
549
560
  ]),
550
561
  common_module_1.CommonModule,
551
562
  idp_module_1.IdpModule,
@@ -568,10 +579,12 @@ exports.DataMartsModule = DataMartsModule = __decorate([
568
579
  insight_artifact_sql_preview_trigger_controller_1.InsightArtifactSqlPreviewTriggerController,
569
580
  insight_template_controller_1.InsightTemplateController,
570
581
  connector_controller_1.ConnectorController,
582
+ connector_definition_controller_1.ConnectorDefinitionController,
571
583
  scheduled_trigger_controller_1.ScheduledTriggerController,
572
584
  looker_studio_connector_controller_1.LookerStudioConnectorController,
573
585
  sql_dry_run_trigger_controller_1.SqlDryRunTriggerController,
574
586
  schema_actualize_trigger_controller_1.SchemaActualizeTriggerController,
587
+ data_mart_preview_controller_1.DataMartPreviewController,
575
588
  publish_drafts_trigger_controller_1.PublishDraftsTriggerController,
576
589
  ai_helper_trigger_controller_1.AiHelperTriggerController,
577
590
  insight_run_trigger_controller_1.InsightRunTriggerController,
@@ -634,6 +647,7 @@ exports.DataMartsModule = DataMartsModule = __decorate([
634
647
  get_model_canvas_data_marts_service_1.GetModelCanvasDataMartsService,
635
648
  get_model_canvas_edges_service_1.GetModelCanvasEdgesService,
636
649
  query_data_mart_service_1.QueryDataMartService,
650
+ preview_data_mart_service_1.PreviewDataMartService,
637
651
  summarize_mcp_data_catalog_service_1.SummarizeMcpDataCatalogService,
638
652
  {
639
653
  provide: mcp_data_marts_facade_1.MCP_DATA_MARTS_FACADE,
@@ -662,6 +676,7 @@ exports.DataMartsModule = DataMartsModule = __decorate([
662
676
  publish_data_mart_service_1.PublishDataMartService,
663
677
  update_blended_fields_config_service_1.UpdateBlendedFieldsConfigService,
664
678
  update_data_mart_description_service_1.UpdateDataMartDescriptionService,
679
+ update_data_mart_icon_service_1.UpdateDataMartIconService,
665
680
  update_data_mart_owners_service_1.UpdateDataMartOwnersService,
666
681
  update_data_mart_title_service_1.UpdateDataMartTitleService,
667
682
  data_mart_mapper_1.DataMartMapper,
@@ -760,6 +775,8 @@ exports.DataMartsModule = DataMartsModule = __decorate([
760
775
  get_data_mart_run_service_1.GetDataMartRunService,
761
776
  available_connector_service_1.AvailableConnectorService,
762
777
  connector_service_1.ConnectorService,
778
+ connector_definition_service_1.ConnectorDefinitionService,
779
+ connector_test_service_1.ConnectorTestService,
763
780
  connector_execution_service_1.ConnectorExecutionService,
764
781
  connector_run_service_1.ConnectorRunService,
765
782
  connector_executor_service_1.ConnectorExecutorService,
@@ -769,6 +786,7 @@ exports.DataMartsModule = DataMartsModule = __decorate([
769
786
  connector_credential_injector_service_1.ConnectorCredentialInjectorService,
770
787
  connector_preview_credentials_service_1.ConnectorPreviewCredentialsService,
771
788
  connector_mapper_1.ConnectorMapper,
789
+ connector_definition_mapper_1.ConnectorDefinitionMapper,
772
790
  specification_connector_service_1.SpecificationConnectorService,
773
791
  fields_connector_service_1.FieldsConnectorService,
774
792
  connector_fields_preview_service_1.ConnectorFieldsPreviewService,
@@ -22,6 +22,7 @@ exports.resolveCountDistinctGroupCteName = resolveCountDistinctGroupCteName;
22
22
  exports.groupValueSleeveMetrics = groupValueSleeveMetrics;
23
23
  exports.resolveValueSleeveGroupCteName = resolveValueSleeveGroupCteName;
24
24
  const business_violation_exception_1 = require("../../../common/exceptions/business-violation.exception");
25
+ const set_quantifier_1 = require("../../calculated-fields/set-quantifier");
25
26
  const sql_token_scanner_1 = require("../../calculated-fields/sql-token-scanner");
26
27
  const aggregate_function_schema_1 = require("../../dto/schemas/aggregate-function.schema");
27
28
  const aggregation_labels_1 = require("../../dto/schemas/aggregation-labels");
@@ -88,18 +89,8 @@ function sleeveCteNameForColumn(column) {
88
89
  function uniqueCountSleeveCteName(source) {
89
90
  return `sleeve_uc_${sanitizeSleeveNamePart(source.aliasPath)}`;
90
91
  }
91
- function readArgumentQuantifier(tokens, call) {
92
- const first = tokens.find(t => t.kind !== 'comment' && t.start >= call.argStart && t.end <= call.argEnd);
93
- const word = first?.kind === 'word' ? first.value.toUpperCase() : '';
94
- if (word === 'DISTINCT' || word === 'ALL') {
95
- return { distinct: word === 'DISTINCT', valueStart: first.end };
96
- }
97
- return { distinct: false, valueStart: call.argStart };
98
- }
99
92
  function isJoinedCallLeftInPlace(tokens, call) {
100
- return (call.owner.kind === 'joined' &&
101
- call.fn === 'COUNT' &&
102
- !readArgumentQuantifier(tokens, call).distinct);
93
+ return (call.owner.kind === 'joined' && call.fn === 'COUNT' && !(0, set_quantifier_1.readSetQuantifier)(tokens, call).distinct);
103
94
  }
104
95
  function withCallIndex(base, callIndex) {
105
96
  const suffix = `_${callIndex}`;
@@ -149,7 +140,7 @@ function planFormulaSleeves(metrics) {
149
140
  `Data Mart currently takes exactly one argument — remove the extra argument(s), or ` +
150
141
  `compute this part on the calculated field's own Data Mart`, { calculatedField: outputName, aliasPath, function: call.fn });
151
142
  }
152
- const quantifier = readArgumentQuantifier(tokens, call);
143
+ const quantifier = (0, set_quantifier_1.readSetQuantifier)(tokens, call);
153
144
  if (quantifier.distinct && call.fn !== 'COUNT') {
154
145
  throw new business_violation_exception_1.BusinessViolationException(`Calculated field '${outputName}': ${call.fn}(DISTINCT ...) reads the joined source ` +
155
146
  `'${aliasPath}'. Only COUNT(DISTINCT ...) can be de-duplicated over a joined Data ` +
@@ -30,6 +30,7 @@ export declare function getMainUniqueCountKeyFields(fields: readonly DataMartSch
30
30
  field: DataMartSchemaField;
31
31
  }[];
32
32
  export declare function collectPrimaryKeyRowIdentity(fields: readonly DataMartSchemaField[]): string[];
33
+ export declare function declaredPrimaryKeyFields(fields: readonly DataMartSchemaField[]): string[];
33
34
  export declare const JOINED_UNIQUE_COUNT_AVAILABILITY_VALUES: readonly ["available", "no-primary-key", "disconnected-primary-key", "nested-primary-key", "nested-and-disconnected-primary-key"];
34
35
  export type JoinedUniqueCountAvailability = (typeof JOINED_UNIQUE_COUNT_AVAILABILITY_VALUES)[number];
35
36
  export declare function classifyJoinedUniqueCountAvailability(fields: readonly DataMartSchemaField[]): JoinedUniqueCountAvailability;
@@ -19,6 +19,7 @@ exports.collectHiddenForReportingPaths = collectHiddenForReportingPaths;
19
19
  exports.collectFormulaReferenceableFields = collectFormulaReferenceableFields;
20
20
  exports.getMainUniqueCountKeyFields = getMainUniqueCountKeyFields;
21
21
  exports.collectPrimaryKeyRowIdentity = collectPrimaryKeyRowIdentity;
22
+ exports.declaredPrimaryKeyFields = declaredPrimaryKeyFields;
22
23
  exports.classifyJoinedUniqueCountAvailability = classifyJoinedUniqueCountAvailability;
23
24
  exports.hasUsablePrimaryKey = hasUsablePrimaryKey;
24
25
  exports.createBaseFieldSchemaForType = createBaseFieldSchemaForType;
@@ -138,6 +139,21 @@ function collectPrimaryKeyRowIdentity(fields) {
138
139
  walk(fields, '', true);
139
140
  return complete ? columns : [];
140
141
  }
142
+ function declaredPrimaryKeyFields(fields) {
143
+ const columns = [];
144
+ const walk = (nodes, prefix) => {
145
+ for (const field of nodes) {
146
+ const fullName = prefix ? `${prefix}.${field.name}` : field.name;
147
+ if (field.isPrimaryKey)
148
+ columns.push(fullName);
149
+ if ('fields' in field && field.fields?.length) {
150
+ walk(field.fields, fullName);
151
+ }
152
+ }
153
+ };
154
+ walk(fields, '');
155
+ return columns;
156
+ }
141
157
  exports.JOINED_UNIQUE_COUNT_AVAILABILITY_VALUES = [
142
158
  'available',
143
159
  'no-primary-key',
@@ -1,6 +1,10 @@
1
1
  import { DataMartSchema } from '../../data-storage-types/data-mart-schema.type';
2
2
  import { JoinedUniqueCountAvailability } from '../../data-storage-types/data-mart-schema.utils';
3
3
  import { AggregateFunction, ReportAggregateFunction } from '../schemas/aggregate-function.schema';
4
+ export declare const MAIN_GRAIN_MULTIPLICATION_VALUES: readonly ["none", "multiplies", "unknown"];
5
+ export type MainGrainMultiplication = (typeof MAIN_GRAIN_MULTIPLICATION_VALUES)[number];
6
+ export declare const MAIN_GRAIN_COLLAPSE_VALUES: readonly ["none", "collapses"];
7
+ export type MainGrainCollapse = (typeof MAIN_GRAIN_COLLAPSE_VALUES)[number];
4
8
  export declare class BlendedFieldDto {
5
9
  name: string;
6
10
  sourceRelationshipId: string;
@@ -34,6 +38,12 @@ export declare class AvailableSourceDto {
34
38
  isAccessibleForReporting: boolean;
35
39
  uniqueCountAvailability: JoinedUniqueCountAvailability;
36
40
  uniqueCountKeyFields: string[];
41
+ mainGrainMultiplication: MainGrainMultiplication;
42
+ mainGrainKeyFields: string[];
43
+ mainGrainUnprovenAt?: string;
44
+ mainGrainMultipliedAt?: string;
45
+ mainGrainCollapse: MainGrainCollapse;
46
+ mainGrainCollapsedAt?: string;
37
47
  }
38
48
  export declare class CalculatedFieldIssueDto {
39
49
  field: string;
@@ -9,10 +9,12 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.BlendableSchemaDto = exports.CalculatedFieldIssueDto = exports.AvailableSourceDto = exports.BlendedFieldDto = void 0;
12
+ exports.BlendableSchemaDto = exports.CalculatedFieldIssueDto = exports.AvailableSourceDto = exports.BlendedFieldDto = exports.MAIN_GRAIN_COLLAPSE_VALUES = exports.MAIN_GRAIN_MULTIPLICATION_VALUES = void 0;
13
13
  const swagger_1 = require("@nestjs/swagger");
14
14
  const data_mart_schema_utils_1 = require("../../data-storage-types/data-mart-schema.utils");
15
15
  const aggregate_function_schema_1 = require("../schemas/aggregate-function.schema");
16
+ exports.MAIN_GRAIN_MULTIPLICATION_VALUES = ['none', 'multiplies', 'unknown'];
17
+ exports.MAIN_GRAIN_COLLAPSE_VALUES = ['none', 'collapses'];
16
18
  class BlendedFieldDto {
17
19
  name;
18
20
  sourceRelationshipId;
@@ -153,6 +155,12 @@ class AvailableSourceDto {
153
155
  isAccessibleForReporting;
154
156
  uniqueCountAvailability;
155
157
  uniqueCountKeyFields;
158
+ mainGrainMultiplication;
159
+ mainGrainKeyFields;
160
+ mainGrainUnprovenAt;
161
+ mainGrainMultipliedAt;
162
+ mainGrainCollapse;
163
+ mainGrainCollapsedAt;
156
164
  }
157
165
  exports.AvailableSourceDto = AvailableSourceDto;
158
166
  __decorate([
@@ -225,6 +233,68 @@ __decorate([
225
233
  }),
226
234
  __metadata("design:type", Array)
227
235
  ], AvailableSourceDto.prototype, "uniqueCountKeyFields", void 0);
236
+ __decorate([
237
+ (0, swagger_1.ApiProperty)({
238
+ enum: exports.MAIN_GRAIN_MULTIPLICATION_VALUES,
239
+ description: "Whether this source's rows are multiplied when attached to the main Data Mart — the join " +
240
+ 'key is not proven unique on its parent, so one joined value can land on several main rows. ' +
241
+ 'A fact about ROWS: what each aggregate makes of it differs per aggregate. `none` — every hop ' +
242
+ "from the main Data Mart down to this source is keyed by its parent's primary key, so nothing " +
243
+ 'is multiplied. `multiplies` — at least one hop is keyed by something that does not cover its ' +
244
+ "parent's primary key. `unknown` — some parent on the chain declares no primary key, so " +
245
+ 'uniqueness is undecidable in either direction. A client that does not know this property ' +
246
+ 'must read its absence as `unknown`, never as `none`: the fallback has to be the one that ' +
247
+ 'still warns.',
248
+ }),
249
+ __metadata("design:type", String)
250
+ ], AvailableSourceDto.prototype, "mainGrainMultiplication", void 0);
251
+ __decorate([
252
+ (0, swagger_1.ApiProperty)({
253
+ type: [String],
254
+ description: "The join-key columns of the hop that multiplies, named on that hop's parent, so a message " +
255
+ 'can tell an analyst which key is at fault. Empty whenever mainGrainMultiplication is not ' +
256
+ '`multiplies`.',
257
+ }),
258
+ __metadata("design:type", Array)
259
+ ], AvailableSourceDto.prototype, "mainGrainKeyFields", void 0);
260
+ __decorate([
261
+ (0, swagger_1.ApiPropertyOptional)({
262
+ description: 'The aliasPath of the Data Mart that declares no primary key, so a message can name the one ' +
263
+ 'that needs it. An empty string means the main Data Mart itself. Present only when ' +
264
+ 'mainGrainMultiplication is `unknown`.',
265
+ }),
266
+ __metadata("design:type", String)
267
+ ], AvailableSourceDto.prototype, "mainGrainUnprovenAt", void 0);
268
+ __decorate([
269
+ (0, swagger_1.ApiPropertyOptional)({
270
+ description: 'The aliasPath of the hop that multiplies, which is NOT always this source: a verdict is ' +
271
+ "inherited down the chain together with the failing hop's key, so mainGrainKeyFields can " +
272
+ 'belong to an ancestor. A message that names this source as the one joined on that key ' +
273
+ 'sends an analyst to edit the wrong relationship. Present only when ' +
274
+ 'mainGrainMultiplication is `multiplies`.',
275
+ }),
276
+ __metadata("design:type", String)
277
+ ], AvailableSourceDto.prototype, "mainGrainMultipliedAt", void 0);
278
+ __decorate([
279
+ (0, swagger_1.ApiProperty)({
280
+ enum: exports.MAIN_GRAIN_COLLAPSE_VALUES,
281
+ description: 'The other side of the same joins: whether several rows of a joined Data Mart can share one ' +
282
+ 'join-key value and so collapse into a single match. A joined Data Mart is attached to the ' +
283
+ 'main one collapsed to one row per key, so an aggregate read off that collapsed row — a ' +
284
+ 'non-DISTINCT `COUNT` — counts main rows, and comes out lower than the joined rows. `none` — ' +
285
+ "every hop from the main Data Mart down to this source is keyed by its target's primary key. " +
286
+ '`collapses` — at least one is not, or its target declares no primary key. A client that does ' +
287
+ 'not know this property must read its absence as `collapses`.',
288
+ }),
289
+ __metadata("design:type", String)
290
+ ], AvailableSourceDto.prototype, "mainGrainCollapse", void 0);
291
+ __decorate([
292
+ (0, swagger_1.ApiPropertyOptional)({
293
+ description: 'The aliasPath of the hop whose target rows collapse — the one closest to the main Data ' +
294
+ 'Mart, which is not always this source. Present only when mainGrainCollapse is `collapses`.',
295
+ }),
296
+ __metadata("design:type", String)
297
+ ], AvailableSourceDto.prototype, "mainGrainCollapsedAt", void 0);
228
298
  class CalculatedFieldIssueDto {
229
299
  field;
230
300
  missing;
@@ -1,8 +1,10 @@
1
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
1
2
  export declare class CreateDataMartCommand {
2
3
  readonly projectId: string;
3
4
  readonly userId: string;
4
5
  readonly title: string;
5
6
  readonly storageId: string;
6
7
  readonly roles: string[];
7
- constructor(projectId: string, userId: string, title: string, storageId: string, roles?: string[]);
8
+ readonly icon: DataMartIcon | null;
9
+ constructor(projectId: string, userId: string, title: string, storageId: string, roles?: string[], icon?: DataMartIcon | null);
8
10
  }
@@ -7,12 +7,14 @@ class CreateDataMartCommand {
7
7
  title;
8
8
  storageId;
9
9
  roles;
10
- constructor(projectId, userId, title, storageId, roles = []) {
10
+ icon;
11
+ constructor(projectId, userId, title, storageId, roles = [], icon = null) {
11
12
  this.projectId = projectId;
12
13
  this.userId = userId;
13
14
  this.title = title;
14
15
  this.storageId = storageId;
15
16
  this.roles = roles;
17
+ this.icon = icon;
16
18
  }
17
19
  }
18
20
  exports.CreateDataMartCommand = CreateDataMartCommand;
@@ -5,6 +5,7 @@ import { SortConfig } from '../schemas/sort-config.schema';
5
5
  import { AggregationConfig } from '../schemas/aggregation-config.schema';
6
6
  import { DateTruncConfig } from '../schemas/date-trunc-config.schema';
7
7
  import { UniqueCountConfig } from '../schemas/unique-count-config.schema';
8
+ import { AutoAggregationOptOut } from '../schemas/auto-aggregation-opt-out.schema';
8
9
  export declare class CreateReportCommand {
9
10
  readonly projectId: string;
10
11
  readonly userId: string;
@@ -21,5 +22,6 @@ export declare class CreateReportCommand {
21
22
  readonly aggregationConfig?: (AggregationConfig | null) | undefined;
22
23
  readonly dateTruncConfig?: (DateTruncConfig | null) | undefined;
23
24
  readonly uniqueCountConfig?: UniqueCountConfig | undefined;
24
- constructor(projectId: string, userId: string, title: string, dataMartId: string, dataDestinationId: string, destinationConfig: DataDestinationConfig, ownerIds?: string[] | undefined, roles?: string[], columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined);
25
+ readonly autoAggregationOptOut?: AutoAggregationOptOut | undefined;
26
+ constructor(projectId: string, userId: string, title: string, dataMartId: string, dataDestinationId: string, destinationConfig: DataDestinationConfig, ownerIds?: string[] | undefined, roles?: string[], columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined, autoAggregationOptOut?: AutoAggregationOptOut | undefined);
25
27
  }
@@ -17,7 +17,8 @@ class CreateReportCommand {
17
17
  aggregationConfig;
18
18
  dateTruncConfig;
19
19
  uniqueCountConfig;
20
- constructor(projectId, userId, title, dataMartId, dataDestinationId, destinationConfig, ownerIds, roles = [], columnConfig, filterConfig, sortConfig, limitConfig, aggregationConfig, dateTruncConfig, uniqueCountConfig) {
20
+ autoAggregationOptOut;
21
+ constructor(projectId, userId, title, dataMartId, dataDestinationId, destinationConfig, ownerIds, roles = [], columnConfig, filterConfig, sortConfig, limitConfig, aggregationConfig, dateTruncConfig, uniqueCountConfig, autoAggregationOptOut) {
21
22
  this.projectId = projectId;
22
23
  this.userId = userId;
23
24
  this.title = title;
@@ -33,6 +34,7 @@ class CreateReportCommand {
33
34
  this.aggregationConfig = aggregationConfig;
34
35
  this.dateTruncConfig = dateTruncConfig;
35
36
  this.uniqueCountConfig = uniqueCountConfig;
37
+ this.autoAggregationOptOut = autoAggregationOptOut;
36
38
  }
37
39
  }
38
40
  exports.CreateReportCommand = CreateReportCommand;
@@ -5,6 +5,7 @@ import { DataMartStatus } from '../../enums/data-mart-status.enum';
5
5
  import { DataStorageType } from '../../data-storage-types/enums/data-storage-type.enum';
6
6
  import { ContextSummary } from '../../utils/extract-context-summaries';
7
7
  import { SourceDataLastUpdatedSummary } from '../schemas/source-data-last-updated.schema';
8
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
8
9
  export declare class DataMartListItemDto {
9
10
  readonly id: string;
10
11
  readonly title: string;
@@ -25,5 +26,6 @@ export declare class DataMartListItemDto {
25
26
  readonly availableForReporting: boolean;
26
27
  readonly availableForMaintenance: boolean;
27
28
  readonly dataLastUpdated: SourceDataLastUpdatedSummary | null;
28
- constructor(id: string, title: string, status: DataMartStatus, storageType: DataStorageType, storageTitle: string, createdAt: Date, modifiedAt: Date, description?: string | null, definitionType?: (DataMartDefinitionType | null) | undefined, definition?: DataMartDefinition | undefined, triggersCount?: number, reportsCount?: number, createdByUser?: UserProjectionDto | null, businessOwnerUsers?: UserProjectionDto[], technicalOwnerUsers?: UserProjectionDto[], contexts?: ContextSummary[], availableForReporting?: boolean, availableForMaintenance?: boolean, dataLastUpdated?: SourceDataLastUpdatedSummary | null);
29
+ readonly icon: DataMartIcon | null;
30
+ constructor(id: string, title: string, status: DataMartStatus, storageType: DataStorageType, storageTitle: string, createdAt: Date, modifiedAt: Date, description?: string | null, definitionType?: (DataMartDefinitionType | null) | undefined, definition?: DataMartDefinition | undefined, triggersCount?: number, reportsCount?: number, createdByUser?: UserProjectionDto | null, businessOwnerUsers?: UserProjectionDto[], technicalOwnerUsers?: UserProjectionDto[], contexts?: ContextSummary[], availableForReporting?: boolean, availableForMaintenance?: boolean, dataLastUpdated?: SourceDataLastUpdatedSummary | null, icon?: DataMartIcon | null);
29
31
  }
@@ -21,7 +21,8 @@ class DataMartListItemDto {
21
21
  availableForReporting;
22
22
  availableForMaintenance;
23
23
  dataLastUpdated;
24
- constructor(id, title, status, storageType, storageTitle, createdAt, modifiedAt, description = null, definitionType, definition, triggersCount = 0, reportsCount = 0, createdByUser = null, businessOwnerUsers = [], technicalOwnerUsers = [], contexts = [], availableForReporting = true, availableForMaintenance = false, dataLastUpdated = null) {
24
+ icon;
25
+ constructor(id, title, status, storageType, storageTitle, createdAt, modifiedAt, description = null, definitionType, definition, triggersCount = 0, reportsCount = 0, createdByUser = null, businessOwnerUsers = [], technicalOwnerUsers = [], contexts = [], availableForReporting = true, availableForMaintenance = false, dataLastUpdated = null, icon = null) {
25
26
  this.id = id;
26
27
  this.title = title;
27
28
  this.status = status;
@@ -41,6 +42,7 @@ class DataMartListItemDto {
41
42
  this.availableForReporting = availableForReporting;
42
43
  this.availableForMaintenance = availableForMaintenance;
43
44
  this.dataLastUpdated = dataLastUpdated;
45
+ this.icon = icon;
44
46
  }
45
47
  }
46
48
  exports.DataMartListItemDto = DataMartListItemDto;
@@ -8,8 +8,10 @@ import { ConnectorState as ConnectorStateData } from '../../connector-types/inte
8
8
  import { BlendedFieldsConfig } from '../schemas/blended-fields-config.schema';
9
9
  import { ContextSummary } from '../../utils/extract-context-summaries';
10
10
  import { SourceDataLastUpdated } from '../schemas/source-data-last-updated.schema';
11
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
11
12
  export declare class DataMartDto {
12
13
  readonly id: string;
14
+ readonly projectId: string;
13
15
  readonly title: string;
14
16
  readonly status: DataMartStatus;
15
17
  readonly storage: DataStorageDto;
@@ -30,5 +32,6 @@ export declare class DataMartDto {
30
32
  readonly blendedFieldsConfig?: BlendedFieldsConfig | undefined;
31
33
  readonly contexts: ContextSummary[];
32
34
  readonly dataLastUpdated: SourceDataLastUpdated | null;
33
- constructor(id: string, title: string, status: DataMartStatus, storage: DataStorageDto, createdAt: Date, modifiedAt: Date, definitionType?: DataMartDefinitionType | undefined, definition?: DataMartDefinition | undefined, description?: string | undefined, schema?: DataMartSchema | undefined, connectorState?: ConnectorStateData | undefined, triggersCount?: number, reportsCount?: number, createdByUser?: UserProjectionDto | null, businessOwnerUsers?: UserProjectionDto[], technicalOwnerUsers?: UserProjectionDto[], availableForReporting?: boolean, availableForMaintenance?: boolean, blendedFieldsConfig?: BlendedFieldsConfig | undefined, contexts?: ContextSummary[], dataLastUpdated?: SourceDataLastUpdated | null);
35
+ readonly icon: DataMartIcon | null;
36
+ constructor(id: string, projectId: string, title: string, status: DataMartStatus, storage: DataStorageDto, createdAt: Date, modifiedAt: Date, definitionType?: DataMartDefinitionType | undefined, definition?: DataMartDefinition | undefined, description?: string | undefined, schema?: DataMartSchema | undefined, connectorState?: ConnectorStateData | undefined, triggersCount?: number, reportsCount?: number, createdByUser?: UserProjectionDto | null, businessOwnerUsers?: UserProjectionDto[], technicalOwnerUsers?: UserProjectionDto[], availableForReporting?: boolean, availableForMaintenance?: boolean, blendedFieldsConfig?: BlendedFieldsConfig | undefined, contexts?: ContextSummary[], dataLastUpdated?: SourceDataLastUpdated | null, icon?: DataMartIcon | null);
34
37
  }
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataMartDto = void 0;
4
4
  class DataMartDto {
5
5
  id;
6
+ projectId;
6
7
  title;
7
8
  status;
8
9
  storage;
@@ -23,8 +24,10 @@ class DataMartDto {
23
24
  blendedFieldsConfig;
24
25
  contexts;
25
26
  dataLastUpdated;
26
- constructor(id, title, status, storage, createdAt, modifiedAt, definitionType, definition, description, schema, connectorState, triggersCount = 0, reportsCount = 0, createdByUser = null, businessOwnerUsers = [], technicalOwnerUsers = [], availableForReporting = true, availableForMaintenance = true, blendedFieldsConfig, contexts = [], dataLastUpdated = null) {
27
+ icon;
28
+ constructor(id, projectId, title, status, storage, createdAt, modifiedAt, definitionType, definition, description, schema, connectorState, triggersCount = 0, reportsCount = 0, createdByUser = null, businessOwnerUsers = [], technicalOwnerUsers = [], availableForReporting = true, availableForMaintenance = true, blendedFieldsConfig, contexts = [], dataLastUpdated = null, icon = null) {
27
29
  this.id = id;
30
+ this.projectId = projectId;
28
31
  this.title = title;
29
32
  this.status = status;
30
33
  this.storage = storage;
@@ -45,6 +48,7 @@ class DataMartDto {
45
48
  this.blendedFieldsConfig = blendedFieldsConfig;
46
49
  this.contexts = contexts;
47
50
  this.dataLastUpdated = dataLastUpdated;
51
+ this.icon = icon;
48
52
  }
49
53
  }
50
54
  exports.DataMartDto = DataMartDto;
@@ -1,4 +1,5 @@
1
1
  import { DataMartStatus } from '../../enums/data-mart-status.enum';
2
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
2
3
  import { DataMartRelationshipGraphEdgeDto } from './data-mart-relationship-graph-edge.dto';
3
4
  import { SourceDataLastUpdatedSummary } from '../schemas/source-data-last-updated.schema';
4
5
  export interface ModelCanvasNodeDto {
@@ -6,7 +7,10 @@ export interface ModelCanvasNodeDto {
6
7
  title: string;
7
8
  status: DataMartStatus;
8
9
  description: string | null;
10
+ icon: DataMartIcon | null;
9
11
  fieldCount: number;
12
+ triggersCount: number;
13
+ reportsCount: number;
10
14
  dataLastUpdated: SourceDataLastUpdatedSummary | null;
11
15
  }
12
16
  export interface ModelCanvasDataMartsDto {
@@ -7,6 +7,7 @@ import { SortConfig } from '../schemas/sort-config.schema';
7
7
  import { AggregationConfig } from '../schemas/aggregation-config.schema';
8
8
  import { DateTruncConfig } from '../schemas/date-trunc-config.schema';
9
9
  import { UniqueCountConfig } from '../schemas/unique-count-config.schema';
10
+ import { AutoAggregationOptOut } from '../schemas/auto-aggregation-opt-out.schema';
10
11
  export interface ReportLikeReadPlan {
11
12
  dataMart: DataMart;
12
13
  columnConfig?: ReportColumnConfig;
@@ -17,6 +18,7 @@ export interface ReportLikeReadPlan {
17
18
  groupRestriction?: RoutedGroupRestriction;
18
19
  dateTruncConfig?: DateTruncConfig;
19
20
  uniqueCountConfig?: UniqueCountConfig;
21
+ autoAggregationOptOut?: AutoAggregationOptOut;
20
22
  distinct?: boolean;
21
23
  }
22
24
  export type ReportLike = Report | ReportLikeReadPlan;
@@ -8,6 +8,7 @@ import { SortConfig } from '../schemas/sort-config.schema';
8
8
  import { AggregationConfig } from '../schemas/aggregation-config.schema';
9
9
  import { DateTruncConfig } from '../schemas/date-trunc-config.schema';
10
10
  import { UniqueCountConfig } from '../schemas/unique-count-config.schema';
11
+ import { AutoAggregationOptOut } from '../schemas/auto-aggregation-opt-out.schema';
11
12
  import { UserProjectionDto } from '../../../idp/dto/domain/user-projection.dto';
12
13
  export declare class ReportDto {
13
14
  readonly id: string;
@@ -33,5 +34,6 @@ export declare class ReportDto {
33
34
  readonly aggregationConfig?: (AggregationConfig | null) | undefined;
34
35
  readonly dateTruncConfig?: (DateTruncConfig | null) | undefined;
35
36
  readonly uniqueCountConfig?: UniqueCountConfig | undefined;
36
- constructor(id: string, title: string, dataMart: DataMartDto, dataDestinationAccess: DataDestinationDto, destinationConfig: DataDestinationConfig, createdAt: Date, modifiedAt: Date, lastRunAt?: Date | undefined, lastRunError?: string | undefined, lastRunStatus?: ReportRunStatus | undefined, runsCount?: number, createdByUser?: UserProjectionDto | null, ownerUsers?: UserProjectionDto[], columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, canRun?: boolean, canManageTriggers?: boolean, canEditConfig?: boolean, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined);
37
+ readonly autoAggregationOptOut?: AutoAggregationOptOut | undefined;
38
+ constructor(id: string, title: string, dataMart: DataMartDto, dataDestinationAccess: DataDestinationDto, destinationConfig: DataDestinationConfig, createdAt: Date, modifiedAt: Date, lastRunAt?: Date | undefined, lastRunError?: string | undefined, lastRunStatus?: ReportRunStatus | undefined, runsCount?: number, createdByUser?: UserProjectionDto | null, ownerUsers?: UserProjectionDto[], columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, canRun?: boolean, canManageTriggers?: boolean, canEditConfig?: boolean, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined, autoAggregationOptOut?: AutoAggregationOptOut | undefined);
37
39
  }
@@ -25,7 +25,8 @@ class ReportDto {
25
25
  aggregationConfig;
26
26
  dateTruncConfig;
27
27
  uniqueCountConfig;
28
- constructor(id, title, dataMart, dataDestinationAccess, destinationConfig, createdAt, modifiedAt, lastRunAt, lastRunError, lastRunStatus, runsCount = 0, createdByUser = null, ownerUsers = [], columnConfig, filterConfig, sortConfig, limitConfig, canRun = false, canManageTriggers = false, canEditConfig = false, aggregationConfig, dateTruncConfig, uniqueCountConfig) {
28
+ autoAggregationOptOut;
29
+ constructor(id, title, dataMart, dataDestinationAccess, destinationConfig, createdAt, modifiedAt, lastRunAt, lastRunError, lastRunStatus, runsCount = 0, createdByUser = null, ownerUsers = [], columnConfig, filterConfig, sortConfig, limitConfig, canRun = false, canManageTriggers = false, canEditConfig = false, aggregationConfig, dateTruncConfig, uniqueCountConfig, autoAggregationOptOut) {
29
30
  this.id = id;
30
31
  this.title = title;
31
32
  this.dataMart = dataMart;
@@ -49,6 +50,7 @@ class ReportDto {
49
50
  this.aggregationConfig = aggregationConfig;
50
51
  this.dateTruncConfig = dateTruncConfig;
51
52
  this.uniqueCountConfig = uniqueCountConfig;
53
+ this.autoAggregationOptOut = autoAggregationOptOut;
52
54
  }
53
55
  }
54
56
  exports.ReportDto = ReportDto;
@@ -0,0 +1,9 @@
1
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
2
+ export declare class UpdateDataMartIconCommand {
3
+ readonly id: string;
4
+ readonly projectId: string;
5
+ readonly icon: DataMartIcon | null;
6
+ readonly userId: string;
7
+ readonly roles: string[];
8
+ constructor(id: string, projectId: string, icon: DataMartIcon | null, userId?: string, roles?: string[]);
9
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateDataMartIconCommand = void 0;
4
+ class UpdateDataMartIconCommand {
5
+ id;
6
+ projectId;
7
+ icon;
8
+ userId;
9
+ roles;
10
+ constructor(id, projectId, icon, userId = '', roles = []) {
11
+ this.id = id;
12
+ this.projectId = projectId;
13
+ this.icon = icon;
14
+ this.userId = userId;
15
+ this.roles = roles;
16
+ }
17
+ }
18
+ exports.UpdateDataMartIconCommand = UpdateDataMartIconCommand;
19
+ //# sourceMappingURL=update-data-mart-icon.command.js.map
@@ -5,6 +5,7 @@ import { SortConfig } from '../schemas/sort-config.schema';
5
5
  import { AggregationConfig } from '../schemas/aggregation-config.schema';
6
6
  import { DateTruncConfig } from '../schemas/date-trunc-config.schema';
7
7
  import { UniqueCountConfig } from '../schemas/unique-count-config.schema';
8
+ import { AutoAggregationOptOut } from '../schemas/auto-aggregation-opt-out.schema';
8
9
  export declare class UpdateReportCommand {
9
10
  readonly id: string;
10
11
  readonly projectId: string;
@@ -21,5 +22,6 @@ export declare class UpdateReportCommand {
21
22
  readonly aggregationConfig?: (AggregationConfig | null) | undefined;
22
23
  readonly dateTruncConfig?: (DateTruncConfig | null) | undefined;
23
24
  readonly uniqueCountConfig?: UniqueCountConfig | undefined;
24
- constructor(id: string, projectId: string, userId: string, roles: string[], title: string, dataDestinationId: string, destinationConfig: DataDestinationConfig, ownerIds?: string[] | undefined, columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined);
25
+ readonly autoAggregationOptOut?: AutoAggregationOptOut | undefined;
26
+ constructor(id: string, projectId: string, userId: string, roles: string[], title: string, dataDestinationId: string, destinationConfig: DataDestinationConfig, ownerIds?: string[] | undefined, columnConfig?: ReportColumnConfig | undefined, filterConfig?: (FilterConfig | null) | undefined, sortConfig?: (SortConfig | null) | undefined, limitConfig?: number | null | undefined, aggregationConfig?: (AggregationConfig | null) | undefined, dateTruncConfig?: (DateTruncConfig | null) | undefined, uniqueCountConfig?: UniqueCountConfig | undefined, autoAggregationOptOut?: AutoAggregationOptOut | undefined);
25
27
  }
@@ -17,7 +17,8 @@ class UpdateReportCommand {
17
17
  aggregationConfig;
18
18
  dateTruncConfig;
19
19
  uniqueCountConfig;
20
- constructor(id, projectId, userId, roles, title, dataDestinationId, destinationConfig, ownerIds, columnConfig, filterConfig, sortConfig, limitConfig, aggregationConfig, dateTruncConfig, uniqueCountConfig) {
20
+ autoAggregationOptOut;
21
+ constructor(id, projectId, userId, roles, title, dataDestinationId, destinationConfig, ownerIds, columnConfig, filterConfig, sortConfig, limitConfig, aggregationConfig, dateTruncConfig, uniqueCountConfig, autoAggregationOptOut) {
21
22
  this.id = id;
22
23
  this.projectId = projectId;
23
24
  this.userId = userId;
@@ -33,6 +34,7 @@ class UpdateReportCommand {
33
34
  this.aggregationConfig = aggregationConfig;
34
35
  this.dateTruncConfig = dateTruncConfig;
35
36
  this.uniqueCountConfig = uniqueCountConfig;
37
+ this.autoAggregationOptOut = autoAggregationOptOut;
36
38
  }
37
39
  }
38
40
  exports.UpdateReportCommand = UpdateReportCommand;
@@ -1,4 +1,6 @@
1
+ import { DataMartIcon } from '../../enums/data-mart-icon.enum';
1
2
  export declare class CreateDataMartRequestApiDto {
2
3
  title: string;
3
4
  storageId: string;
5
+ icon?: DataMartIcon | null;
4
6
  }