@owox/backend 0.35.0 → 0.37.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.
- package/dist/src/common/exceptions/concurrency-limit-exceeded.exception.d.ts +1 -1
- package/dist/src/common/exceptions/concurrency-limit-exceeded.exception.js +2 -2
- package/dist/src/common/markdown/markdown-parser.service.d.ts +2 -0
- package/dist/src/common/markdown/markdown-parser.service.js +15 -8
- package/dist/src/common/validators/max-byte-length.validator.d.ts +2 -0
- package/dist/src/common/validators/max-byte-length.validator.js +29 -0
- package/dist/src/config/env-validation.config.d.ts +12 -0
- package/dist/src/config/env-validation.config.js +7 -0
- package/dist/src/data-marts/ai-insights/agent/types.d.ts +6 -6
- package/dist/src/data-marts/calculated-fields/calculated-field-validator.service.js +22 -30
- package/dist/src/data-marts/calculated-fields/calculated-field.utils.d.ts +1 -0
- package/dist/src/data-marts/calculated-fields/calculated-field.utils.js +21 -0
- package/dist/src/data-marts/calculated-fields/formula-analyzer.d.ts +1 -0
- package/dist/src/data-marts/calculated-fields/formula-analyzer.js +2 -0
- package/dist/src/data-marts/calculated-fields/formula-violations.d.ts +7 -0
- package/dist/src/data-marts/calculated-fields/formula-violations.js +82 -1
- package/dist/src/data-marts/calculated-fields/join-grain.d.ts +32 -0
- package/dist/src/data-marts/calculated-fields/join-grain.js +107 -0
- package/dist/src/data-marts/calculated-fields/set-quantifier.d.ts +8 -0
- package/dist/src/data-marts/calculated-fields/set-quantifier.js +12 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/connector-message.schema.d.ts +66 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/connector-message.schema.js +13 -1
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-credentials-update.schema.d.ts +3 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-credentials-update.schema.js +1 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-error.schema.d.ts +3 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-error.schema.js +1 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-log.schema.d.ts +12 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-log.schema.js +4 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-requested-date.schema.d.ts +3 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-requested-date.schema.js +1 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-state-update.schema.d.ts +16 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-state-update.schema.js +16 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-status.schema.d.ts +3 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-status.schema.js +1 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-warning.schema.d.ts +3 -0
- package/dist/src/data-marts/connector-types/connector-message/schemas/types/message-warning.schema.js +1 -0
- package/dist/src/data-marts/connector-types/connector-message/services/connector-event.translator.d.ts +10 -0
- package/dist/src/data-marts/connector-types/connector-message/services/connector-event.translator.js +138 -0
- package/dist/src/data-marts/connector-types/connector-message/services/connector-message-parser.service.d.ts +1 -3
- package/dist/src/data-marts/connector-types/connector-message/services/connector-message-parser.service.js +30 -34
- package/dist/src/data-marts/connector-types/connector-message/services/connector-output-capture.service.js +10 -12
- package/dist/src/data-marts/connector-types/connector-message/services/connector-state.service.js +3 -1
- package/dist/src/data-marts/connector-types/enums/connector-message-type-enum.d.ts +1 -0
- package/dist/src/data-marts/connector-types/enums/connector-message-type-enum.js +1 -0
- package/dist/src/data-marts/controllers/connector-definition.controller.d.ts +30 -0
- package/dist/src/data-marts/controllers/connector-definition.controller.js +252 -0
- package/dist/src/data-marts/controllers/data-mart-preview.controller.d.ts +10 -0
- package/dist/src/data-marts/controllers/data-mart-preview.controller.js +58 -0
- package/dist/src/data-marts/controllers/data-mart.controller.d.ts +5 -1
- package/dist/src/data-marts/controllers/data-mart.controller.js +25 -4
- package/dist/src/data-marts/controllers/insight-template.controller.js +4 -4
- package/dist/src/data-marts/controllers/insight.controller.js +5 -5
- package/dist/src/data-marts/controllers/project-data-mart-runs.controller.js +1 -1
- package/dist/src/data-marts/controllers/spec/connector-definition.api.d.ts +12 -0
- package/dist/src/data-marts/controllers/spec/connector-definition.api.js +179 -0
- package/dist/src/data-marts/controllers/spec/data-mart.api.d.ts +1 -0
- package/dist/src/data-marts/controllers/spec/data-mart.api.js +10 -5
- package/dist/src/data-marts/controllers/spec/report-openapi.d.ts +18 -0
- package/dist/src/data-marts/controllers/spec/report-openapi.js +3 -0
- package/dist/src/data-marts/data-marts.module.js +20 -2
- package/dist/src/data-marts/data-storage-types/blending/metric-sleeve.planner.js +3 -12
- package/dist/src/data-marts/data-storage-types/data-mart-schema.utils.d.ts +1 -0
- package/dist/src/data-marts/data-storage-types/data-mart-schema.utils.js +16 -0
- package/dist/src/data-marts/dto/domain/blendable-schema.dto.d.ts +10 -0
- package/dist/src/data-marts/dto/domain/blendable-schema.dto.js +71 -1
- package/dist/src/data-marts/dto/domain/create-data-mart.command.d.ts +3 -1
- package/dist/src/data-marts/dto/domain/create-data-mart.command.js +3 -1
- package/dist/src/data-marts/dto/domain/create-report.command.d.ts +3 -1
- package/dist/src/data-marts/dto/domain/create-report.command.js +3 -1
- package/dist/src/data-marts/dto/domain/data-mart-list-item.dto.d.ts +3 -1
- package/dist/src/data-marts/dto/domain/data-mart-list-item.dto.js +3 -1
- package/dist/src/data-marts/dto/domain/data-mart.dto.d.ts +4 -1
- package/dist/src/data-marts/dto/domain/data-mart.dto.js +5 -1
- package/dist/src/data-marts/dto/domain/model-canvas.dto.d.ts +4 -0
- package/dist/src/data-marts/dto/domain/report-like-read-plan.d.ts +2 -0
- package/dist/src/data-marts/dto/domain/report.dto.d.ts +3 -1
- package/dist/src/data-marts/dto/domain/report.dto.js +3 -1
- package/dist/src/data-marts/dto/domain/update-data-mart-icon.command.d.ts +9 -0
- package/dist/src/data-marts/dto/domain/update-data-mart-icon.command.js +19 -0
- package/dist/src/data-marts/dto/domain/update-report.command.d.ts +3 -1
- package/dist/src/data-marts/dto/domain/update-report.command.js +3 -1
- package/dist/src/data-marts/dto/presentation/create-data-mart-request-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/create-data-mart-request-api.dto.js +16 -0
- package/dist/src/data-marts/dto/presentation/create-report-request-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/create-report-request-api.dto.js +10 -0
- package/dist/src/data-marts/dto/presentation/custom-connector-response.dto.d.ts +46 -0
- package/dist/src/data-marts/dto/presentation/custom-connector-response.dto.js +216 -0
- package/dist/src/data-marts/dto/presentation/custom-connector.dto.d.ts +27 -0
- package/dist/src/data-marts/dto/presentation/custom-connector.dto.js +159 -0
- package/dist/src/data-marts/dto/presentation/data-mart-list-item-response-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/data-mart-list-item-response-api.dto.js +11 -0
- package/dist/src/data-marts/dto/presentation/data-mart-response-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/data-mart-response-api.dto.js +11 -0
- package/dist/src/data-marts/dto/presentation/list-data-marts-query-api.dto.js +1 -1
- package/dist/src/data-marts/dto/presentation/model-canvas-response-api.dto.d.ts +4 -0
- package/dist/src/data-marts/dto/presentation/model-canvas-response-api.dto.js +21 -0
- package/dist/src/data-marts/dto/presentation/preview-data-mart-request-api.dto.d.ts +7 -0
- package/dist/src/data-marts/dto/presentation/preview-data-mart-request-api.dto.js +56 -0
- package/dist/src/data-marts/dto/presentation/preview-data-mart-response-api.dto.d.ts +12 -0
- package/dist/src/data-marts/dto/presentation/preview-data-mart-response-api.dto.js +64 -0
- package/dist/src/data-marts/dto/presentation/report-response-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/report-response-api.dto.js +6 -0
- package/dist/src/data-marts/dto/presentation/run-data-mart-request-api.dto.js +67 -0
- package/dist/src/data-marts/dto/presentation/update-data-mart-description-api.dto.js +3 -0
- package/dist/src/data-marts/dto/presentation/update-data-mart-icon-api.dto.d.ts +4 -0
- package/dist/src/data-marts/dto/presentation/update-data-mart-icon-api.dto.js +33 -0
- package/dist/src/data-marts/dto/presentation/update-report-request-api.dto.d.ts +2 -0
- package/dist/src/data-marts/dto/presentation/update-report-request-api.dto.js +10 -0
- package/dist/src/data-marts/dto/schemas/auto-aggregation-opt-out.schema.d.ts +15 -0
- package/dist/src/data-marts/dto/schemas/auto-aggregation-opt-out.schema.js +29 -0
- package/dist/src/data-marts/dto/schemas/data-mart-run/data-mart-run.schema.d.ts +9 -0
- package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.d.ts +15 -0
- package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.js +1 -0
- package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/data-mart-definition.schema.d.ts +7 -0
- package/dist/src/data-marts/dto/schemas/data-quality/data-quality-run.schema.d.ts +20 -0
- package/dist/src/data-marts/entities/connector-definition-version.entity.d.ts +16 -0
- package/dist/src/data-marts/entities/connector-definition-version.entity.js +78 -0
- package/dist/src/data-marts/entities/connector-definition.entity.d.ts +14 -0
- package/dist/src/data-marts/entities/connector-definition.entity.js +82 -0
- package/dist/src/data-marts/entities/data-mart.entity.d.ts +2 -0
- package/dist/src/data-marts/entities/data-mart.entity.js +5 -0
- package/dist/src/data-marts/entities/report.entity.d.ts +2 -0
- package/dist/src/data-marts/entities/report.entity.js +11 -0
- package/dist/src/data-marts/enums/data-mart-icon.enum.d.ts +81 -0
- package/dist/src/data-marts/enums/data-mart-icon.enum.js +85 -0
- package/dist/src/data-marts/errors/connector-credential-boundary.error.d.ts +3 -0
- package/dist/src/data-marts/errors/connector-credential-boundary.error.js +14 -0
- package/dist/src/data-marts/facades/mcp-data-marts.facade.d.ts +2 -0
- package/dist/src/data-marts/facades/mcp-data-marts.facade.impl.d.ts +7 -1
- package/dist/src/data-marts/facades/mcp-data-marts.facade.impl.js +70 -5
- package/dist/src/data-marts/mappers/connector-definition.mapper.d.ts +14 -0
- package/dist/src/data-marts/mappers/connector-definition.mapper.js +57 -0
- package/dist/src/data-marts/mappers/data-mart.mapper.d.ts +9 -6
- package/dist/src/data-marts/mappers/data-mart.mapper.js +44 -19
- package/dist/src/data-marts/mappers/insight-template.mapper.d.ts +1 -1
- package/dist/src/data-marts/mappers/insight-template.mapper.js +2 -2
- package/dist/src/data-marts/mappers/insight.mapper.d.ts +1 -1
- package/dist/src/data-marts/mappers/insight.mapper.js +2 -2
- package/dist/src/data-marts/mappers/model-canvas.mapper.d.ts +10 -2
- package/dist/src/data-marts/mappers/model-canvas.mapper.js +9 -3
- package/dist/src/data-marts/mappers/report.mapper.js +4 -3
- package/dist/src/data-marts/services/auto-collapse.resolver.d.ts +1 -1
- package/dist/src/data-marts/services/auto-collapse.resolver.js +4 -0
- package/dist/src/data-marts/services/blendable-schema.service.d.ts +2 -0
- package/dist/src/data-marts/services/blendable-schema.service.js +59 -0
- package/dist/src/data-marts/services/connector/connector-credential-injector.service.d.ts +1 -1
- package/dist/src/data-marts/services/connector/connector-credential-injector.service.js +15 -1
- package/dist/src/data-marts/services/connector/connector-definition.service.d.ts +59 -0
- package/dist/src/data-marts/services/connector/connector-definition.service.js +493 -0
- package/dist/src/data-marts/services/connector/connector-executor.service.d.ts +9 -1
- package/dist/src/data-marts/services/connector/connector-executor.service.js +173 -63
- package/dist/src/data-marts/services/connector/connector-fields-preview.service.js +1 -1
- package/dist/src/data-marts/services/connector/connector-message.utils.js +2 -2
- package/dist/src/data-marts/services/connector/connector-preview-credentials.service.js +1 -1
- package/dist/src/data-marts/services/connector/connector-preview-support.d.ts +1 -1
- package/dist/src/data-marts/services/connector/connector-preview-support.js +14 -21
- package/dist/src/data-marts/services/connector/connector-process-spawner.service.d.ts +11 -2
- package/dist/src/data-marts/services/connector/connector-process-spawner.service.js +88 -60
- package/dist/src/data-marts/services/connector/connector-secret.service.d.ts +6 -3
- package/dist/src/data-marts/services/connector/connector-secret.service.js +77 -12
- package/dist/src/data-marts/services/connector/connector-source-config.service.js +1 -1
- package/dist/src/data-marts/services/connector/connector-source-credentials.service.d.ts +6 -2
- package/dist/src/data-marts/services/connector/connector-source-credentials.service.js +18 -16
- package/dist/src/data-marts/services/connector/connector-specification.mapper.d.ts +47 -0
- package/dist/src/data-marts/services/connector/connector-specification.mapper.js +46 -0
- package/dist/src/data-marts/services/connector/connector-test.service.d.ts +44 -0
- package/dist/src/data-marts/services/connector/connector-test.service.js +348 -0
- package/dist/src/data-marts/services/connector/connector.service.d.ts +8 -2
- package/dist/src/data-marts/services/connector/connector.service.js +65 -54
- package/dist/src/data-marts/services/connector/declarative-manifest-schemas.d.ts +4 -0
- package/dist/src/data-marts/services/connector/declarative-manifest-schemas.js +48 -0
- package/dist/src/data-marts/services/connector/run-log-flusher.d.ts +21 -0
- package/dist/src/data-marts/services/connector/run-log-flusher.js +67 -0
- package/dist/src/data-marts/services/context/context-access.service.js +2 -2
- package/dist/src/data-marts/services/data-mart.service.js +2 -0
- package/dist/src/data-marts/services/member-ownership-warnings.service.js +1 -1
- package/dist/src/data-marts/services/report-access.service.js +1 -1
- package/dist/src/data-marts/services/report-sql-composer.service.js +15 -1
- package/dist/src/data-marts/services/report.service.d.ts +1 -0
- package/dist/src/data-marts/services/report.service.js +13 -0
- package/dist/src/data-marts/services/scheduled-trigger.service.d.ts +1 -0
- package/dist/src/data-marts/services/scheduled-trigger.service.js +13 -0
- package/dist/src/data-marts/use-cases/create-data-mart.service.js +1 -0
- package/dist/src/data-marts/use-cases/create-report.service.js +2 -0
- package/dist/src/data-marts/use-cases/get-model-canvas-data-marts.service.d.ts +5 -1
- package/dist/src/data-marts/use-cases/get-model-canvas-data-marts.service.js +16 -3
- package/dist/src/data-marts/use-cases/list-project-scheduled-triggers.service.js +1 -1
- package/dist/src/data-marts/use-cases/preview-data-mart.service.d.ts +59 -0
- package/dist/src/data-marts/use-cases/preview-data-mart.service.js +295 -0
- package/dist/src/data-marts/use-cases/stream-http-data.service.js +1 -0
- package/dist/src/data-marts/use-cases/update-availability.service.js +2 -2
- package/dist/src/data-marts/use-cases/update-data-mart-definition.service.d.ts +1 -1
- package/dist/src/data-marts/use-cases/update-data-mart-definition.service.js +9 -7
- package/dist/src/data-marts/use-cases/update-data-mart-icon.service.d.ts +12 -0
- package/dist/src/data-marts/use-cases/update-data-mart-icon.service.js +46 -0
- package/dist/src/data-marts/use-cases/update-data-mart-owners.service.js +1 -1
- package/dist/src/data-marts/use-cases/update-data-mart-schema.service.js +14 -1
- package/dist/src/data-marts/use-cases/update-data-storage.service.js +2 -2
- package/dist/src/data-marts/use-cases/update-report.service.js +9 -1
- package/dist/src/ee/ee.module.js +5 -8
- package/dist/src/ee/mcp/auth/mcp-auth-context.d.ts +0 -4
- package/dist/src/ee/mcp/auth/mcp-auth.middleware.d.ts +26 -0
- package/dist/src/ee/mcp/auth/mcp-auth.middleware.js +184 -0
- package/dist/src/ee/mcp/http-headers.util.d.ts +2 -0
- package/dist/src/ee/mcp/http-headers.util.js +8 -0
- package/dist/src/ee/mcp/instructions/mcp-system-instructions.d.ts +1 -1
- package/dist/src/ee/mcp/instructions/mcp-system-instructions.js +3 -3
- package/dist/src/ee/mcp/observability/mcp-bus-wiring.js +4 -4
- package/dist/src/ee/mcp/observability/mcp-call-instrumentation.d.ts +2 -4
- package/dist/src/ee/mcp/observability/mcp-call-instrumentation.js +6 -6
- package/dist/src/ee/mcp/sdk/mcp-sdk-server.factory.d.ts +1 -1
- package/dist/src/ee/mcp/sdk/mcp-sdk-server.factory.js +5 -5
- package/dist/src/ee/mcp/tools/add-destination.tool.d.ts +20 -14
- package/dist/src/ee/mcp/tools/add-destination.tool.js +10 -10
- package/dist/src/ee/mcp/tools/add-report.tool.d.ts +89 -229
- package/dist/src/ee/mcp/tools/add-report.tool.js +30 -30
- package/dist/src/ee/mcp/tools/create-report-run-schedule.tool.d.ts +2 -12
- package/dist/src/ee/mcp/tools/create-report-run-schedule.tool.js +14 -14
- package/dist/src/ee/mcp/tools/data-mart-catalog.tool.d.ts +15 -81
- package/dist/src/ee/mcp/tools/data-mart-catalog.tool.js +11 -11
- package/dist/src/ee/mcp/tools/data-mart-details.tool.d.ts +19 -111
- package/dist/src/ee/mcp/tools/data-mart-details.tool.js +64 -48
- package/dist/src/ee/mcp/tools/delete-report-run-schedule.tool.d.ts +2 -6
- package/dist/src/ee/mcp/tools/delete-report-run-schedule.tool.js +7 -7
- package/dist/src/ee/mcp/tools/delete-report.tool.d.ts +2 -6
- package/dist/src/ee/mcp/tools/delete-report.tool.js +4 -4
- package/dist/src/ee/mcp/tools/get-data-mart-reports.tool.d.ts +30 -195
- package/dist/src/ee/mcp/tools/get-data-mart-reports.tool.js +22 -22
- package/dist/src/ee/mcp/tools/get-report-output-schema.tool.d.ts +3 -21
- package/dist/src/ee/mcp/tools/get-report-output-schema.tool.js +16 -16
- package/dist/src/ee/mcp/tools/get-report-run-status.tool.d.ts +15 -11
- package/dist/src/ee/mcp/tools/get-report-run-status.tool.js +14 -14
- package/dist/src/ee/mcp/tools/list-destinations.tool.d.ts +12 -20
- package/dist/src/ee/mcp/tools/list-destinations.tool.js +10 -10
- package/dist/src/ee/mcp/tools/list-report-run-schedules.tool.d.ts +5 -61
- package/dist/src/ee/mcp/tools/list-report-run-schedules.tool.js +14 -14
- package/dist/src/ee/mcp/tools/mcp-getting-started.util.d.ts +4 -52
- package/dist/src/ee/mcp/tools/mcp-getting-started.util.js +15 -15
- package/dist/src/ee/mcp/tools/mcp-tool.definition.d.ts +2 -2
- package/dist/src/ee/mcp/tools/project-context.tool.d.ts +3 -17
- package/dist/src/ee/mcp/tools/project-context.tool.js +10 -10
- package/dist/src/ee/mcp/tools/query-data-mart.input.d.ts +111 -152
- package/dist/src/ee/mcp/tools/query-data-mart.input.js +39 -39
- package/dist/src/ee/mcp/tools/query-data-mart.tool.d.ts +60 -130
- package/dist/src/ee/mcp/tools/query-data-mart.tool.js +36 -36
- package/dist/src/ee/mcp/tools/report-output-controls-output.d.ts +17 -60
- package/dist/src/ee/mcp/tools/report-output-controls-output.js +20 -20
- package/dist/src/ee/mcp/tools/report-run-outcome.d.ts +6 -42
- package/dist/src/ee/mcp/tools/report-run-outcome.js +20 -20
- package/dist/src/ee/mcp/tools/run-report.tool.d.ts +2 -6
- package/dist/src/ee/mcp/tools/run-report.tool.js +6 -6
- package/dist/src/ee/mcp/tools/search-data-marts.tool.d.ts +7 -79
- package/dist/src/ee/mcp/tools/search-data-marts.tool.js +11 -11
- package/dist/src/ee/mcp/tools/search-reports.tool.d.ts +15 -61
- package/dist/src/ee/mcp/tools/search-reports.tool.js +15 -15
- package/dist/src/ee/mcp/tools/summarize-data-catalog.tool.d.ts +7 -79
- package/dist/src/ee/mcp/tools/summarize-data-catalog.tool.js +15 -15
- package/dist/src/ee/mcp/tools/update-report-run-schedule.tool.d.ts +3 -13
- package/dist/src/ee/mcp/tools/update-report-run-schedule.tool.js +16 -16
- package/dist/src/ee/mcp/tools/update-report.tool.d.ts +105 -414
- package/dist/src/ee/mcp/tools/update-report.tool.js +21 -21
- package/dist/src/ee/mcp/transport/mcp-http-entry.service.d.ts +30 -0
- package/dist/src/ee/mcp/transport/mcp-http-entry.service.js +193 -0
- package/dist/src/idp/decorators/auth.decorator.js +1 -1
- package/dist/src/idp/guards/idp.guard.js +3 -9
- package/dist/src/idp/oauth/controllers/oauth-authorization.controller.d.ts +4 -0
- package/dist/src/idp/oauth/controllers/oauth-authorization.controller.js +77 -1
- package/dist/src/idp/oauth/controllers/oauth-metadata.controller.d.ts +2 -1
- package/dist/src/idp/oauth/controllers/oauth-metadata.controller.js +5 -8
- package/dist/src/idp/oauth/controllers/oauth-token.controller.js +14 -1
- package/dist/src/idp/oauth/oauth-project-selection.service.js +1 -1
- package/dist/src/idp/oauth/oauth-request.validator.d.ts +8 -0
- package/dist/src/idp/oauth/oauth-request.validator.js +27 -0
- package/dist/src/idp/utils/is-authentication-error.d.ts +1 -0
- package/dist/src/idp/utils/is-authentication-error.js +9 -0
- package/dist/src/idp/utils/role-hierarchy.d.ts +3 -0
- package/dist/src/idp/utils/role-hierarchy.js +14 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +3 -1
- package/dist/src/migrations/1788048000000-create-connector-definition-tables.d.ts +6 -0
- package/dist/src/migrations/1788048000000-create-connector-definition-tables.js +116 -0
- package/dist/src/migrations/1790156789783-add-auto-aggregation-opt-out-to-report.d.ts +8 -0
- package/dist/src/migrations/1790156789783-add-auto-aggregation-opt-out-to-report.js +30 -0
- package/dist/src/migrations/1790247861000-add-icon-to-data-mart.d.ts +8 -0
- package/dist/src/migrations/1790247861000-add-icon-to-data-mart.js +31 -0
- package/package.json +10 -6
- package/dist/src/ee/mcp/auth/mcp-auth.exception-filter.d.ts +0 -14
- package/dist/src/ee/mcp/auth/mcp-auth.exception-filter.js +0 -84
- package/dist/src/ee/mcp/auth/mcp-auth.guard.d.ts +0 -14
- package/dist/src/ee/mcp/auth/mcp-auth.guard.js +0 -99
- package/dist/src/ee/mcp/controllers/mcp-transport.controller.d.ts +0 -17
- package/dist/src/ee/mcp/controllers/mcp-transport.controller.js +0 -134
- package/dist/src/ee/mcp/sdk/mcp-streamable-http-transport.handler.d.ts +0 -16
- package/dist/src/ee/mcp/sdk/mcp-streamable-http-transport.handler.js +0 -133
|
@@ -13,12 +13,16 @@ exports.ModelCanvasEdgesResponseApiDto = exports.ModelCanvasDataMartsResponseApi
|
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const data_mart_status_enum_1 = require("../../enums/data-mart-status.enum");
|
|
15
15
|
const data_mart_data_last_updated_response_api_dto_1 = require("./data-mart-data-last-updated-response-api.dto");
|
|
16
|
+
const data_mart_icon_enum_1 = require("../../enums/data-mart-icon.enum");
|
|
16
17
|
class ModelCanvasNodeApiDto {
|
|
17
18
|
id;
|
|
18
19
|
title;
|
|
19
20
|
status;
|
|
20
21
|
description;
|
|
22
|
+
icon;
|
|
21
23
|
fieldCount;
|
|
24
|
+
triggersCount;
|
|
25
|
+
reportsCount;
|
|
22
26
|
dataLastUpdated;
|
|
23
27
|
}
|
|
24
28
|
exports.ModelCanvasNodeApiDto = ModelCanvasNodeApiDto;
|
|
@@ -38,10 +42,27 @@ __decorate([
|
|
|
38
42
|
(0, swagger_1.ApiProperty)({ type: String, example: 'All orders enriched with customer data', nullable: true }),
|
|
39
43
|
__metadata("design:type", Object)
|
|
40
44
|
], ModelCanvasNodeApiDto.prototype, "description", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, swagger_1.ApiProperty)({
|
|
47
|
+
type: String,
|
|
48
|
+
nullable: true,
|
|
49
|
+
example: 'purchases',
|
|
50
|
+
description: `User-picked icon: ${data_mart_icon_enum_1.DATA_MART_ICON_API_DESCRIPTION} null means the default icon.`,
|
|
51
|
+
}),
|
|
52
|
+
__metadata("design:type", Object)
|
|
53
|
+
], ModelCanvasNodeApiDto.prototype, "icon", void 0);
|
|
41
54
|
__decorate([
|
|
42
55
|
(0, swagger_1.ApiProperty)({ example: 12, description: 'Number of fields in the output schema' }),
|
|
43
56
|
__metadata("design:type", Number)
|
|
44
57
|
], ModelCanvasNodeApiDto.prototype, "fieldCount", void 0);
|
|
58
|
+
__decorate([
|
|
59
|
+
(0, swagger_1.ApiProperty)({ example: 2, description: 'Number of scheduled triggers of the Data Mart' }),
|
|
60
|
+
__metadata("design:type", Number)
|
|
61
|
+
], ModelCanvasNodeApiDto.prototype, "triggersCount", void 0);
|
|
62
|
+
__decorate([
|
|
63
|
+
(0, swagger_1.ApiProperty)({ example: 3, description: 'Number of reports built on the Data Mart' }),
|
|
64
|
+
__metadata("design:type", Number)
|
|
65
|
+
], ModelCanvasNodeApiDto.prototype, "reportsCount", void 0);
|
|
45
66
|
__decorate([
|
|
46
67
|
(0, swagger_1.ApiProperty)({
|
|
47
68
|
type: data_mart_data_last_updated_response_api_dto_1.DataMartDataLastUpdatedSummaryApiDto,
|
|
@@ -0,0 +1,56 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PreviewDataMartRequestApiDto = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const preview_data_mart_service_1 = require("../../use-cases/preview-data-mart.service");
|
|
16
|
+
class PreviewDataMartRequestApiDto {
|
|
17
|
+
limit;
|
|
18
|
+
filters;
|
|
19
|
+
sort;
|
|
20
|
+
}
|
|
21
|
+
exports.PreviewDataMartRequestApiDto = PreviewDataMartRequestApiDto;
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
24
|
+
description: 'How many rows to read from the warehouse. Defaults to 10.',
|
|
25
|
+
minimum: 1,
|
|
26
|
+
maximum: preview_data_mart_service_1.PREVIEW_MAX_LIMIT,
|
|
27
|
+
example: 10,
|
|
28
|
+
}),
|
|
29
|
+
(0, class_validator_1.IsOptional)(),
|
|
30
|
+
(0, class_validator_1.IsInt)(),
|
|
31
|
+
(0, class_validator_1.Min)(1),
|
|
32
|
+
(0, class_validator_1.Max)(preview_data_mart_service_1.PREVIEW_MAX_LIMIT),
|
|
33
|
+
__metadata("design:type", Number)
|
|
34
|
+
], PreviewDataMartRequestApiDto.prototype, "limit", void 0);
|
|
35
|
+
__decorate([
|
|
36
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
37
|
+
description: 'WHERE filters on native fields, in the same rule format as a report filterConfig.',
|
|
38
|
+
type: 'array',
|
|
39
|
+
items: { type: 'object' },
|
|
40
|
+
}),
|
|
41
|
+
(0, class_validator_1.IsOptional)(),
|
|
42
|
+
(0, class_validator_1.IsArray)(),
|
|
43
|
+
__metadata("design:type", Object)
|
|
44
|
+
], PreviewDataMartRequestApiDto.prototype, "filters", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
47
|
+
description: 'ORDER BY rules on native fields, in the same format as a report sortConfig.',
|
|
48
|
+
type: 'array',
|
|
49
|
+
items: { type: 'object' },
|
|
50
|
+
example: [{ column: 'revenue', direction: 'desc' }],
|
|
51
|
+
}),
|
|
52
|
+
(0, class_validator_1.IsOptional)(),
|
|
53
|
+
(0, class_validator_1.IsArray)(),
|
|
54
|
+
__metadata("design:type", Object)
|
|
55
|
+
], PreviewDataMartRequestApiDto.prototype, "sort", void 0);
|
|
56
|
+
//# sourceMappingURL=preview-data-mart-request-api.dto.js.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class DataMartPreviewColumnApiDto {
|
|
2
|
+
name: string;
|
|
3
|
+
alias?: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class PreviewDataMartResponseApiDto {
|
|
7
|
+
columns: DataMartPreviewColumnApiDto[];
|
|
8
|
+
rows: (string | number | boolean | null)[][];
|
|
9
|
+
rowCount: number;
|
|
10
|
+
limit: number;
|
|
11
|
+
truncated: boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.PreviewDataMartResponseApiDto = exports.DataMartPreviewColumnApiDto = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
class DataMartPreviewColumnApiDto {
|
|
15
|
+
name;
|
|
16
|
+
alias;
|
|
17
|
+
type;
|
|
18
|
+
}
|
|
19
|
+
exports.DataMartPreviewColumnApiDto = DataMartPreviewColumnApiDto;
|
|
20
|
+
__decorate([
|
|
21
|
+
(0, swagger_1.ApiProperty)({ example: 'country' }),
|
|
22
|
+
__metadata("design:type", String)
|
|
23
|
+
], DataMartPreviewColumnApiDto.prototype, "name", void 0);
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, swagger_1.ApiPropertyOptional)({ example: 'Country Name' }),
|
|
26
|
+
__metadata("design:type", String)
|
|
27
|
+
], DataMartPreviewColumnApiDto.prototype, "alias", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
(0, swagger_1.ApiPropertyOptional)({ example: 'STRING', description: 'Storage field type' }),
|
|
30
|
+
__metadata("design:type", String)
|
|
31
|
+
], DataMartPreviewColumnApiDto.prototype, "type", void 0);
|
|
32
|
+
class PreviewDataMartResponseApiDto {
|
|
33
|
+
columns;
|
|
34
|
+
rows;
|
|
35
|
+
rowCount;
|
|
36
|
+
limit;
|
|
37
|
+
truncated;
|
|
38
|
+
}
|
|
39
|
+
exports.PreviewDataMartResponseApiDto = PreviewDataMartResponseApiDto;
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, swagger_1.ApiProperty)({ type: [DataMartPreviewColumnApiDto] }),
|
|
42
|
+
__metadata("design:type", Array)
|
|
43
|
+
], PreviewDataMartResponseApiDto.prototype, "columns", void 0);
|
|
44
|
+
__decorate([
|
|
45
|
+
(0, swagger_1.ApiProperty)({
|
|
46
|
+
description: 'Rows in column order; RECORD/ARRAY values are JSON text',
|
|
47
|
+
type: 'array',
|
|
48
|
+
items: { type: 'array', items: {} },
|
|
49
|
+
}),
|
|
50
|
+
__metadata("design:type", Array)
|
|
51
|
+
], PreviewDataMartResponseApiDto.prototype, "rows", void 0);
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, swagger_1.ApiProperty)({ example: 10 }),
|
|
54
|
+
__metadata("design:type", Number)
|
|
55
|
+
], PreviewDataMartResponseApiDto.prototype, "rowCount", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
(0, swagger_1.ApiProperty)({ example: 10 }),
|
|
58
|
+
__metadata("design:type", Number)
|
|
59
|
+
], PreviewDataMartResponseApiDto.prototype, "limit", void 0);
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, swagger_1.ApiProperty)({ description: 'More rows matched than the limit' }),
|
|
62
|
+
__metadata("design:type", Boolean)
|
|
63
|
+
], PreviewDataMartResponseApiDto.prototype, "truncated", void 0);
|
|
64
|
+
//# sourceMappingURL=preview-data-mart-response-api.dto.js.map
|
|
@@ -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 ReportResponseApiDto {
|
|
13
14
|
id: string;
|
|
@@ -22,6 +23,7 @@ export declare class ReportResponseApiDto {
|
|
|
22
23
|
aggregationConfig?: AggregationConfig | null;
|
|
23
24
|
dateTruncConfig?: DateTruncConfig | null;
|
|
24
25
|
uniqueCountConfig?: UniqueCountConfig;
|
|
26
|
+
autoAggregationOptOut?: AutoAggregationOptOut;
|
|
25
27
|
lastRunAt?: Date;
|
|
26
28
|
lastRunStatus?: ReportRunStatus;
|
|
27
29
|
lastRunError?: string;
|
|
@@ -14,6 +14,7 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
14
14
|
const data_mart_response_api_dto_1 = require("./data-mart-response-api.dto");
|
|
15
15
|
const data_destination_response_api_dto_1 = require("./data-destination-response-api.dto");
|
|
16
16
|
const report_run_status_enum_1 = require("../../enums/report-run-status.enum");
|
|
17
|
+
const auto_aggregation_opt_out_schema_1 = require("../schemas/auto-aggregation-opt-out.schema");
|
|
17
18
|
const user_projection_dto_1 = require("../../../idp/dto/domain/user-projection.dto");
|
|
18
19
|
class ReportResponseApiDto {
|
|
19
20
|
id;
|
|
@@ -28,6 +29,7 @@ class ReportResponseApiDto {
|
|
|
28
29
|
aggregationConfig;
|
|
29
30
|
dateTruncConfig;
|
|
30
31
|
uniqueCountConfig;
|
|
32
|
+
autoAggregationOptOut;
|
|
31
33
|
lastRunAt;
|
|
32
34
|
lastRunStatus;
|
|
33
35
|
lastRunError;
|
|
@@ -128,6 +130,10 @@ __decorate([
|
|
|
128
130
|
}),
|
|
129
131
|
__metadata("design:type", Object)
|
|
130
132
|
], ReportResponseApiDto.prototype, "uniqueCountConfig", void 0);
|
|
133
|
+
__decorate([
|
|
134
|
+
(0, swagger_1.ApiProperty)({ ...auto_aggregation_opt_out_schema_1.AUTO_AGGREGATION_OPT_OUT_OPENAPI, required: false }),
|
|
135
|
+
__metadata("design:type", Object)
|
|
136
|
+
], ReportResponseApiDto.prototype, "autoAggregationOptOut", void 0);
|
|
131
137
|
__decorate([
|
|
132
138
|
(0, swagger_1.ApiProperty)({ nullable: true }),
|
|
133
139
|
__metadata("design:type", Date)
|
|
@@ -17,6 +17,72 @@ const MAX_PAYLOAD_SIZE_BYTES = 1024 * 1024;
|
|
|
17
17
|
function isRecord(value) {
|
|
18
18
|
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
19
19
|
}
|
|
20
|
+
function parseBackfillDate(value) {
|
|
21
|
+
if (value instanceof Date) {
|
|
22
|
+
return Number.isNaN(value.getTime())
|
|
23
|
+
? NaN
|
|
24
|
+
: Date.UTC(value.getUTCFullYear(), value.getUTCMonth(), value.getUTCDate());
|
|
25
|
+
}
|
|
26
|
+
if (typeof value === 'number') {
|
|
27
|
+
if (!Number.isFinite(value))
|
|
28
|
+
return NaN;
|
|
29
|
+
const asDate = new Date(value);
|
|
30
|
+
return Date.UTC(asDate.getUTCFullYear(), asDate.getUTCMonth(), asDate.getUTCDate());
|
|
31
|
+
}
|
|
32
|
+
if (typeof value !== 'string')
|
|
33
|
+
return NaN;
|
|
34
|
+
const match = /^(\d{4})-(\d{1,2})-(\d{1,2})(?:[Tt ].*)?$/.exec(value.trim());
|
|
35
|
+
if (!match)
|
|
36
|
+
return NaN;
|
|
37
|
+
return Date.UTC(Number(match[1]), Number(match[2]) - 1, Number(match[3]));
|
|
38
|
+
}
|
|
39
|
+
function manualBackfillWindowError(data) {
|
|
40
|
+
const startDate = data.StartDate;
|
|
41
|
+
const endDate = data.EndDate;
|
|
42
|
+
const startMs = startDate ? parseBackfillDate(startDate) : null;
|
|
43
|
+
const endMs = endDate ? parseBackfillDate(endDate) : null;
|
|
44
|
+
if (startMs !== null && Number.isNaN(startMs)) {
|
|
45
|
+
return unreadableDateMessage('StartDate', startDate);
|
|
46
|
+
}
|
|
47
|
+
if (endMs !== null && Number.isNaN(endMs)) {
|
|
48
|
+
return unreadableDateMessage('EndDate', endDate);
|
|
49
|
+
}
|
|
50
|
+
if (startMs !== null && endMs !== null && endMs < startMs) {
|
|
51
|
+
return `EndDate (${String(endDate)}) cannot be earlier than StartDate (${String(startDate)})`;
|
|
52
|
+
}
|
|
53
|
+
const now = new Date();
|
|
54
|
+
const todayMs = Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate());
|
|
55
|
+
if (startMs !== null && startMs > todayMs) {
|
|
56
|
+
return `StartDate (${String(startDate)}) cannot be in the future`;
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
function unreadableDateMessage(field, value) {
|
|
61
|
+
return (`${field} (${String(value)}) is not a valid date. Use YYYY-MM-DD (e.g. 2024-01-15) or an ` +
|
|
62
|
+
`ISO-8601 timestamp (e.g. 2024-01-15T00:00:00.000Z).`);
|
|
63
|
+
}
|
|
64
|
+
function IsManualBackfillDateRange(validationOptions) {
|
|
65
|
+
return (0, class_validator_1.ValidateBy)({
|
|
66
|
+
name: 'isManualBackfillDateRange',
|
|
67
|
+
validator: {
|
|
68
|
+
validate(value) {
|
|
69
|
+
if (!isRecord(value) || value.runType !== 'MANUAL_BACKFILL')
|
|
70
|
+
return true;
|
|
71
|
+
if (!isRecord(value.data))
|
|
72
|
+
return true;
|
|
73
|
+
return manualBackfillWindowError(value.data) === null;
|
|
74
|
+
},
|
|
75
|
+
defaultMessage: (args) => {
|
|
76
|
+
const fallback = 'manual-backfill window is invalid';
|
|
77
|
+
const value = args?.value;
|
|
78
|
+
if (!isRecord(value) || !isRecord(value.data)) {
|
|
79
|
+
return fallback;
|
|
80
|
+
}
|
|
81
|
+
return manualBackfillWindowError(value.data) ?? fallback;
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
}, validationOptions);
|
|
85
|
+
}
|
|
20
86
|
function IsRunDataMartPayload(validationOptions) {
|
|
21
87
|
return (0, class_validator_1.ValidateBy)({
|
|
22
88
|
name: 'isRunDataMartPayload',
|
|
@@ -91,6 +157,7 @@ __decorate([
|
|
|
91
157
|
(0, class_validator_1.ValidateIf)((_object, value) => value !== undefined),
|
|
92
158
|
(0, class_validator_1.IsObject)(),
|
|
93
159
|
IsRunDataMartPayload(),
|
|
160
|
+
IsManualBackfillDateRange(),
|
|
94
161
|
(0, max_json_size_validator_1.MaxJsonSize)(MAX_PAYLOAD_SIZE_BYTES),
|
|
95
162
|
(0, swagger_1.ApiPropertyOptional)({
|
|
96
163
|
oneOf: [
|
|
@@ -12,6 +12,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.UpdateDataMartDescriptionApiDto = void 0;
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
+
const max_byte_length_validator_1 = require("../../../common/validators/max-byte-length.validator");
|
|
16
|
+
const MAX_TEXT_COLUMN_BYTES = 65535;
|
|
15
17
|
class UpdateDataMartDescriptionApiDto {
|
|
16
18
|
description;
|
|
17
19
|
}
|
|
@@ -22,6 +24,7 @@ __decorate([
|
|
|
22
24
|
(0, class_validator_1.ValidateIf)(obj => obj.description !== null),
|
|
23
25
|
(0, class_validator_1.IsString)(),
|
|
24
26
|
(0, class_validator_1.MinLength)(1),
|
|
27
|
+
(0, max_byte_length_validator_1.MaxByteLength)(MAX_TEXT_COLUMN_BYTES),
|
|
25
28
|
__metadata("design:type", String)
|
|
26
29
|
], UpdateDataMartDescriptionApiDto.prototype, "description", void 0);
|
|
27
30
|
//# sourceMappingURL=update-data-mart-description-api.dto.js.map
|
|
@@ -0,0 +1,33 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.UpdateDataMartIconApiDto = void 0;
|
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
+
const class_validator_1 = require("class-validator");
|
|
15
|
+
const data_mart_icon_enum_1 = require("../../enums/data-mart-icon.enum");
|
|
16
|
+
class UpdateDataMartIconApiDto {
|
|
17
|
+
icon;
|
|
18
|
+
}
|
|
19
|
+
exports.UpdateDataMartIconApiDto = UpdateDataMartIconApiDto;
|
|
20
|
+
__decorate([
|
|
21
|
+
(0, swagger_1.ApiProperty)({
|
|
22
|
+
type: String,
|
|
23
|
+
nullable: true,
|
|
24
|
+
example: 'purchases',
|
|
25
|
+
description: `${data_mart_icon_enum_1.DATA_MART_ICON_API_DESCRIPTION} null resets the Data Mart to the default icon.`,
|
|
26
|
+
}),
|
|
27
|
+
(0, class_validator_1.ValidateIf)(obj => obj.icon !== null),
|
|
28
|
+
(0, class_validator_1.IsString)(),
|
|
29
|
+
(0, class_validator_1.MaxLength)(data_mart_icon_enum_1.DATA_MART_ICON_MAX_LENGTH),
|
|
30
|
+
(0, class_validator_1.Matches)(data_mart_icon_enum_1.DATA_MART_ICON_PATTERN),
|
|
31
|
+
__metadata("design:type", Object)
|
|
32
|
+
], UpdateDataMartIconApiDto.prototype, "icon", void 0);
|
|
33
|
+
//# sourceMappingURL=update-data-mart-icon-api.dto.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 UpdateReportRequestApiDto {
|
|
9
10
|
title: string;
|
|
10
11
|
dataDestinationId: string;
|
|
@@ -17,4 +18,5 @@ export declare class UpdateReportRequestApiDto {
|
|
|
17
18
|
aggregationConfig?: AggregationConfig | null;
|
|
18
19
|
dateTruncConfig?: DateTruncConfig | null;
|
|
19
20
|
uniqueCountConfig?: UniqueCountConfig;
|
|
21
|
+
autoAggregationOptOut?: AutoAggregationOptOut;
|
|
20
22
|
}
|
|
@@ -13,6 +13,7 @@ exports.UpdateReportRequestApiDto = void 0;
|
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
const swagger_1 = require("@nestjs/swagger");
|
|
15
15
|
const unique_count_config_schema_1 = require("../schemas/unique-count-config.schema");
|
|
16
|
+
const auto_aggregation_opt_out_schema_1 = require("../schemas/auto-aggregation-opt-out.schema");
|
|
16
17
|
const is_zod_valid_validator_1 = require("../../../common/validators/is-zod-valid.validator");
|
|
17
18
|
class UpdateReportRequestApiDto {
|
|
18
19
|
title;
|
|
@@ -26,6 +27,7 @@ class UpdateReportRequestApiDto {
|
|
|
26
27
|
aggregationConfig;
|
|
27
28
|
dateTruncConfig;
|
|
28
29
|
uniqueCountConfig;
|
|
30
|
+
autoAggregationOptOut;
|
|
29
31
|
}
|
|
30
32
|
exports.UpdateReportRequestApiDto = UpdateReportRequestApiDto;
|
|
31
33
|
__decorate([
|
|
@@ -146,4 +148,12 @@ __decorate([
|
|
|
146
148
|
}),
|
|
147
149
|
__metadata("design:type", Object)
|
|
148
150
|
], UpdateReportRequestApiDto.prototype, "uniqueCountConfig", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
(0, swagger_1.ApiProperty)({ ...auto_aggregation_opt_out_schema_1.AUTO_AGGREGATION_OPT_OUT_OPENAPI, required: false }),
|
|
153
|
+
(0, class_validator_1.IsOptional)(),
|
|
154
|
+
(0, is_zod_valid_validator_1.IsZodValid)(auto_aggregation_opt_out_schema_1.AutoAggregationOptOutSchema, {
|
|
155
|
+
message: `autoAggregationOptOut must be null or an array of at most ${auto_aggregation_opt_out_schema_1.AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS} column names`,
|
|
156
|
+
}),
|
|
157
|
+
__metadata("design:type", Object)
|
|
158
|
+
], UpdateReportRequestApiDto.prototype, "autoAggregationOptOut", void 0);
|
|
149
159
|
//# sourceMappingURL=update-report-request-api.dto.js.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS = 500;
|
|
3
|
+
export declare const AutoAggregationOptOutSchema: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
|
|
4
|
+
export type AutoAggregationOptOut = z.infer<typeof AutoAggregationOptOutSchema>;
|
|
5
|
+
export declare function foldEmptyAutoAggregationOptOut(value: AutoAggregationOptOut | undefined): string[] | null;
|
|
6
|
+
export declare function selectedAutoAggregationOptOut(value: AutoAggregationOptOut | undefined, columnConfig: readonly string[] | null | undefined): string[] | null;
|
|
7
|
+
export declare const AUTO_AGGREGATION_OPT_OUT_OPENAPI: {
|
|
8
|
+
readonly type: "array";
|
|
9
|
+
readonly nullable: true;
|
|
10
|
+
readonly maxItems: 500;
|
|
11
|
+
readonly items: {
|
|
12
|
+
readonly type: "string";
|
|
13
|
+
};
|
|
14
|
+
readonly description: string;
|
|
15
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AUTO_AGGREGATION_OPT_OUT_OPENAPI = exports.AutoAggregationOptOutSchema = exports.AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS = void 0;
|
|
4
|
+
exports.foldEmptyAutoAggregationOptOut = foldEmptyAutoAggregationOptOut;
|
|
5
|
+
exports.selectedAutoAggregationOptOut = selectedAutoAggregationOptOut;
|
|
6
|
+
const zod_1 = require("zod");
|
|
7
|
+
exports.AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS = 500;
|
|
8
|
+
exports.AutoAggregationOptOutSchema = zod_1.z
|
|
9
|
+
.array(zod_1.z.string().min(1))
|
|
10
|
+
.max(exports.AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS)
|
|
11
|
+
.nullable();
|
|
12
|
+
function foldEmptyAutoAggregationOptOut(value) {
|
|
13
|
+
if (!value?.length)
|
|
14
|
+
return null;
|
|
15
|
+
return [...new Set(value)];
|
|
16
|
+
}
|
|
17
|
+
function selectedAutoAggregationOptOut(value, columnConfig) {
|
|
18
|
+
const selected = new Set(columnConfig ?? []);
|
|
19
|
+
return foldEmptyAutoAggregationOptOut((value ?? []).filter(column => selected.has(column)));
|
|
20
|
+
}
|
|
21
|
+
exports.AUTO_AGGREGATION_OPT_OUT_OPENAPI = {
|
|
22
|
+
type: 'array',
|
|
23
|
+
nullable: true,
|
|
24
|
+
maxItems: exports.AUTO_AGGREGATION_OPT_OUT_MAX_COLUMNS,
|
|
25
|
+
items: { type: 'string' },
|
|
26
|
+
description: 'Columns whose aggregation the analyst removed. While any of them is selected, the report is ' +
|
|
27
|
+
'never collapsed automatically and returns its rows as stored. Omit to keep the stored value.',
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=auto-aggregation-opt-out.schema.js.map
|
|
@@ -39,16 +39,19 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
39
39
|
configuration: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">;
|
|
40
40
|
node: z.ZodString;
|
|
41
41
|
fields: z.ZodArray<z.ZodString, "many">;
|
|
42
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
42
43
|
}, "strip", z.ZodTypeAny, {
|
|
43
44
|
name: string;
|
|
44
45
|
fields: string[];
|
|
45
46
|
configuration: Record<string, any>[];
|
|
46
47
|
node: string;
|
|
48
|
+
version?: number | undefined;
|
|
47
49
|
}, {
|
|
48
50
|
name: string;
|
|
49
51
|
fields: string[];
|
|
50
52
|
configuration: Record<string, any>[];
|
|
51
53
|
node: string;
|
|
54
|
+
version?: number | undefined;
|
|
52
55
|
}>;
|
|
53
56
|
storage: z.ZodObject<{
|
|
54
57
|
fullyQualifiedName: z.ZodString;
|
|
@@ -63,6 +66,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
63
66
|
fields: string[];
|
|
64
67
|
configuration: Record<string, any>[];
|
|
65
68
|
node: string;
|
|
69
|
+
version?: number | undefined;
|
|
66
70
|
};
|
|
67
71
|
storage: {
|
|
68
72
|
fullyQualifiedName: string;
|
|
@@ -73,6 +77,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
73
77
|
fields: string[];
|
|
74
78
|
configuration: Record<string, any>[];
|
|
75
79
|
node: string;
|
|
80
|
+
version?: number | undefined;
|
|
76
81
|
};
|
|
77
82
|
storage: {
|
|
78
83
|
fullyQualifiedName: string;
|
|
@@ -85,6 +90,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
85
90
|
fields: string[];
|
|
86
91
|
configuration: Record<string, any>[];
|
|
87
92
|
node: string;
|
|
93
|
+
version?: number | undefined;
|
|
88
94
|
};
|
|
89
95
|
storage: {
|
|
90
96
|
fullyQualifiedName: string;
|
|
@@ -97,6 +103,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
97
103
|
fields: string[];
|
|
98
104
|
configuration: Record<string, any>[];
|
|
99
105
|
node: string;
|
|
106
|
+
version?: number | undefined;
|
|
100
107
|
};
|
|
101
108
|
storage: {
|
|
102
109
|
fullyQualifiedName: string;
|
|
@@ -1022,6 +1029,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
1022
1029
|
fields: string[];
|
|
1023
1030
|
configuration: Record<string, any>[];
|
|
1024
1031
|
node: string;
|
|
1032
|
+
version?: number | undefined;
|
|
1025
1033
|
};
|
|
1026
1034
|
storage: {
|
|
1027
1035
|
fullyQualifiedName: string;
|
|
@@ -1203,6 +1211,7 @@ export declare const DataMartRunSchema: z.ZodObject<{
|
|
|
1203
1211
|
fields: string[];
|
|
1204
1212
|
configuration: Record<string, any>[];
|
|
1205
1213
|
node: string;
|
|
1214
|
+
version?: number | undefined;
|
|
1206
1215
|
};
|
|
1207
1216
|
storage: {
|
|
1208
1217
|
fullyQualifiedName: string;
|
package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.d.ts
CHANGED
|
@@ -4,16 +4,19 @@ export declare const ConnectorSourceSchema: z.ZodObject<{
|
|
|
4
4
|
configuration: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">;
|
|
5
5
|
node: z.ZodString;
|
|
6
6
|
fields: z.ZodArray<z.ZodString, "many">;
|
|
7
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
7
8
|
}, "strip", z.ZodTypeAny, {
|
|
8
9
|
name: string;
|
|
9
10
|
fields: string[];
|
|
10
11
|
configuration: Record<string, any>[];
|
|
11
12
|
node: string;
|
|
13
|
+
version?: number | undefined;
|
|
12
14
|
}, {
|
|
13
15
|
name: string;
|
|
14
16
|
fields: string[];
|
|
15
17
|
configuration: Record<string, any>[];
|
|
16
18
|
node: string;
|
|
19
|
+
version?: number | undefined;
|
|
17
20
|
}>;
|
|
18
21
|
export declare const ConnectorStorageSchema: z.ZodObject<{
|
|
19
22
|
fullyQualifiedName: z.ZodString;
|
|
@@ -28,16 +31,19 @@ export declare const ConnectorSchema: z.ZodObject<{
|
|
|
28
31
|
configuration: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">;
|
|
29
32
|
node: z.ZodString;
|
|
30
33
|
fields: z.ZodArray<z.ZodString, "many">;
|
|
34
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
31
35
|
}, "strip", z.ZodTypeAny, {
|
|
32
36
|
name: string;
|
|
33
37
|
fields: string[];
|
|
34
38
|
configuration: Record<string, any>[];
|
|
35
39
|
node: string;
|
|
40
|
+
version?: number | undefined;
|
|
36
41
|
}, {
|
|
37
42
|
name: string;
|
|
38
43
|
fields: string[];
|
|
39
44
|
configuration: Record<string, any>[];
|
|
40
45
|
node: string;
|
|
46
|
+
version?: number | undefined;
|
|
41
47
|
}>;
|
|
42
48
|
storage: z.ZodObject<{
|
|
43
49
|
fullyQualifiedName: z.ZodString;
|
|
@@ -52,6 +58,7 @@ export declare const ConnectorSchema: z.ZodObject<{
|
|
|
52
58
|
fields: string[];
|
|
53
59
|
configuration: Record<string, any>[];
|
|
54
60
|
node: string;
|
|
61
|
+
version?: number | undefined;
|
|
55
62
|
};
|
|
56
63
|
storage: {
|
|
57
64
|
fullyQualifiedName: string;
|
|
@@ -62,6 +69,7 @@ export declare const ConnectorSchema: z.ZodObject<{
|
|
|
62
69
|
fields: string[];
|
|
63
70
|
configuration: Record<string, any>[];
|
|
64
71
|
node: string;
|
|
72
|
+
version?: number | undefined;
|
|
65
73
|
};
|
|
66
74
|
storage: {
|
|
67
75
|
fullyQualifiedName: string;
|
|
@@ -74,16 +82,19 @@ export declare const ConnectorDefinitionSchema: z.ZodObject<{
|
|
|
74
82
|
configuration: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">;
|
|
75
83
|
node: z.ZodString;
|
|
76
84
|
fields: z.ZodArray<z.ZodString, "many">;
|
|
85
|
+
version: z.ZodOptional<z.ZodNumber>;
|
|
77
86
|
}, "strip", z.ZodTypeAny, {
|
|
78
87
|
name: string;
|
|
79
88
|
fields: string[];
|
|
80
89
|
configuration: Record<string, any>[];
|
|
81
90
|
node: string;
|
|
91
|
+
version?: number | undefined;
|
|
82
92
|
}, {
|
|
83
93
|
name: string;
|
|
84
94
|
fields: string[];
|
|
85
95
|
configuration: Record<string, any>[];
|
|
86
96
|
node: string;
|
|
97
|
+
version?: number | undefined;
|
|
87
98
|
}>;
|
|
88
99
|
storage: z.ZodObject<{
|
|
89
100
|
fullyQualifiedName: z.ZodString;
|
|
@@ -98,6 +109,7 @@ export declare const ConnectorDefinitionSchema: z.ZodObject<{
|
|
|
98
109
|
fields: string[];
|
|
99
110
|
configuration: Record<string, any>[];
|
|
100
111
|
node: string;
|
|
112
|
+
version?: number | undefined;
|
|
101
113
|
};
|
|
102
114
|
storage: {
|
|
103
115
|
fullyQualifiedName: string;
|
|
@@ -108,6 +120,7 @@ export declare const ConnectorDefinitionSchema: z.ZodObject<{
|
|
|
108
120
|
fields: string[];
|
|
109
121
|
configuration: Record<string, any>[];
|
|
110
122
|
node: string;
|
|
123
|
+
version?: number | undefined;
|
|
111
124
|
};
|
|
112
125
|
storage: {
|
|
113
126
|
fullyQualifiedName: string;
|
|
@@ -120,6 +133,7 @@ export declare const ConnectorDefinitionSchema: z.ZodObject<{
|
|
|
120
133
|
fields: string[];
|
|
121
134
|
configuration: Record<string, any>[];
|
|
122
135
|
node: string;
|
|
136
|
+
version?: number | undefined;
|
|
123
137
|
};
|
|
124
138
|
storage: {
|
|
125
139
|
fullyQualifiedName: string;
|
|
@@ -132,6 +146,7 @@ export declare const ConnectorDefinitionSchema: z.ZodObject<{
|
|
|
132
146
|
fields: string[];
|
|
133
147
|
configuration: Record<string, any>[];
|
|
134
148
|
node: string;
|
|
149
|
+
version?: number | undefined;
|
|
135
150
|
};
|
|
136
151
|
storage: {
|
|
137
152
|
fullyQualifiedName: string;
|
package/dist/src/data-marts/dto/schemas/data-mart-table-definitions/connector-definition.schema.js
CHANGED
|
@@ -9,6 +9,7 @@ exports.ConnectorSourceSchema = zod_1.z.object({
|
|
|
9
9
|
.min(1, 'At least one configuration is required'),
|
|
10
10
|
node: zod_1.z.string().min(1, 'Node is required'),
|
|
11
11
|
fields: zod_1.z.array(zod_1.z.string()).min(1, 'At least one field is required'),
|
|
12
|
+
version: zod_1.z.number().int().positive().optional(),
|
|
12
13
|
});
|
|
13
14
|
exports.ConnectorStorageSchema = zod_1.z.object({
|
|
14
15
|
fullyQualifiedName: zod_1.z.string().min(1, 'fully qualified name is required'),
|