@contember/engine-system-api 2.0.0-alpha.8 → 2.0.0-beta.1
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/development/index.cjs +2 -2
- package/dist/development/index.js +2 -2
- package/dist/development/src/SystemContainer.cjs +4 -3
- package/dist/development/src/SystemContainer.cjs.map +1 -1
- package/dist/development/src/SystemContainer.js +5 -4
- package/dist/development/src/SystemContainer.js.map +1 -1
- package/dist/development/src/migrations/2020-03-27-130000-project-migrations.cjs.map +1 -1
- package/dist/development/src/migrations/2020-03-27-130000-project-migrations.js.map +1 -1
- package/dist/development/src/migrations/2020-05-06-150000-composed-primary.cjs +1 -2
- package/dist/development/src/migrations/2020-05-06-150000-composed-primary.cjs.map +1 -1
- package/dist/development/src/migrations/2020-05-06-150000-composed-primary.js +1 -2
- package/dist/development/src/migrations/2020-05-06-150000-composed-primary.js.map +1 -1
- package/dist/development/src/migrations/2020-06-01-103000-event-trigger-perf.cjs +1 -2
- package/dist/development/src/migrations/2020-06-01-103000-event-trigger-perf.cjs.map +1 -1
- package/dist/development/src/migrations/2020-06-01-103000-event-trigger-perf.js +1 -2
- package/dist/development/src/migrations/2020-06-01-103000-event-trigger-perf.js.map +1 -1
- package/dist/development/src/migrations/2021-05-07-155800-event-log-rework.cjs +1 -2
- package/dist/development/src/migrations/2021-05-07-155800-event-log-rework.cjs.map +1 -1
- package/dist/development/src/migrations/2021-05-07-155800-event-log-rework.js +1 -2
- package/dist/development/src/migrations/2021-05-07-155800-event-log-rework.js.map +1 -1
- package/dist/development/src/migrations/2021-05-19-1232000-event-log-fix-constraint.cjs +1 -2
- package/dist/development/src/migrations/2021-05-19-1232000-event-log-fix-constraint.cjs.map +1 -1
- package/dist/development/src/migrations/2021-05-19-1232000-event-log-fix-constraint.js +1 -2
- package/dist/development/src/migrations/2021-05-19-1232000-event-log-fix-constraint.js.map +1 -1
- package/dist/development/src/migrations/2022-10-03-110000-table-on-delete.cjs +1 -1
- package/dist/development/src/migrations/2022-10-03-110000-table-on-delete.cjs.map +1 -1
- package/dist/development/src/migrations/2022-10-03-110000-table-on-delete.js +1 -1
- package/dist/development/src/migrations/2022-10-03-110000-table-on-delete.js.map +1 -1
- package/dist/development/src/migrations/2023-09-11-174000-fix-on-delete.cjs +1 -1
- package/dist/development/src/migrations/2023-09-11-174000-fix-on-delete.cjs.map +1 -1
- package/dist/development/src/migrations/2023-09-11-174000-fix-on-delete.js +1 -1
- package/dist/development/src/migrations/2023-09-11-174000-fix-on-delete.js.map +1 -1
- package/dist/development/src/migrations/2023-10-19-173000-fix-unique.cjs +1 -1
- package/dist/development/src/migrations/2023-10-19-173000-fix-unique.cjs.map +1 -1
- package/dist/development/src/migrations/2023-10-19-173000-fix-unique.js +1 -1
- package/dist/development/src/migrations/2023-10-19-173000-fix-unique.js.map +1 -1
- package/dist/development/src/migrations/2024-06-28-153000-schema.cjs +18 -0
- package/dist/development/src/migrations/2024-06-28-153000-schema.cjs.map +1 -0
- package/dist/development/src/migrations/2024-06-28-153000-schema.js +19 -0
- package/dist/development/src/migrations/2024-06-28-153000-schema.js.map +1 -0
- package/dist/development/src/migrations/2024-06-28-153001-schema-init.cjs +12 -0
- package/dist/development/src/migrations/2024-06-28-153001-schema-init.cjs.map +1 -0
- package/dist/development/src/migrations/2024-06-28-153001-schema-init.js +13 -0
- package/dist/development/src/migrations/2024-06-28-153001-schema-init.js.map +1 -0
- package/dist/development/src/migrations/2024-07-29-150000-event-data-index.cjs +11 -0
- package/dist/development/src/migrations/2024-07-29-150000-event-data-index.cjs.map +1 -0
- package/dist/development/src/migrations/2024-07-29-150000-event-data-index.js +12 -0
- package/dist/development/src/migrations/2024-07-29-150000-event-data-index.js.map +1 -0
- package/dist/development/src/migrations/runner.cjs +11 -5
- package/dist/development/src/migrations/runner.cjs.map +1 -1
- package/dist/development/src/migrations/runner.js +11 -5
- package/dist/development/src/migrations/runner.js.map +1 -1
- package/dist/development/src/migrations/snapshot-factory.cjs +1 -1
- package/dist/development/src/migrations/snapshot-factory.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot-factory.js +1 -1
- package/dist/development/src/migrations/snapshot-factory.js.map +1 -1
- package/dist/development/src/migrations/snapshot.cjs +17 -1
- package/dist/development/src/migrations/snapshot.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot.js +17 -1
- package/dist/development/src/migrations/snapshot.js.map +1 -1
- package/dist/development/src/model/ProjectInitializer.cjs.map +1 -1
- package/dist/development/src/model/ProjectInitializer.js.map +1 -1
- package/dist/development/src/model/ProjectTruncateExecutor.cjs.map +1 -1
- package/dist/development/src/model/ProjectTruncateExecutor.js.map +1 -1
- package/dist/development/src/model/authorization/AuthorizationActions.cjs +1 -0
- package/dist/development/src/model/authorization/AuthorizationActions.cjs.map +1 -1
- package/dist/development/src/model/authorization/AuthorizationActions.js +1 -0
- package/dist/development/src/model/authorization/AuthorizationActions.js.map +1 -1
- package/dist/development/src/model/authorization/Identity.cjs.map +1 -1
- package/dist/development/src/model/authorization/Identity.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.cjs +1 -0
- package/dist/development/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.js +1 -0
- package/dist/development/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/development/src/model/authorization/StagePermissionsFactory.cjs +4 -5
- package/dist/development/src/model/authorization/StagePermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/StagePermissionsFactory.js +4 -5
- package/dist/development/src/model/authorization/StagePermissionsFactory.js.map +1 -1
- package/dist/development/src/model/authorization/StageScope.cjs +2 -2
- package/dist/development/src/model/authorization/StageScope.cjs.map +1 -1
- package/dist/development/src/model/authorization/StageScope.js +2 -2
- package/dist/development/src/model/authorization/StageScope.js.map +1 -1
- package/dist/development/src/model/authorization/SwitchEvaluatorNode.cjs.map +1 -1
- package/dist/development/src/model/authorization/SwitchEvaluatorNode.js.map +1 -1
- package/dist/development/src/model/commands/CommandBus.cjs.map +1 -1
- package/dist/development/src/model/commands/CommandBus.js.map +1 -1
- package/dist/development/src/model/commands/events/TruncateEventsCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/events/TruncateEventsCommand.js.map +1 -1
- package/dist/development/src/model/commands/migrations/DeleteMigrationCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/migrations/DeleteMigrationCommand.js.map +1 -1
- package/dist/development/src/model/commands/migrations/ModifyMigrationCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/migrations/ModifyMigrationCommand.js.map +1 -1
- package/dist/development/src/model/commands/migrations/SaveMigrationCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/migrations/SaveMigrationCommand.js.map +1 -1
- package/dist/development/src/model/commands/schema/SaveSchemaCommand.cjs +28 -0
- package/dist/development/src/model/commands/schema/SaveSchemaCommand.cjs.map +1 -0
- package/dist/development/src/model/commands/schema/SaveSchemaCommand.js +28 -0
- package/dist/development/src/model/commands/schema/SaveSchemaCommand.js.map +1 -0
- package/dist/development/src/model/commands/stages/CreateStageCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/stages/CreateStageCommand.js.map +1 -1
- package/dist/development/src/model/database/DatabaseContext.cjs.map +1 -1
- package/dist/development/src/model/database/DatabaseContext.js.map +1 -1
- package/dist/development/src/model/dtos/ExecutedMigration.cjs.map +1 -1
- package/dist/development/src/model/dtos/ExecutedMigration.js.map +1 -1
- package/dist/development/src/model/events/EventResponseBuilder.cjs.map +1 -1
- package/dist/development/src/model/events/EventResponseBuilder.js.map +1 -1
- package/dist/development/src/model/events/EventResponseHelper.cjs.map +1 -1
- package/dist/development/src/model/events/EventResponseHelper.js.map +1 -1
- package/dist/development/src/model/events/identityUtils.cjs.map +1 -1
- package/dist/development/src/model/events/identityUtils.js.map +1 -1
- package/dist/development/src/model/events/types.cjs.map +1 -1
- package/dist/development/src/model/events/types.js.map +1 -1
- package/dist/development/src/model/helpers/modelHelpers.cjs.map +1 -1
- package/dist/development/src/model/helpers/modelHelpers.js.map +1 -1
- package/dist/development/src/model/metadata/SchemaDatabaseMetadataResolverStore.cjs.map +1 -1
- package/dist/development/src/model/metadata/SchemaDatabaseMetadataResolverStore.js.map +1 -1
- package/dist/development/src/model/migrations/ExecutedMigrationsResolver.cjs.map +1 -1
- package/dist/development/src/model/migrations/ExecutedMigrationsResolver.js.map +1 -1
- package/dist/development/src/model/migrations/MigrationAlterer.cjs +10 -0
- package/dist/development/src/model/migrations/MigrationAlterer.cjs.map +1 -1
- package/dist/development/src/model/migrations/MigrationAlterer.js +10 -0
- package/dist/development/src/model/migrations/MigrationAlterer.js.map +1 -1
- package/dist/development/src/model/migrations/ProjectMigrator.cjs +29 -10
- package/dist/development/src/model/migrations/ProjectMigrator.cjs.map +1 -1
- package/dist/development/src/model/migrations/ProjectMigrator.js +30 -11
- package/dist/development/src/model/migrations/ProjectMigrator.js.map +1 -1
- package/dist/development/src/model/migrations/SchemaProvider.cjs +58 -0
- package/dist/development/src/model/migrations/SchemaProvider.cjs.map +1 -0
- package/dist/development/src/model/migrations/SchemaProvider.js +58 -0
- package/dist/development/src/model/migrations/SchemaProvider.js.map +1 -0
- package/dist/development/src/model/queries/events/EventQueryHelpers.cjs.map +1 -1
- package/dist/development/src/model/queries/events/EventQueryHelpers.js.map +1 -1
- package/dist/development/src/model/queries/events/EventsQuery.cjs +10 -14
- package/dist/development/src/model/queries/events/EventsQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/events/EventsQuery.js +10 -14
- package/dist/development/src/model/queries/events/EventsQuery.js.map +1 -1
- package/dist/development/src/model/queries/events/LatestTransactionIdByStageQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/events/LatestTransactionIdByStageQuery.js.map +1 -1
- package/dist/development/src/model/queries/events/OldValuesQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/events/OldValuesQuery.js.map +1 -1
- package/dist/development/src/model/queries/migrations/ExecutedMigrationByVersionQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/migrations/ExecutedMigrationByVersionQuery.js.map +1 -1
- package/dist/development/src/model/queries/migrations/ExecutedMigrationsQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/migrations/ExecutedMigrationsQuery.js.map +1 -1
- package/dist/development/src/model/queries/schema/SchemaQuery.cjs +34 -0
- package/dist/development/src/model/queries/schema/SchemaQuery.cjs.map +1 -0
- package/dist/development/src/model/queries/schema/SchemaQuery.js +34 -0
- package/dist/development/src/model/queries/schema/SchemaQuery.js.map +1 -0
- package/dist/development/src/model/queries/stages/StageBySlugQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/stages/StageBySlugQuery.js.map +1 -1
- package/dist/development/src/model/queries/stages/StagesQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/stages/StagesQuery.js.map +1 -1
- package/dist/development/src/model/stages/StageCreator.cjs.map +1 -1
- package/dist/development/src/model/stages/StageCreator.js.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.cjs +6 -2
- package/dist/development/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.js +7 -3
- package/dist/development/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/development/src/resolvers/SystemResolverContext.cjs +5 -5
- package/dist/development/src/resolvers/SystemResolverContext.cjs.map +1 -1
- package/dist/development/src/resolvers/SystemResolverContext.js +5 -5
- package/dist/development/src/resolvers/SystemResolverContext.js.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.cjs +0 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.js +0 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrationAlterMutationResolver.cjs +0 -1
- package/dist/development/src/resolvers/mutation/MigrationAlterMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrationAlterMutationResolver.js +0 -1
- package/dist/development/src/resolvers/mutation/MigrationAlterMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/TruncateMutationResolver.cjs +1 -1
- package/dist/development/src/resolvers/mutation/TruncateMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/TruncateMutationResolver.js +1 -1
- package/dist/development/src/resolvers/mutation/TruncateMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/EventsQueryResolver.cjs +0 -1
- package/dist/development/src/resolvers/query/EventsQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/EventsQueryResolver.js +0 -1
- package/dist/development/src/resolvers/query/EventsQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs +0 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.js +0 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/SchemaQueryResolver.cjs +23 -0
- package/dist/development/src/resolvers/query/SchemaQueryResolver.cjs.map +1 -0
- package/dist/development/src/resolvers/query/SchemaQueryResolver.js +23 -0
- package/dist/development/src/resolvers/query/SchemaQueryResolver.js.map +1 -0
- package/dist/development/src/resolvers/query/StagesQueryResolver.cjs +0 -1
- package/dist/development/src/resolvers/query/StagesQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/StagesQueryResolver.js +0 -1
- package/dist/development/src/resolvers/query/StagesQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/types/EventOldValuesResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/types/EventOldValuesResolver.js.map +1 -1
- package/dist/development/src/resolvers/types/OldValuesHelpers.cjs +0 -1
- package/dist/development/src/resolvers/types/OldValuesHelpers.cjs.map +1 -1
- package/dist/development/src/resolvers/types/OldValuesHelpers.js +0 -1
- package/dist/development/src/resolvers/types/OldValuesHelpers.js.map +1 -1
- package/dist/development/src/schema/dev.graphql.cjs.map +1 -1
- package/dist/development/src/schema/system.graphql.cjs +3 -1
- package/dist/development/src/schema/system.graphql.cjs.map +1 -1
- package/dist/development/src/schema/system.graphql.js +3 -1
- package/dist/development/src/schema/system.graphql.js.map +1 -1
- package/dist/development/src/schema/types.cjs.map +1 -1
- package/dist/development/src/schema/types.js.map +1 -1
- package/dist/development/src/utils/MapSet.cjs.map +1 -1
- package/dist/development/src/utils/MapSet.js.map +1 -1
- package/dist/development/src/utils/Response.cjs.map +1 -1
- package/dist/development/src/utils/Response.js.map +1 -1
- package/dist/development/src/utils/batchQuery.cjs.map +1 -1
- package/dist/development/src/utils/batchQuery.js.map +1 -1
- package/dist/production/index.cjs +2 -2
- package/dist/production/index.js +2 -2
- package/dist/production/src/SystemContainer.cjs +4 -3
- package/dist/production/src/SystemContainer.cjs.map +1 -1
- package/dist/production/src/SystemContainer.js +5 -4
- package/dist/production/src/SystemContainer.js.map +1 -1
- package/dist/production/src/migrations/2020-03-27-130000-project-migrations.cjs.map +1 -1
- package/dist/production/src/migrations/2020-03-27-130000-project-migrations.js.map +1 -1
- package/dist/production/src/migrations/2020-05-06-150000-composed-primary.cjs +1 -2
- package/dist/production/src/migrations/2020-05-06-150000-composed-primary.cjs.map +1 -1
- package/dist/production/src/migrations/2020-05-06-150000-composed-primary.js +1 -2
- package/dist/production/src/migrations/2020-05-06-150000-composed-primary.js.map +1 -1
- package/dist/production/src/migrations/2020-06-01-103000-event-trigger-perf.cjs +1 -2
- package/dist/production/src/migrations/2020-06-01-103000-event-trigger-perf.cjs.map +1 -1
- package/dist/production/src/migrations/2020-06-01-103000-event-trigger-perf.js +1 -2
- package/dist/production/src/migrations/2020-06-01-103000-event-trigger-perf.js.map +1 -1
- package/dist/production/src/migrations/2021-05-07-155800-event-log-rework.cjs +1 -2
- package/dist/production/src/migrations/2021-05-07-155800-event-log-rework.cjs.map +1 -1
- package/dist/production/src/migrations/2021-05-07-155800-event-log-rework.js +1 -2
- package/dist/production/src/migrations/2021-05-07-155800-event-log-rework.js.map +1 -1
- package/dist/production/src/migrations/2021-05-19-1232000-event-log-fix-constraint.cjs +1 -2
- package/dist/production/src/migrations/2021-05-19-1232000-event-log-fix-constraint.cjs.map +1 -1
- package/dist/production/src/migrations/2021-05-19-1232000-event-log-fix-constraint.js +1 -2
- package/dist/production/src/migrations/2021-05-19-1232000-event-log-fix-constraint.js.map +1 -1
- package/dist/production/src/migrations/2022-10-03-110000-table-on-delete.cjs +1 -1
- package/dist/production/src/migrations/2022-10-03-110000-table-on-delete.cjs.map +1 -1
- package/dist/production/src/migrations/2022-10-03-110000-table-on-delete.js +1 -1
- package/dist/production/src/migrations/2022-10-03-110000-table-on-delete.js.map +1 -1
- package/dist/production/src/migrations/2023-09-11-174000-fix-on-delete.cjs +1 -1
- package/dist/production/src/migrations/2023-09-11-174000-fix-on-delete.cjs.map +1 -1
- package/dist/production/src/migrations/2023-09-11-174000-fix-on-delete.js +1 -1
- package/dist/production/src/migrations/2023-09-11-174000-fix-on-delete.js.map +1 -1
- package/dist/production/src/migrations/2023-10-19-173000-fix-unique.cjs +1 -1
- package/dist/production/src/migrations/2023-10-19-173000-fix-unique.cjs.map +1 -1
- package/dist/production/src/migrations/2023-10-19-173000-fix-unique.js +1 -1
- package/dist/production/src/migrations/2023-10-19-173000-fix-unique.js.map +1 -1
- package/dist/production/src/migrations/2024-06-28-153000-schema.cjs +18 -0
- package/dist/production/src/migrations/2024-06-28-153000-schema.cjs.map +1 -0
- package/dist/production/src/migrations/2024-06-28-153000-schema.js +19 -0
- package/dist/production/src/migrations/2024-06-28-153000-schema.js.map +1 -0
- package/dist/production/src/migrations/2024-06-28-153001-schema-init.cjs +12 -0
- package/dist/production/src/migrations/2024-06-28-153001-schema-init.cjs.map +1 -0
- package/dist/production/src/migrations/2024-06-28-153001-schema-init.js +13 -0
- package/dist/production/src/migrations/2024-06-28-153001-schema-init.js.map +1 -0
- package/dist/production/src/migrations/2024-07-29-150000-event-data-index.cjs +11 -0
- package/dist/production/src/migrations/2024-07-29-150000-event-data-index.cjs.map +1 -0
- package/dist/production/src/migrations/2024-07-29-150000-event-data-index.js +12 -0
- package/dist/production/src/migrations/2024-07-29-150000-event-data-index.js.map +1 -0
- package/dist/production/src/migrations/runner.cjs +11 -5
- package/dist/production/src/migrations/runner.cjs.map +1 -1
- package/dist/production/src/migrations/runner.js +11 -5
- package/dist/production/src/migrations/runner.js.map +1 -1
- package/dist/production/src/migrations/snapshot-factory.cjs +1 -1
- package/dist/production/src/migrations/snapshot-factory.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot-factory.js +1 -1
- package/dist/production/src/migrations/snapshot-factory.js.map +1 -1
- package/dist/production/src/migrations/snapshot.cjs +17 -1
- package/dist/production/src/migrations/snapshot.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot.js +17 -1
- package/dist/production/src/migrations/snapshot.js.map +1 -1
- package/dist/production/src/model/ProjectInitializer.cjs.map +1 -1
- package/dist/production/src/model/ProjectInitializer.js.map +1 -1
- package/dist/production/src/model/ProjectTruncateExecutor.cjs.map +1 -1
- package/dist/production/src/model/ProjectTruncateExecutor.js.map +1 -1
- package/dist/production/src/model/authorization/AuthorizationActions.cjs +1 -0
- package/dist/production/src/model/authorization/AuthorizationActions.cjs.map +1 -1
- package/dist/production/src/model/authorization/AuthorizationActions.js +1 -0
- package/dist/production/src/model/authorization/AuthorizationActions.js.map +1 -1
- package/dist/production/src/model/authorization/Identity.cjs.map +1 -1
- package/dist/production/src/model/authorization/Identity.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.cjs +1 -0
- package/dist/production/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.js +1 -0
- package/dist/production/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/production/src/model/authorization/StagePermissionsFactory.cjs +4 -5
- package/dist/production/src/model/authorization/StagePermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/StagePermissionsFactory.js +4 -5
- package/dist/production/src/model/authorization/StagePermissionsFactory.js.map +1 -1
- package/dist/production/src/model/authorization/StageScope.cjs +2 -2
- package/dist/production/src/model/authorization/StageScope.cjs.map +1 -1
- package/dist/production/src/model/authorization/StageScope.js +2 -2
- package/dist/production/src/model/authorization/StageScope.js.map +1 -1
- package/dist/production/src/model/authorization/SwitchEvaluatorNode.cjs.map +1 -1
- package/dist/production/src/model/authorization/SwitchEvaluatorNode.js.map +1 -1
- package/dist/production/src/model/commands/CommandBus.cjs.map +1 -1
- package/dist/production/src/model/commands/CommandBus.js.map +1 -1
- package/dist/production/src/model/commands/events/TruncateEventsCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/events/TruncateEventsCommand.js.map +1 -1
- package/dist/production/src/model/commands/migrations/DeleteMigrationCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/migrations/DeleteMigrationCommand.js.map +1 -1
- package/dist/production/src/model/commands/migrations/ModifyMigrationCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/migrations/ModifyMigrationCommand.js.map +1 -1
- package/dist/production/src/model/commands/migrations/SaveMigrationCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/migrations/SaveMigrationCommand.js.map +1 -1
- package/dist/production/src/model/commands/schema/SaveSchemaCommand.cjs +28 -0
- package/dist/production/src/model/commands/schema/SaveSchemaCommand.cjs.map +1 -0
- package/dist/production/src/model/commands/schema/SaveSchemaCommand.js +28 -0
- package/dist/production/src/model/commands/schema/SaveSchemaCommand.js.map +1 -0
- package/dist/production/src/model/commands/stages/CreateStageCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/stages/CreateStageCommand.js.map +1 -1
- package/dist/production/src/model/database/DatabaseContext.cjs.map +1 -1
- package/dist/production/src/model/database/DatabaseContext.js.map +1 -1
- package/dist/production/src/model/dtos/ExecutedMigration.cjs.map +1 -1
- package/dist/production/src/model/dtos/ExecutedMigration.js.map +1 -1
- package/dist/production/src/model/events/EventResponseBuilder.cjs.map +1 -1
- package/dist/production/src/model/events/EventResponseBuilder.js.map +1 -1
- package/dist/production/src/model/events/EventResponseHelper.cjs.map +1 -1
- package/dist/production/src/model/events/EventResponseHelper.js.map +1 -1
- package/dist/production/src/model/events/identityUtils.cjs.map +1 -1
- package/dist/production/src/model/events/identityUtils.js.map +1 -1
- package/dist/production/src/model/events/types.cjs.map +1 -1
- package/dist/production/src/model/events/types.js.map +1 -1
- package/dist/production/src/model/helpers/modelHelpers.cjs.map +1 -1
- package/dist/production/src/model/helpers/modelHelpers.js.map +1 -1
- package/dist/production/src/model/metadata/SchemaDatabaseMetadataResolverStore.cjs.map +1 -1
- package/dist/production/src/model/metadata/SchemaDatabaseMetadataResolverStore.js.map +1 -1
- package/dist/production/src/model/migrations/ExecutedMigrationsResolver.cjs.map +1 -1
- package/dist/production/src/model/migrations/ExecutedMigrationsResolver.js.map +1 -1
- package/dist/production/src/model/migrations/MigrationAlterer.cjs +10 -0
- package/dist/production/src/model/migrations/MigrationAlterer.cjs.map +1 -1
- package/dist/production/src/model/migrations/MigrationAlterer.js +10 -0
- package/dist/production/src/model/migrations/MigrationAlterer.js.map +1 -1
- package/dist/production/src/model/migrations/ProjectMigrator.cjs +29 -10
- package/dist/production/src/model/migrations/ProjectMigrator.cjs.map +1 -1
- package/dist/production/src/model/migrations/ProjectMigrator.js +30 -11
- package/dist/production/src/model/migrations/ProjectMigrator.js.map +1 -1
- package/dist/production/src/model/migrations/SchemaProvider.cjs +58 -0
- package/dist/production/src/model/migrations/SchemaProvider.cjs.map +1 -0
- package/dist/production/src/model/migrations/SchemaProvider.js +58 -0
- package/dist/production/src/model/migrations/SchemaProvider.js.map +1 -0
- package/dist/production/src/model/queries/events/EventQueryHelpers.cjs.map +1 -1
- package/dist/production/src/model/queries/events/EventQueryHelpers.js.map +1 -1
- package/dist/production/src/model/queries/events/EventsQuery.cjs +10 -14
- package/dist/production/src/model/queries/events/EventsQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/events/EventsQuery.js +10 -14
- package/dist/production/src/model/queries/events/EventsQuery.js.map +1 -1
- package/dist/production/src/model/queries/events/LatestTransactionIdByStageQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/events/LatestTransactionIdByStageQuery.js.map +1 -1
- package/dist/production/src/model/queries/events/OldValuesQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/events/OldValuesQuery.js.map +1 -1
- package/dist/production/src/model/queries/migrations/ExecutedMigrationByVersionQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/migrations/ExecutedMigrationByVersionQuery.js.map +1 -1
- package/dist/production/src/model/queries/migrations/ExecutedMigrationsQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/migrations/ExecutedMigrationsQuery.js.map +1 -1
- package/dist/production/src/model/queries/schema/SchemaQuery.cjs +34 -0
- package/dist/production/src/model/queries/schema/SchemaQuery.cjs.map +1 -0
- package/dist/production/src/model/queries/schema/SchemaQuery.js +34 -0
- package/dist/production/src/model/queries/schema/SchemaQuery.js.map +1 -0
- package/dist/production/src/model/queries/stages/StageBySlugQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/stages/StageBySlugQuery.js.map +1 -1
- package/dist/production/src/model/queries/stages/StagesQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/stages/StagesQuery.js.map +1 -1
- package/dist/production/src/model/stages/StageCreator.cjs.map +1 -1
- package/dist/production/src/model/stages/StageCreator.js.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.cjs +6 -2
- package/dist/production/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.js +7 -3
- package/dist/production/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/production/src/resolvers/SystemResolverContext.cjs +5 -5
- package/dist/production/src/resolvers/SystemResolverContext.cjs.map +1 -1
- package/dist/production/src/resolvers/SystemResolverContext.js +5 -5
- package/dist/production/src/resolvers/SystemResolverContext.js.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.cjs +0 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.js +0 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrationAlterMutationResolver.cjs +0 -1
- package/dist/production/src/resolvers/mutation/MigrationAlterMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrationAlterMutationResolver.js +0 -1
- package/dist/production/src/resolvers/mutation/MigrationAlterMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/TruncateMutationResolver.cjs +1 -1
- package/dist/production/src/resolvers/mutation/TruncateMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/TruncateMutationResolver.js +1 -1
- package/dist/production/src/resolvers/mutation/TruncateMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/EventsQueryResolver.cjs +0 -1
- package/dist/production/src/resolvers/query/EventsQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/EventsQueryResolver.js +0 -1
- package/dist/production/src/resolvers/query/EventsQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs +0 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.js +0 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/SchemaQueryResolver.cjs +23 -0
- package/dist/production/src/resolvers/query/SchemaQueryResolver.cjs.map +1 -0
- package/dist/production/src/resolvers/query/SchemaQueryResolver.js +23 -0
- package/dist/production/src/resolvers/query/SchemaQueryResolver.js.map +1 -0
- package/dist/production/src/resolvers/query/StagesQueryResolver.cjs +0 -1
- package/dist/production/src/resolvers/query/StagesQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/StagesQueryResolver.js +0 -1
- package/dist/production/src/resolvers/query/StagesQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/types/EventOldValuesResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/types/EventOldValuesResolver.js.map +1 -1
- package/dist/production/src/resolvers/types/OldValuesHelpers.cjs +0 -1
- package/dist/production/src/resolvers/types/OldValuesHelpers.cjs.map +1 -1
- package/dist/production/src/resolvers/types/OldValuesHelpers.js +0 -1
- package/dist/production/src/resolvers/types/OldValuesHelpers.js.map +1 -1
- package/dist/production/src/schema/dev.graphql.cjs.map +1 -1
- package/dist/production/src/schema/system.graphql.cjs +3 -1
- package/dist/production/src/schema/system.graphql.cjs.map +1 -1
- package/dist/production/src/schema/system.graphql.js +3 -1
- package/dist/production/src/schema/system.graphql.js.map +1 -1
- package/dist/production/src/schema/types.cjs.map +1 -1
- package/dist/production/src/schema/types.js.map +1 -1
- package/dist/production/src/utils/MapSet.cjs.map +1 -1
- package/dist/production/src/utils/MapSet.js.map +1 -1
- package/dist/production/src/utils/Response.cjs.map +1 -1
- package/dist/production/src/utils/Response.js.map +1 -1
- package/dist/production/src/utils/batchQuery.cjs.map +1 -1
- package/dist/production/src/utils/batchQuery.js.map +1 -1
- package/dist/tests/cases/unit/eventsQuery.test.d.ts +2 -0
- package/dist/tests/cases/unit/eventsQuery.test.d.ts.map +1 -0
- package/dist/tests/src/uuid.d.ts +3 -0
- package/dist/tests/src/uuid.d.ts.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/SystemContainer.d.ts +8 -6
- package/dist/types/SystemContainer.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/migrations/2024-06-28-153000-schema.d.ts +3 -0
- package/dist/types/migrations/2024-06-28-153000-schema.d.ts.map +1 -0
- package/dist/types/migrations/2024-06-28-153001-schema-init.d.ts +4 -0
- package/dist/types/migrations/2024-06-28-153001-schema-init.d.ts.map +1 -0
- package/dist/types/migrations/2024-07-29-150000-event-data-index.d.ts +3 -0
- package/dist/types/migrations/2024-07-29-150000-event-data-index.d.ts.map +1 -0
- package/dist/types/migrations/runner.d.ts +3 -3
- package/dist/types/migrations/runner.d.ts.map +1 -1
- package/dist/types/migrations/snapshot.d.ts.map +1 -1
- package/dist/types/migrations/types.d.ts +2 -2
- package/dist/types/migrations/types.d.ts.map +1 -1
- package/dist/types/model/SchemaGetter.d.ts +6 -0
- package/dist/types/model/SchemaGetter.d.ts.map +1 -0
- package/dist/types/model/authorization/AuthorizationActions.d.ts +5 -0
- package/dist/types/model/authorization/AuthorizationActions.d.ts.map +1 -1
- package/dist/types/model/authorization/PermissionsFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/StagePermissionsFactory.d.ts +4 -4
- package/dist/types/model/authorization/StagePermissionsFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/StageScope.d.ts.map +1 -1
- package/dist/types/model/commands/schema/SaveSchemaCommand.d.ts +8 -0
- package/dist/types/model/commands/schema/SaveSchemaCommand.d.ts.map +1 -0
- package/dist/types/model/dependencies/content/ContentQueryExecutor.d.ts +3 -2
- package/dist/types/model/dependencies/content/ContentQueryExecutor.d.ts.map +1 -1
- package/dist/types/model/migrations/MigrationAlterer.d.ts +4 -0
- package/dist/types/model/migrations/MigrationAlterer.d.ts.map +1 -1
- package/dist/types/model/migrations/ProjectMigrator.d.ts +3 -3
- package/dist/types/model/migrations/ProjectMigrator.d.ts.map +1 -1
- package/dist/types/model/migrations/SchemaProvider.d.ts +28 -0
- package/dist/types/model/migrations/SchemaProvider.d.ts.map +1 -0
- package/dist/types/model/migrations/index.d.ts +1 -1
- package/dist/types/model/migrations/index.d.ts.map +1 -1
- package/dist/types/model/queries/events/EventsQuery.d.ts.map +1 -1
- package/dist/types/model/queries/index.d.ts +1 -0
- package/dist/types/model/queries/index.d.ts.map +1 -1
- package/dist/types/model/queries/schema/SchemaQuery.d.ts +8 -0
- package/dist/types/model/queries/schema/SchemaQuery.d.ts.map +1 -0
- package/dist/types/model/queries/schema/index.d.ts +2 -0
- package/dist/types/model/queries/schema/index.d.ts.map +1 -0
- package/dist/types/resolvers/ResolverFactory.d.ts +3 -1
- package/dist/types/resolvers/ResolverFactory.d.ts.map +1 -1
- package/dist/types/resolvers/SystemResolverContext.d.ts +4 -4
- package/dist/types/resolvers/SystemResolverContext.d.ts.map +1 -1
- package/dist/types/resolvers/query/SchemaQueryResolver.d.ts +7 -0
- package/dist/types/resolvers/query/SchemaQueryResolver.d.ts.map +1 -0
- package/dist/types/schema/system.graphql.d.ts.map +1 -1
- package/dist/types/schema/types.d.ts +14 -2
- package/dist/types/schema/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/graphql.codegen.yml +3 -1
- package/package.json +17 -24
- package/src/SystemContainer.ts +14 -13
- package/src/bin/runMigrations.ts +4 -4
- package/src/index.ts +3 -2
- package/src/migrations/2020-05-06-150000-composed-primary.ts +1 -1
- package/src/migrations/2020-06-01-103000-event-trigger-perf.ts +1 -1
- package/src/migrations/2021-05-07-155800-event-log-rework.ts +1 -1
- package/src/migrations/2021-05-19-1232000-event-log-fix-constraint.ts +1 -1
- package/src/migrations/2022-10-03-110000-table-on-delete.ts +1 -1
- package/src/migrations/2023-09-11-174000-fix-on-delete.ts +1 -1
- package/src/migrations/2023-10-19-173000-fix-unique.ts +1 -1
- package/src/migrations/2024-06-28-153000-schema.ts +20 -0
- package/src/migrations/2024-06-28-153001-schema-init.ts +12 -0
- package/src/migrations/2024-07-29-150000-event-data-index.ts +11 -0
- package/src/migrations/runner.ts +10 -4
- package/src/migrations/snapshot-factory.ts +1 -1
- package/src/migrations/snapshot.ts +17 -1
- package/src/migrations/types.ts +2 -2
- package/src/model/SchemaGetter.ts +3 -0
- package/src/model/authorization/AuthorizationActions.ts +1 -0
- package/src/model/authorization/PermissionsFactory.ts +1 -0
- package/src/model/authorization/StagePermissionsFactory.ts +5 -5
- package/src/model/authorization/StageScope.ts +2 -2
- package/src/model/commands/schema/SaveSchemaCommand.ts +31 -0
- package/src/model/dependencies/content/ContentQueryExecutor.ts +3 -2
- package/src/model/migrations/MigrationAlterer.ts +14 -0
- package/src/model/migrations/ProjectMigrator.ts +34 -12
- package/src/model/migrations/SchemaProvider.ts +77 -0
- package/src/model/migrations/index.ts +1 -1
- package/src/model/queries/events/EventsQuery.ts +15 -17
- package/src/model/queries/index.ts +1 -0
- package/src/model/queries/schema/SchemaQuery.ts +48 -0
- package/src/model/queries/schema/index.ts +1 -0
- package/src/resolvers/ResolverFactory.ts +9 -1
- package/src/resolvers/SystemResolverContext.ts +8 -13
- package/src/resolvers/mutation/TruncateMutationResolver.ts +1 -1
- package/src/resolvers/query/SchemaQueryResolver.ts +19 -0
- package/src/schema/system.graphql.ts +3 -1
- package/src/schema/types.ts +13 -3
- package/tests/cases/migrations/2020-05-06-150000-composed-primary.test.ts +12 -3
- package/tests/cases/migrations/2020-06-01-103000-event-trigger-perf.test.ts +12 -3
- package/tests/cases/migrations/2022-10-03-110000-table-on-delete.test.ts +20 -8
- package/tests/cases/migrations/2023-09-11-174000-fix-on-delete.test.ts +37 -16
- package/tests/cases/migrations/2023-10-19-173000-fix-unique.test.ts +12 -3
- package/tests/cases/unit/eventsQuery.test.ts +39 -0
- package/tests/src/uuid.ts +4 -0
- package/dist/development/src/model/migrations/SchemaVersionBuilder.cjs +0 -37
- package/dist/development/src/model/migrations/SchemaVersionBuilder.cjs.map +0 -1
- package/dist/development/src/model/migrations/SchemaVersionBuilder.js +0 -37
- package/dist/development/src/model/migrations/SchemaVersionBuilder.js.map +0 -1
- package/dist/production/src/model/migrations/SchemaVersionBuilder.cjs +0 -37
- package/dist/production/src/model/migrations/SchemaVersionBuilder.cjs.map +0 -1
- package/dist/production/src/model/migrations/SchemaVersionBuilder.js +0 -37
- package/dist/production/src/model/migrations/SchemaVersionBuilder.js.map +0 -1
- package/dist/types/model/migrations/SchemaVersionBuilder.d.ts +0 -37
- package/dist/types/model/migrations/SchemaVersionBuilder.d.ts.map +0 -1
- package/src/model/migrations/SchemaVersionBuilder.ts +0 -43
|
@@ -49,23 +49,19 @@ class EventsQuery extends Database.DatabaseQuery {
|
|
|
49
49
|
return qb2.orderBy("created_at", "desc");
|
|
50
50
|
}
|
|
51
51
|
}).match(createInMatcher("type", this.filter.types?.map((it) => it.toLowerCase()))).match(createInMatcher("table_name", this.filter.tables)).match(createInMatcher("transaction_id", this.filter.transactions)).match(createInMatcher("identity_id", this.filter.identities)).match(createDateMatcher("created_at", this.filter.createdAt ?? void 0)).match(createDateMatcher("applied_at", this.filter.appliedAt ?? void 0)).match((qb2) => {
|
|
52
|
-
var _a;
|
|
53
52
|
if (!this.filter.rows) {
|
|
54
53
|
return qb2;
|
|
55
54
|
}
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
Database.ConditionBuilder.create()
|
|
67
|
-
);
|
|
68
|
-
return qb2.where(Database.ConditionBuilder.create().or(ors));
|
|
55
|
+
const ors = this.filter.rows.map((row) => {
|
|
56
|
+
const builder = Database.ConditionBuilder.create().compare("table_name", Database.Operator.eq, row.tableName);
|
|
57
|
+
return row.primaryKey.reduce((expr, val, index) => {
|
|
58
|
+
if (val === null) {
|
|
59
|
+
return expr;
|
|
60
|
+
}
|
|
61
|
+
return expr.raw(`"row_ids"->${index} = ?::jsonb`, JSON.stringify(val));
|
|
62
|
+
}, builder).getSql();
|
|
63
|
+
}).filter((it) => it !== null);
|
|
64
|
+
return qb2.where(Database.ConditionBuilder.create().or(Database.ConditionBuilder.create(ors)));
|
|
69
65
|
}).limit(this.limit, this.offset);
|
|
70
66
|
return EventQueryHelpers.createEventsFromRows(await qb.getResult(db));
|
|
71
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/EventsQuery.ts"],"sourcesContent":["import {\n\tConditionBuilder,\n\tDatabaseQuery,\n\tDatabaseQueryable,\n\tOperator,\n\tSelectBuilder,\n\tSelectBuilderSpecification, Value,\n} from '@contember/database'\nimport { ContentEvent } from '../../events'\nimport { EventsFilter, EventsFilterDate, EventsOrder } from '../../../schema'\nimport { createEventsFromRows, EventRow } from './EventQueryHelpers'\n\nexport class EventsQuery extends DatabaseQuery<ContentEvent[]> {\n\tconstructor(\n\t\tprivate readonly filter: EventsFilter,\n\t\tprivate readonly order: EventsOrder,\n\t\tprivate readonly offset: number,\n\t\tprivate readonly limit: number,\n\t) {\n\t\tsuper()\n\t}\n\n\tasync fetch({ db }: DatabaseQueryable): Promise<ContentEvent[]> {\n\t\tconst createDateMatcher = (column: string, dateFilter: EventsFilterDate | undefined): SelectBuilderSpecification => qb => {\n\t\t\tif (!dateFilter) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\tconst { from, to } = dateFilter\n\t\t\tif (from) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.gte, from))\n\t\t\t}\n\t\t\tif (to) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.lte, to))\n\t\t\t}\n\t\t\treturn qb\n\t\t}\n\t\tconst createInMatcher = (column: string | [string, string], values?: readonly Value[] | null): SelectBuilderSpecification => qb => {\n\t\t\tif (!values) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\treturn qb.where(ConditionBuilder.create().in(column, values))\n\t\t}\n\n\t\tconst qb = SelectBuilder.create<EventRow>()\n\t\t\t.select('id')\n\t\t\t.select('type')\n\t\t\t.select('table_name')\n\t\t\t.select('row_ids')\n\t\t\t.select('values')\n\t\t\t.select('created_at')\n\t\t\t.select('applied_at')\n\t\t\t.select('identity_id')\n\t\t\t.select(['event_data', 'transaction_id'])\n\n\t\t\t.from('event_data')\n\t\t\t.join('stage_transaction', undefined, on =>\n\t\t\t\ton.columnsEq(['event_data', 'transaction_id'], ['stage_transaction', 'transaction_id']),\n\t\t\t)\n\t\t\t.match(qb => {\n\t\t\t\tswitch (this.order) {\n\t\t\t\t\tcase EventsOrder.AppliedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'asc')\n\t\t\t\t\tcase EventsOrder.AppliedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'desc')\n\t\t\t\t\tcase EventsOrder.CreatedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'asc')\n\t\t\t\t\tcase EventsOrder.CreatedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'desc')\n\t\t\t\t}\n\t\t\t})\n\t\t\t.match(createInMatcher('type', this.filter.types?.map(it => it.toLowerCase())))\n\t\t\t.match(createInMatcher('table_name', this.filter.tables))\n\t\t\t.match(createInMatcher('transaction_id', this.filter.transactions))\n\t\t\t.match(createInMatcher('identity_id', this.filter.identities))\n\t\t\t.match(createDateMatcher('created_at', this.filter.createdAt ?? undefined))\n\t\t\t.match(createDateMatcher('applied_at', this.filter.appliedAt ?? undefined))\n\t\t\t.match(qb => {\n\t\t\t\tif (!this.filter.rows) {\n\t\t\t\t\treturn qb\n\t\t\t\t}\n\
|
|
1
|
+
{"version":3,"file":"EventsQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/EventsQuery.ts"],"sourcesContent":["import {\n\tConditionBuilder,\n\tDatabaseQuery,\n\tDatabaseQueryable,\n\tLiteral,\n\tOperator,\n\tSelectBuilder,\n\tSelectBuilderSpecification, Value,\n} from '@contember/database'\nimport { ContentEvent } from '../../events'\nimport { EventsFilter, EventsFilterDate, EventsOrder } from '../../../schema'\nimport { createEventsFromRows, EventRow } from './EventQueryHelpers'\n\nexport class EventsQuery extends DatabaseQuery<ContentEvent[]> {\n\tconstructor(\n\t\tprivate readonly filter: EventsFilter,\n\t\tprivate readonly order: EventsOrder,\n\t\tprivate readonly offset: number,\n\t\tprivate readonly limit: number,\n\t) {\n\t\tsuper()\n\t}\n\n\tasync fetch({ db }: DatabaseQueryable): Promise<ContentEvent[]> {\n\t\tconst createDateMatcher = (column: string, dateFilter: EventsFilterDate | undefined): SelectBuilderSpecification => qb => {\n\t\t\tif (!dateFilter) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\tconst { from, to } = dateFilter\n\t\t\tif (from) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.gte, from))\n\t\t\t}\n\t\t\tif (to) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.lte, to))\n\t\t\t}\n\t\t\treturn qb\n\t\t}\n\t\tconst createInMatcher = (column: string | [string, string], values?: readonly Value[] | null): SelectBuilderSpecification => qb => {\n\t\t\tif (!values) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\treturn qb.where(ConditionBuilder.create().in(column, values))\n\t\t}\n\n\t\tconst qb = SelectBuilder.create<EventRow>()\n\t\t\t.select('id')\n\t\t\t.select('type')\n\t\t\t.select('table_name')\n\t\t\t.select('row_ids')\n\t\t\t.select('values')\n\t\t\t.select('created_at')\n\t\t\t.select('applied_at')\n\t\t\t.select('identity_id')\n\t\t\t.select(['event_data', 'transaction_id'])\n\n\t\t\t.from('event_data')\n\t\t\t.join('stage_transaction', undefined, on =>\n\t\t\t\ton.columnsEq(['event_data', 'transaction_id'], ['stage_transaction', 'transaction_id']),\n\t\t\t)\n\t\t\t.match(qb => {\n\t\t\t\tswitch (this.order) {\n\t\t\t\t\tcase EventsOrder.AppliedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'asc')\n\t\t\t\t\tcase EventsOrder.AppliedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'desc')\n\t\t\t\t\tcase EventsOrder.CreatedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'asc')\n\t\t\t\t\tcase EventsOrder.CreatedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'desc')\n\t\t\t\t}\n\t\t\t})\n\t\t\t.match(createInMatcher('type', this.filter.types?.map(it => it.toLowerCase())))\n\t\t\t.match(createInMatcher('table_name', this.filter.tables))\n\t\t\t.match(createInMatcher('transaction_id', this.filter.transactions))\n\t\t\t.match(createInMatcher('identity_id', this.filter.identities))\n\t\t\t.match(createDateMatcher('created_at', this.filter.createdAt ?? undefined))\n\t\t\t.match(createDateMatcher('applied_at', this.filter.appliedAt ?? undefined))\n\t\t\t.match(qb => {\n\t\t\t\tif (!this.filter.rows) {\n\t\t\t\t\treturn qb\n\t\t\t\t}\n\n\t\t\t\tconst ors: Literal[] = this.filter.rows.map(row => {\n\t\t\t\t\tconst builder = ConditionBuilder.create()\n\t\t\t\t\t\t.compare('table_name', Operator.eq, row.tableName)\n\n\t\t\t\t\treturn row.primaryKey.reduce((expr, val, index) => {\n\t\t\t\t\t\tif (val === null) {\n\t\t\t\t\t\t\treturn expr\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn expr.raw(`\"row_ids\"->${index} = ?::jsonb`, JSON.stringify(val))\n\t\t\t\t\t}, builder).getSql()\n\t\t\t\t}).filter((it): it is Literal => it !== null)\n\n\t\t\t\treturn qb.where(ConditionBuilder.create().or(ConditionBuilder.create(ors)))\n\t\t\t})\n\n\t\t\t.limit(this.limit, this.offset)\n\n\t\treturn createEventsFromRows(await qb.getResult(db))\n\t}\n\n}\n"],"names":["DatabaseQuery","qb","Operator","ConditionBuilder","SelectBuilder","EventsOrder","createEventsFromRows"],"mappings":";;;;;;;AAaO,MAAM,oBAAoBA,SAAAA,cAA8B;AAAA,EAC9D,YACkB,QACA,OACA,QACA,OAChB;AACK,UAAA;AALW,SAAA,SAAA;AACA,SAAA,QAAA;AACA,SAAA,SAAA;AACA,SAAA,QAAA;AAAA,EAAA;AAAA,EAKlB,MAAM,MAAM,EAAE,MAAkD;AAC/D,UAAM,oBAAoB,CAAC,QAAgB,eAAyE,CAAAC,QAAM;AACzH,UAAI,CAAC,YAAY;AACTA,eAAAA;AAAAA,MAAA;AAEF,YAAA,EAAE,MAAM,GAAA,IAAO;AACrB,UAAI,MAAM;AACTA,cAAKA,IAAG,MAAM,CAAQ,SAAA,KAAK,QAAQ,QAAQC,SAAAA,SAAS,KAAK,IAAI,CAAC;AAAA,MAAA;AAE/D,UAAI,IAAI;AACPD,cAAKA,IAAG,MAAM,CAAQ,SAAA,KAAK,QAAQ,QAAQC,SAAAA,SAAS,KAAK,EAAE,CAAC;AAAA,MAAA;AAEtDD,aAAAA;AAAAA,IACR;AACA,UAAM,kBAAkB,CAAC,QAAmC,WAAiE,CAAAA,QAAM;AAClI,UAAI,CAAC,QAAQ;AACLA,eAAAA;AAAAA,MAAA;AAEDA,aAAAA,IAAG,MAAME,0BAAiB,SAAS,GAAG,QAAQ,MAAM,CAAC;AAAA,IAC7D;AAEA,UAAM,KAAKC,SAAAA,cAAc,OACvB,EAAA,OAAO,IAAI,EACX,OAAO,MAAM,EACb,OAAO,YAAY,EACnB,OAAO,SAAS,EAChB,OAAO,QAAQ,EACf,OAAO,YAAY,EACnB,OAAO,YAAY,EACnB,OAAO,aAAa,EACpB,OAAO,CAAC,cAAc,gBAAgB,CAAC,EAEvC,KAAK,YAAY,EACjB;AAAA,MAAK;AAAA,MAAqB;AAAA,MAAW,CAAA,OACrC,GAAG,UAAU,CAAC,cAAc,gBAAgB,GAAG,CAAC,qBAAqB,gBAAgB,CAAC;AAAA,IAAA,EAEtF,MAAM,CAAAH,QAAM;AACZ,cAAQ,KAAK,OAAO;AAAA,QACnB,KAAKI,MAAY,YAAA;AACTJ,iBAAAA,IAAG,QAAQ,cAAc,KAAK;AAAA,QACtC,KAAKI,MAAY,YAAA;AACTJ,iBAAAA,IAAG,QAAQ,cAAc,MAAM;AAAA,QACvC,KAAKI,MAAY,YAAA;AACTJ,iBAAAA,IAAG,QAAQ,cAAc,KAAK;AAAA,QACtC,KAAKI,MAAY,YAAA;AACTJ,iBAAAA,IAAG,QAAQ,cAAc,MAAM;AAAA,MAAA;AAAA,IAExC,CAAA,EACA,MAAM,gBAAgB,QAAQ,KAAK,OAAO,OAAO,IAAI,CAAA,OAAM,GAAG,YAAA,CAAa,CAAC,CAAC,EAC7E,MAAM,gBAAgB,cAAc,KAAK,OAAO,MAAM,CAAC,EACvD,MAAM,gBAAgB,kBAAkB,KAAK,OAAO,YAAY,CAAC,EACjE,MAAM,gBAAgB,eAAe,KAAK,OAAO,UAAU,CAAC,EAC5D,MAAM,kBAAkB,cAAc,KAAK,OAAO,aAAa,MAAS,CAAC,EACzE,MAAM,kBAAkB,cAAc,KAAK,OAAO,aAAa,MAAS,CAAC,EACzE,MAAM,CAAAA,QAAM;AACR,UAAA,CAAC,KAAK,OAAO,MAAM;AACfA,eAAAA;AAAAA,MAAA;AAGR,YAAM,MAAiB,KAAK,OAAO,KAAK,IAAI,CAAO,QAAA;AAC5C,cAAA,UAAUE,0BAAiB,SAC/B,QAAQ,cAAcD,kBAAS,IAAI,IAAI,SAAS;AAElD,eAAO,IAAI,WAAW,OAAO,CAAC,MAAM,KAAK,UAAU;AAClD,cAAI,QAAQ,MAAM;AACV,mBAAA;AAAA,UAAA;AAED,iBAAA,KAAK,IAAI,cAAc,KAAK,eAAe,KAAK,UAAU,GAAG,CAAC;AAAA,QAAA,GACnE,OAAO,EAAE,OAAO;AAAA,MACnB,CAAA,EAAE,OAAO,CAAC,OAAsB,OAAO,IAAI;AAErCD,aAAAA,IAAG,MAAME,SAAAA,iBAAiB,OAAO,EAAE,GAAGA,0BAAiB,OAAO,GAAG,CAAC,CAAC;AAAA,IAC1E,CAAA,EAEA,MAAM,KAAK,OAAO,KAAK,MAAM;AAE/B,WAAOG,kBAAqB,qBAAA,MAAM,GAAG,UAAU,EAAE,CAAC;AAAA,EAAA;AAGpD;;"}
|
|
@@ -47,23 +47,19 @@ class EventsQuery extends DatabaseQuery {
|
|
|
47
47
|
return qb2.orderBy("created_at", "desc");
|
|
48
48
|
}
|
|
49
49
|
}).match(createInMatcher("type", this.filter.types?.map((it) => it.toLowerCase()))).match(createInMatcher("table_name", this.filter.tables)).match(createInMatcher("transaction_id", this.filter.transactions)).match(createInMatcher("identity_id", this.filter.identities)).match(createDateMatcher("created_at", this.filter.createdAt ?? void 0)).match(createDateMatcher("applied_at", this.filter.appliedAt ?? void 0)).match((qb2) => {
|
|
50
|
-
var _a;
|
|
51
50
|
if (!this.filter.rows) {
|
|
52
51
|
return qb2;
|
|
53
52
|
}
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
ConditionBuilder.create()
|
|
65
|
-
);
|
|
66
|
-
return qb2.where(ConditionBuilder.create().or(ors));
|
|
53
|
+
const ors = this.filter.rows.map((row) => {
|
|
54
|
+
const builder = ConditionBuilder.create().compare("table_name", Operator.eq, row.tableName);
|
|
55
|
+
return row.primaryKey.reduce((expr, val, index) => {
|
|
56
|
+
if (val === null) {
|
|
57
|
+
return expr;
|
|
58
|
+
}
|
|
59
|
+
return expr.raw(`"row_ids"->${index} = ?::jsonb`, JSON.stringify(val));
|
|
60
|
+
}, builder).getSql();
|
|
61
|
+
}).filter((it) => it !== null);
|
|
62
|
+
return qb2.where(ConditionBuilder.create().or(ConditionBuilder.create(ors)));
|
|
67
63
|
}).limit(this.limit, this.offset);
|
|
68
64
|
return createEventsFromRows(await qb.getResult(db));
|
|
69
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/EventsQuery.ts"],"sourcesContent":["import {\n\tConditionBuilder,\n\tDatabaseQuery,\n\tDatabaseQueryable,\n\tOperator,\n\tSelectBuilder,\n\tSelectBuilderSpecification, Value,\n} from '@contember/database'\nimport { ContentEvent } from '../../events'\nimport { EventsFilter, EventsFilterDate, EventsOrder } from '../../../schema'\nimport { createEventsFromRows, EventRow } from './EventQueryHelpers'\n\nexport class EventsQuery extends DatabaseQuery<ContentEvent[]> {\n\tconstructor(\n\t\tprivate readonly filter: EventsFilter,\n\t\tprivate readonly order: EventsOrder,\n\t\tprivate readonly offset: number,\n\t\tprivate readonly limit: number,\n\t) {\n\t\tsuper()\n\t}\n\n\tasync fetch({ db }: DatabaseQueryable): Promise<ContentEvent[]> {\n\t\tconst createDateMatcher = (column: string, dateFilter: EventsFilterDate | undefined): SelectBuilderSpecification => qb => {\n\t\t\tif (!dateFilter) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\tconst { from, to } = dateFilter\n\t\t\tif (from) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.gte, from))\n\t\t\t}\n\t\t\tif (to) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.lte, to))\n\t\t\t}\n\t\t\treturn qb\n\t\t}\n\t\tconst createInMatcher = (column: string | [string, string], values?: readonly Value[] | null): SelectBuilderSpecification => qb => {\n\t\t\tif (!values) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\treturn qb.where(ConditionBuilder.create().in(column, values))\n\t\t}\n\n\t\tconst qb = SelectBuilder.create<EventRow>()\n\t\t\t.select('id')\n\t\t\t.select('type')\n\t\t\t.select('table_name')\n\t\t\t.select('row_ids')\n\t\t\t.select('values')\n\t\t\t.select('created_at')\n\t\t\t.select('applied_at')\n\t\t\t.select('identity_id')\n\t\t\t.select(['event_data', 'transaction_id'])\n\n\t\t\t.from('event_data')\n\t\t\t.join('stage_transaction', undefined, on =>\n\t\t\t\ton.columnsEq(['event_data', 'transaction_id'], ['stage_transaction', 'transaction_id']),\n\t\t\t)\n\t\t\t.match(qb => {\n\t\t\t\tswitch (this.order) {\n\t\t\t\t\tcase EventsOrder.AppliedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'asc')\n\t\t\t\t\tcase EventsOrder.AppliedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'desc')\n\t\t\t\t\tcase EventsOrder.CreatedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'asc')\n\t\t\t\t\tcase EventsOrder.CreatedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'desc')\n\t\t\t\t}\n\t\t\t})\n\t\t\t.match(createInMatcher('type', this.filter.types?.map(it => it.toLowerCase())))\n\t\t\t.match(createInMatcher('table_name', this.filter.tables))\n\t\t\t.match(createInMatcher('transaction_id', this.filter.transactions))\n\t\t\t.match(createInMatcher('identity_id', this.filter.identities))\n\t\t\t.match(createDateMatcher('created_at', this.filter.createdAt ?? undefined))\n\t\t\t.match(createDateMatcher('applied_at', this.filter.appliedAt ?? undefined))\n\t\t\t.match(qb => {\n\t\t\t\tif (!this.filter.rows) {\n\t\t\t\t\treturn qb\n\t\t\t\t}\n\
|
|
1
|
+
{"version":3,"file":"EventsQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/EventsQuery.ts"],"sourcesContent":["import {\n\tConditionBuilder,\n\tDatabaseQuery,\n\tDatabaseQueryable,\n\tLiteral,\n\tOperator,\n\tSelectBuilder,\n\tSelectBuilderSpecification, Value,\n} from '@contember/database'\nimport { ContentEvent } from '../../events'\nimport { EventsFilter, EventsFilterDate, EventsOrder } from '../../../schema'\nimport { createEventsFromRows, EventRow } from './EventQueryHelpers'\n\nexport class EventsQuery extends DatabaseQuery<ContentEvent[]> {\n\tconstructor(\n\t\tprivate readonly filter: EventsFilter,\n\t\tprivate readonly order: EventsOrder,\n\t\tprivate readonly offset: number,\n\t\tprivate readonly limit: number,\n\t) {\n\t\tsuper()\n\t}\n\n\tasync fetch({ db }: DatabaseQueryable): Promise<ContentEvent[]> {\n\t\tconst createDateMatcher = (column: string, dateFilter: EventsFilterDate | undefined): SelectBuilderSpecification => qb => {\n\t\t\tif (!dateFilter) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\tconst { from, to } = dateFilter\n\t\t\tif (from) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.gte, from))\n\t\t\t}\n\t\t\tif (to) {\n\t\t\t\tqb = qb.where(expr => expr.compare(column, Operator.lte, to))\n\t\t\t}\n\t\t\treturn qb\n\t\t}\n\t\tconst createInMatcher = (column: string | [string, string], values?: readonly Value[] | null): SelectBuilderSpecification => qb => {\n\t\t\tif (!values) {\n\t\t\t\treturn qb\n\t\t\t}\n\t\t\treturn qb.where(ConditionBuilder.create().in(column, values))\n\t\t}\n\n\t\tconst qb = SelectBuilder.create<EventRow>()\n\t\t\t.select('id')\n\t\t\t.select('type')\n\t\t\t.select('table_name')\n\t\t\t.select('row_ids')\n\t\t\t.select('values')\n\t\t\t.select('created_at')\n\t\t\t.select('applied_at')\n\t\t\t.select('identity_id')\n\t\t\t.select(['event_data', 'transaction_id'])\n\n\t\t\t.from('event_data')\n\t\t\t.join('stage_transaction', undefined, on =>\n\t\t\t\ton.columnsEq(['event_data', 'transaction_id'], ['stage_transaction', 'transaction_id']),\n\t\t\t)\n\t\t\t.match(qb => {\n\t\t\t\tswitch (this.order) {\n\t\t\t\t\tcase EventsOrder.AppliedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'asc')\n\t\t\t\t\tcase EventsOrder.AppliedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('applied_at', 'desc')\n\t\t\t\t\tcase EventsOrder.CreatedAtAsc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'asc')\n\t\t\t\t\tcase EventsOrder.CreatedAtDesc:\n\t\t\t\t\t\treturn qb.orderBy('created_at', 'desc')\n\t\t\t\t}\n\t\t\t})\n\t\t\t.match(createInMatcher('type', this.filter.types?.map(it => it.toLowerCase())))\n\t\t\t.match(createInMatcher('table_name', this.filter.tables))\n\t\t\t.match(createInMatcher('transaction_id', this.filter.transactions))\n\t\t\t.match(createInMatcher('identity_id', this.filter.identities))\n\t\t\t.match(createDateMatcher('created_at', this.filter.createdAt ?? undefined))\n\t\t\t.match(createDateMatcher('applied_at', this.filter.appliedAt ?? undefined))\n\t\t\t.match(qb => {\n\t\t\t\tif (!this.filter.rows) {\n\t\t\t\t\treturn qb\n\t\t\t\t}\n\n\t\t\t\tconst ors: Literal[] = this.filter.rows.map(row => {\n\t\t\t\t\tconst builder = ConditionBuilder.create()\n\t\t\t\t\t\t.compare('table_name', Operator.eq, row.tableName)\n\n\t\t\t\t\treturn row.primaryKey.reduce((expr, val, index) => {\n\t\t\t\t\t\tif (val === null) {\n\t\t\t\t\t\t\treturn expr\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn expr.raw(`\"row_ids\"->${index} = ?::jsonb`, JSON.stringify(val))\n\t\t\t\t\t}, builder).getSql()\n\t\t\t\t}).filter((it): it is Literal => it !== null)\n\n\t\t\t\treturn qb.where(ConditionBuilder.create().or(ConditionBuilder.create(ors)))\n\t\t\t})\n\n\t\t\t.limit(this.limit, this.offset)\n\n\t\treturn createEventsFromRows(await qb.getResult(db))\n\t}\n\n}\n"],"names":["qb"],"mappings":";;;;;AAaO,MAAM,oBAAoB,cAA8B;AAAA,EAC9D,YACkB,QACA,OACA,QACA,OAChB;AACK,UAAA;AALW,SAAA,SAAA;AACA,SAAA,QAAA;AACA,SAAA,SAAA;AACA,SAAA,QAAA;AAAA,EAAA;AAAA,EAKlB,MAAM,MAAM,EAAE,MAAkD;AAC/D,UAAM,oBAAoB,CAAC,QAAgB,eAAyE,CAAAA,QAAM;AACzH,UAAI,CAAC,YAAY;AACTA,eAAAA;AAAAA,MAAA;AAEF,YAAA,EAAE,MAAM,GAAA,IAAO;AACrB,UAAI,MAAM;AACTA,cAAKA,IAAG,MAAM,CAAQ,SAAA,KAAK,QAAQ,QAAQ,SAAS,KAAK,IAAI,CAAC;AAAA,MAAA;AAE/D,UAAI,IAAI;AACPA,cAAKA,IAAG,MAAM,CAAQ,SAAA,KAAK,QAAQ,QAAQ,SAAS,KAAK,EAAE,CAAC;AAAA,MAAA;AAEtDA,aAAAA;AAAAA,IACR;AACA,UAAM,kBAAkB,CAAC,QAAmC,WAAiE,CAAAA,QAAM;AAClI,UAAI,CAAC,QAAQ;AACLA,eAAAA;AAAAA,MAAA;AAEDA,aAAAA,IAAG,MAAM,iBAAiB,SAAS,GAAG,QAAQ,MAAM,CAAC;AAAA,IAC7D;AAEA,UAAM,KAAK,cAAc,OACvB,EAAA,OAAO,IAAI,EACX,OAAO,MAAM,EACb,OAAO,YAAY,EACnB,OAAO,SAAS,EAChB,OAAO,QAAQ,EACf,OAAO,YAAY,EACnB,OAAO,YAAY,EACnB,OAAO,aAAa,EACpB,OAAO,CAAC,cAAc,gBAAgB,CAAC,EAEvC,KAAK,YAAY,EACjB;AAAA,MAAK;AAAA,MAAqB;AAAA,MAAW,CAAA,OACrC,GAAG,UAAU,CAAC,cAAc,gBAAgB,GAAG,CAAC,qBAAqB,gBAAgB,CAAC;AAAA,IAAA,EAEtF,MAAM,CAAAA,QAAM;AACZ,cAAQ,KAAK,OAAO;AAAA,QACnB,KAAK,YAAY;AACTA,iBAAAA,IAAG,QAAQ,cAAc,KAAK;AAAA,QACtC,KAAK,YAAY;AACTA,iBAAAA,IAAG,QAAQ,cAAc,MAAM;AAAA,QACvC,KAAK,YAAY;AACTA,iBAAAA,IAAG,QAAQ,cAAc,KAAK;AAAA,QACtC,KAAK,YAAY;AACTA,iBAAAA,IAAG,QAAQ,cAAc,MAAM;AAAA,MAAA;AAAA,IAExC,CAAA,EACA,MAAM,gBAAgB,QAAQ,KAAK,OAAO,OAAO,IAAI,CAAA,OAAM,GAAG,YAAA,CAAa,CAAC,CAAC,EAC7E,MAAM,gBAAgB,cAAc,KAAK,OAAO,MAAM,CAAC,EACvD,MAAM,gBAAgB,kBAAkB,KAAK,OAAO,YAAY,CAAC,EACjE,MAAM,gBAAgB,eAAe,KAAK,OAAO,UAAU,CAAC,EAC5D,MAAM,kBAAkB,cAAc,KAAK,OAAO,aAAa,MAAS,CAAC,EACzE,MAAM,kBAAkB,cAAc,KAAK,OAAO,aAAa,MAAS,CAAC,EACzE,MAAM,CAAAA,QAAM;AACR,UAAA,CAAC,KAAK,OAAO,MAAM;AACfA,eAAAA;AAAAA,MAAA;AAGR,YAAM,MAAiB,KAAK,OAAO,KAAK,IAAI,CAAO,QAAA;AAC5C,cAAA,UAAU,iBAAiB,SAC/B,QAAQ,cAAc,SAAS,IAAI,IAAI,SAAS;AAElD,eAAO,IAAI,WAAW,OAAO,CAAC,MAAM,KAAK,UAAU;AAClD,cAAI,QAAQ,MAAM;AACV,mBAAA;AAAA,UAAA;AAED,iBAAA,KAAK,IAAI,cAAc,KAAK,eAAe,KAAK,UAAU,GAAG,CAAC;AAAA,QAAA,GACnE,OAAO,EAAE,OAAO;AAAA,MACnB,CAAA,EAAE,OAAO,CAAC,OAAsB,OAAO,IAAI;AAErCA,aAAAA,IAAG,MAAM,iBAAiB,OAAO,EAAE,GAAG,iBAAiB,OAAO,GAAG,CAAC,CAAC;AAAA,IAC1E,CAAA,EAEA,MAAM,KAAK,OAAO,KAAK,MAAM;AAE/B,WAAO,qBAAqB,MAAM,GAAG,UAAU,EAAE,CAAC;AAAA,EAAA;AAGpD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LatestTransactionIdByStageQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/LatestTransactionIdByStageQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, SelectBuilder } from '@contember/database'\nimport { ImplementationException } from '../../../utils'\n\nexport class LatestTransactionIdByStageQuery extends DatabaseQuery<string> {\n\tconstructor(private readonly stageId: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<string> {\n\t\tconst rows = await SelectBuilder.create<{ transaction_id: string }>()\n\t\t\t.from('stage_transaction')\n\t\t\t.select('transaction_id')\n\t\t\t.where({ stage_id: this.stageId })\n\t\t\t.orderBy('applied_at', 'desc')\n\t\t\t.limit(1)\n\t\t\t.getResult(queryable.db)\n\n\t\tif (rows.length !== 1) {\n\t\t\tthrow new ImplementationException()\n\t\t}\n\t\treturn rows[0].transaction_id\n\t}\n}\n"],"names":["DatabaseQuery","SelectBuilder","ImplementationException"],"mappings":";;;;AAGO,MAAM,wCAAwCA,SAAAA,cAAsB;AAAA,EAC1E,YAA6B,SAAiB;AACvC;AADsB,SAAA,UAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"LatestTransactionIdByStageQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/LatestTransactionIdByStageQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, SelectBuilder } from '@contember/database'\nimport { ImplementationException } from '../../../utils'\n\nexport class LatestTransactionIdByStageQuery extends DatabaseQuery<string> {\n\tconstructor(private readonly stageId: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<string> {\n\t\tconst rows = await SelectBuilder.create<{ transaction_id: string }>()\n\t\t\t.from('stage_transaction')\n\t\t\t.select('transaction_id')\n\t\t\t.where({ stage_id: this.stageId })\n\t\t\t.orderBy('applied_at', 'desc')\n\t\t\t.limit(1)\n\t\t\t.getResult(queryable.db)\n\n\t\tif (rows.length !== 1) {\n\t\t\tthrow new ImplementationException()\n\t\t}\n\t\treturn rows[0].transaction_id\n\t}\n}\n"],"names":["DatabaseQuery","SelectBuilder","ImplementationException"],"mappings":";;;;AAGO,MAAM,wCAAwCA,SAAAA,cAAsB;AAAA,EAC1E,YAA6B,SAAiB;AACvC,UAAA;AADsB,SAAA,UAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAA+C;AACpD,UAAA,OAAO,MAAMC,uBAAc,SAC/B,KAAK,mBAAmB,EACxB,OAAO,gBAAgB,EACvB,MAAM,EAAE,UAAU,KAAK,QAAS,CAAA,EAChC,QAAQ,cAAc,MAAM,EAC5B,MAAM,CAAC,EACP,UAAU,UAAU,EAAE;AAEpB,QAAA,KAAK,WAAW,GAAG;AACtB,YAAM,IAAIC,WAAAA,wBAAwB;AAAA,IAAA;AAE5B,WAAA,KAAK,CAAC,EAAE;AAAA,EAAA;AAEjB;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LatestTransactionIdByStageQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/LatestTransactionIdByStageQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, SelectBuilder } from '@contember/database'\nimport { ImplementationException } from '../../../utils'\n\nexport class LatestTransactionIdByStageQuery extends DatabaseQuery<string> {\n\tconstructor(private readonly stageId: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<string> {\n\t\tconst rows = await SelectBuilder.create<{ transaction_id: string }>()\n\t\t\t.from('stage_transaction')\n\t\t\t.select('transaction_id')\n\t\t\t.where({ stage_id: this.stageId })\n\t\t\t.orderBy('applied_at', 'desc')\n\t\t\t.limit(1)\n\t\t\t.getResult(queryable.db)\n\n\t\tif (rows.length !== 1) {\n\t\t\tthrow new ImplementationException()\n\t\t}\n\t\treturn rows[0].transaction_id\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,wCAAwC,cAAsB;AAAA,EAC1E,YAA6B,SAAiB;AACvC;AADsB,SAAA,UAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"LatestTransactionIdByStageQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/LatestTransactionIdByStageQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, SelectBuilder } from '@contember/database'\nimport { ImplementationException } from '../../../utils'\n\nexport class LatestTransactionIdByStageQuery extends DatabaseQuery<string> {\n\tconstructor(private readonly stageId: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<string> {\n\t\tconst rows = await SelectBuilder.create<{ transaction_id: string }>()\n\t\t\t.from('stage_transaction')\n\t\t\t.select('transaction_id')\n\t\t\t.where({ stage_id: this.stageId })\n\t\t\t.orderBy('applied_at', 'desc')\n\t\t\t.limit(1)\n\t\t\t.getResult(queryable.db)\n\n\t\tif (rows.length !== 1) {\n\t\t\tthrow new ImplementationException()\n\t\t}\n\t\treturn rows[0].transaction_id\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,wCAAwC,cAAsB;AAAA,EAC1E,YAA6B,SAAiB;AACvC,UAAA;AADsB,SAAA,UAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAA+C;AACpD,UAAA,OAAO,MAAM,cAAc,SAC/B,KAAK,mBAAmB,EACxB,OAAO,gBAAgB,EACvB,MAAM,EAAE,UAAU,KAAK,QAAS,CAAA,EAChC,QAAQ,cAAc,MAAM,EAC5B,MAAM,CAAC,EACP,UAAU,UAAU,EAAE;AAEpB,QAAA,KAAK,WAAW,GAAG;AACtB,YAAM,IAAI,wBAAwB;AAAA,IAAA;AAE5B,WAAA,KAAK,CAAC,EAAE;AAAA,EAAA;AAEjB;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OldValuesQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/OldValuesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, Operator, SelectBuilder } from '@contember/database'\n\nexport class OldValuesQuery extends DatabaseQuery<Record<string, any>> {\n\tconstructor(private readonly ids: string[]) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<Record<string, any>> {\n\t\tconst qb = SelectBuilder.create()\n\t\t\t.select(expr => expr.raw('JSONB_OBJECT_AGG(values.key, values.value ORDER BY previous.created_at ASC)'), 'values')\n\t\t\t.select(['event_data', 'id'])\n\t\t\t.from('event_data')\n\t\t\t.join('event_data', 'previous', on => on\n\t\t\t\t.columnsEq(['event_data', 'row_ids'], ['previous', 'row_ids'])\n\t\t\t\t.compareColumns(['event_data', 'created_at'], Operator.gt, ['previous', 'created_at']),\n\t\t\t)\n\t\t\t.join(new Literal('JSONB_EACH(previous.values)'), 'values')\n\t\t\t.where(where => where.in(['event_data', 'id'], this.ids))\n\t\t\t.groupBy(['event_data', 'id'])\n\n\t\treturn Object.fromEntries((await qb.getResult(queryable.db)).map(it => [it.id, it.values]))\n\t}\n}\n"],"names":["DatabaseQuery","SelectBuilder","Operator","Literal"],"mappings":";;;AAEO,MAAM,uBAAuBA,SAAAA,cAAmC;AAAA,EACtE,YAA6B,KAAe;AACrC;AADsB,SAAA,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"OldValuesQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/OldValuesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, Operator, SelectBuilder } from '@contember/database'\n\nexport class OldValuesQuery extends DatabaseQuery<Record<string, any>> {\n\tconstructor(private readonly ids: string[]) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<Record<string, any>> {\n\t\tconst qb = SelectBuilder.create()\n\t\t\t.select(expr => expr.raw('JSONB_OBJECT_AGG(values.key, values.value ORDER BY previous.created_at ASC)'), 'values')\n\t\t\t.select(['event_data', 'id'])\n\t\t\t.from('event_data')\n\t\t\t.join('event_data', 'previous', on => on\n\t\t\t\t.columnsEq(['event_data', 'row_ids'], ['previous', 'row_ids'])\n\t\t\t\t.compareColumns(['event_data', 'created_at'], Operator.gt, ['previous', 'created_at']),\n\t\t\t)\n\t\t\t.join(new Literal('JSONB_EACH(previous.values)'), 'values')\n\t\t\t.where(where => where.in(['event_data', 'id'], this.ids))\n\t\t\t.groupBy(['event_data', 'id'])\n\n\t\treturn Object.fromEntries((await qb.getResult(queryable.db)).map(it => [it.id, it.values]))\n\t}\n}\n"],"names":["DatabaseQuery","SelectBuilder","Operator","Literal"],"mappings":";;;AAEO,MAAM,uBAAuBA,SAAAA,cAAmC;AAAA,EACtE,YAA6B,KAAe;AACrC,UAAA;AADsB,SAAA,MAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAA4D;AACjE,UAAA,KAAKC,uBAAc,OAAO,EAC9B,OAAO,CAAQ,SAAA,KAAK,IAAI,6EAA6E,GAAG,QAAQ,EAChH,OAAO,CAAC,cAAc,IAAI,CAAC,EAC3B,KAAK,YAAY,EACjB;AAAA,MAAK;AAAA,MAAc;AAAA,MAAY,CAAA,OAAM,GACpC,UAAU,CAAC,cAAc,SAAS,GAAG,CAAC,YAAY,SAAS,CAAC,EAC5D,eAAe,CAAC,cAAc,YAAY,GAAGC,kBAAS,IAAI,CAAC,YAAY,YAAY,CAAC;AAAA,IAAA,EAErF,KAAK,IAAIC,SAAQ,QAAA,6BAA6B,GAAG,QAAQ,EACzD,MAAM,CAAA,UAAS,MAAM,GAAG,CAAC,cAAc,IAAI,GAAG,KAAK,GAAG,CAAC,EACvD,QAAQ,CAAC,cAAc,IAAI,CAAC;AAE9B,WAAO,OAAO,aAAa,MAAM,GAAG,UAAU,UAAU,EAAE,GAAG,IAAI,CAAA,OAAM,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC;AAAA,EAAA;AAE5F;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OldValuesQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/OldValuesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, Operator, SelectBuilder } from '@contember/database'\n\nexport class OldValuesQuery extends DatabaseQuery<Record<string, any>> {\n\tconstructor(private readonly ids: string[]) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<Record<string, any>> {\n\t\tconst qb = SelectBuilder.create()\n\t\t\t.select(expr => expr.raw('JSONB_OBJECT_AGG(values.key, values.value ORDER BY previous.created_at ASC)'), 'values')\n\t\t\t.select(['event_data', 'id'])\n\t\t\t.from('event_data')\n\t\t\t.join('event_data', 'previous', on => on\n\t\t\t\t.columnsEq(['event_data', 'row_ids'], ['previous', 'row_ids'])\n\t\t\t\t.compareColumns(['event_data', 'created_at'], Operator.gt, ['previous', 'created_at']),\n\t\t\t)\n\t\t\t.join(new Literal('JSONB_EACH(previous.values)'), 'values')\n\t\t\t.where(where => where.in(['event_data', 'id'], this.ids))\n\t\t\t.groupBy(['event_data', 'id'])\n\n\t\treturn Object.fromEntries((await qb.getResult(queryable.db)).map(it => [it.id, it.values]))\n\t}\n}\n"],"names":[],"mappings":";AAEO,MAAM,uBAAuB,cAAmC;AAAA,EACtE,YAA6B,KAAe;AACrC;AADsB,SAAA,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"OldValuesQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/events/OldValuesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, Operator, SelectBuilder } from '@contember/database'\n\nexport class OldValuesQuery extends DatabaseQuery<Record<string, any>> {\n\tconstructor(private readonly ids: string[]) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<Record<string, any>> {\n\t\tconst qb = SelectBuilder.create()\n\t\t\t.select(expr => expr.raw('JSONB_OBJECT_AGG(values.key, values.value ORDER BY previous.created_at ASC)'), 'values')\n\t\t\t.select(['event_data', 'id'])\n\t\t\t.from('event_data')\n\t\t\t.join('event_data', 'previous', on => on\n\t\t\t\t.columnsEq(['event_data', 'row_ids'], ['previous', 'row_ids'])\n\t\t\t\t.compareColumns(['event_data', 'created_at'], Operator.gt, ['previous', 'created_at']),\n\t\t\t)\n\t\t\t.join(new Literal('JSONB_EACH(previous.values)'), 'values')\n\t\t\t.where(where => where.in(['event_data', 'id'], this.ids))\n\t\t\t.groupBy(['event_data', 'id'])\n\n\t\treturn Object.fromEntries((await qb.getResult(queryable.db)).map(it => [it.id, it.values]))\n\t}\n}\n"],"names":[],"mappings":";AAEO,MAAM,uBAAuB,cAAmC;AAAA,EACtE,YAA6B,KAAe;AACrC,UAAA;AADsB,SAAA,MAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAA4D;AACjE,UAAA,KAAK,cAAc,OAAO,EAC9B,OAAO,CAAQ,SAAA,KAAK,IAAI,6EAA6E,GAAG,QAAQ,EAChH,OAAO,CAAC,cAAc,IAAI,CAAC,EAC3B,KAAK,YAAY,EACjB;AAAA,MAAK;AAAA,MAAc;AAAA,MAAY,CAAA,OAAM,GACpC,UAAU,CAAC,cAAc,SAAS,GAAG,CAAC,YAAY,SAAS,CAAC,EAC5D,eAAe,CAAC,cAAc,YAAY,GAAG,SAAS,IAAI,CAAC,YAAY,YAAY,CAAC;AAAA,IAAA,EAErF,KAAK,IAAI,QAAQ,6BAA6B,GAAG,QAAQ,EACzD,MAAM,CAAA,UAAS,MAAM,GAAG,CAAC,cAAc,IAAI,GAAG,KAAK,GAAG,CAAC,EACvD,QAAQ,CAAC,cAAc,IAAI,CAAC;AAE9B,WAAO,OAAO,aAAa,MAAM,GAAG,UAAU,UAAU,EAAE,GAAG,IAAI,CAAA,OAAM,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC;AAAA,EAAA;AAE5F;"}
|
package/dist/development/src/model/queries/migrations/ExecutedMigrationByVersionQuery.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationByVersionQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationByVersionQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationByVersionQuery extends DatabaseQuery<ExecutedMigration | null> {\n\tconstructor(private version: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration | null> {\n\t\tconst builder = createExecutedMigrationQueryBuilder().where({ version: this.version })\n\t\tconst rows = await builder.getResult(queryable.db)\n\t\tconst migration = await this.fetchOneOrNull(rows)\n\t\treturn migration ? createExecutedMigrationDto(migration) : null\n\t}\n}\n"],"names":["DatabaseQuery","createExecutedMigrationQueryBuilder","createExecutedMigrationDto"],"mappings":";;;;AAIO,MAAM,wCAAwCA,SAAAA,cAAwC;AAAA,EAC5F,YAAoB,SAAiB;AAC9B;AADa,SAAA,UAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationByVersionQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationByVersionQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationByVersionQuery extends DatabaseQuery<ExecutedMigration | null> {\n\tconstructor(private version: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration | null> {\n\t\tconst builder = createExecutedMigrationQueryBuilder().where({ version: this.version })\n\t\tconst rows = await builder.getResult(queryable.db)\n\t\tconst migration = await this.fetchOneOrNull(rows)\n\t\treturn migration ? createExecutedMigrationDto(migration) : null\n\t}\n}\n"],"names":["DatabaseQuery","createExecutedMigrationQueryBuilder","createExecutedMigrationDto"],"mappings":";;;;AAIO,MAAM,wCAAwCA,SAAAA,cAAwC;AAAA,EAC5F,YAAoB,SAAiB;AAC9B,UAAA;AADa,SAAA,UAAA;AAAA,EAAA;AAAA,EAIpB,MAAM,MAAM,WAAiE;AACtE,UAAA,UAAUC,8BAAAA,sCAAsC,MAAM,EAAE,SAAS,KAAK,SAAS;AACrF,UAAM,OAAO,MAAM,QAAQ,UAAU,UAAU,EAAE;AACjD,UAAM,YAAY,MAAM,KAAK,eAAe,IAAI;AACzC,WAAA,YAAYC,8BAAAA,2BAA2B,SAAS,IAAI;AAAA,EAAA;AAE7D;;"}
|
package/dist/development/src/model/queries/migrations/ExecutedMigrationByVersionQuery.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationByVersionQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationByVersionQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationByVersionQuery extends DatabaseQuery<ExecutedMigration | null> {\n\tconstructor(private version: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration | null> {\n\t\tconst builder = createExecutedMigrationQueryBuilder().where({ version: this.version })\n\t\tconst rows = await builder.getResult(queryable.db)\n\t\tconst migration = await this.fetchOneOrNull(rows)\n\t\treturn migration ? createExecutedMigrationDto(migration) : null\n\t}\n}\n"],"names":[],"mappings":";;AAIO,MAAM,wCAAwC,cAAwC;AAAA,EAC5F,YAAoB,SAAiB;AAC9B;AADa,SAAA,UAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationByVersionQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationByVersionQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationByVersionQuery extends DatabaseQuery<ExecutedMigration | null> {\n\tconstructor(private version: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration | null> {\n\t\tconst builder = createExecutedMigrationQueryBuilder().where({ version: this.version })\n\t\tconst rows = await builder.getResult(queryable.db)\n\t\tconst migration = await this.fetchOneOrNull(rows)\n\t\treturn migration ? createExecutedMigrationDto(migration) : null\n\t}\n}\n"],"names":[],"mappings":";;AAIO,MAAM,wCAAwC,cAAwC;AAAA,EAC5F,YAAoB,SAAiB;AAC9B,UAAA;AADa,SAAA,UAAA;AAAA,EAAA;AAAA,EAIpB,MAAM,MAAM,WAAiE;AACtE,UAAA,UAAU,sCAAsC,MAAM,EAAE,SAAS,KAAK,SAAS;AACrF,UAAM,OAAO,MAAM,QAAQ,UAAU,UAAU,EAAE;AACjD,UAAM,YAAY,MAAM,KAAK,eAAe,IAAI;AACzC,WAAA,YAAY,2BAA2B,SAAS,IAAI;AAAA,EAAA;AAE7D;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationsQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationsQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Operator } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationsQuery extends DatabaseQuery<ExecutedMigration[]> {\n\tconstructor(private afterVersion?: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration[]> {\n\t\tconst builder = createExecutedMigrationQueryBuilder()\n\t\tconst afterVersion = this.afterVersion\n\t\tconst builderWithWhere = afterVersion\n\t\t\t? builder.where(expr => expr.compare('version', Operator.gt, afterVersion))\n\t\t\t: builder\n\n\t\tconst result = await builderWithWhere.getResult(queryable.db)\n\t\treturn result.map(createExecutedMigrationDto)\n\t}\n}\n"],"names":["DatabaseQuery","createExecutedMigrationQueryBuilder","Operator","createExecutedMigrationDto"],"mappings":";;;;AAIO,MAAM,gCAAgCA,SAAAA,cAAmC;AAAA,EAC/E,YAAoB,cAAuB;AACpC;AADa,SAAA,eAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationsQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationsQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Operator } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationsQuery extends DatabaseQuery<ExecutedMigration[]> {\n\tconstructor(private afterVersion?: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration[]> {\n\t\tconst builder = createExecutedMigrationQueryBuilder()\n\t\tconst afterVersion = this.afterVersion\n\t\tconst builderWithWhere = afterVersion\n\t\t\t? builder.where(expr => expr.compare('version', Operator.gt, afterVersion))\n\t\t\t: builder\n\n\t\tconst result = await builderWithWhere.getResult(queryable.db)\n\t\treturn result.map(createExecutedMigrationDto)\n\t}\n}\n"],"names":["DatabaseQuery","createExecutedMigrationQueryBuilder","Operator","createExecutedMigrationDto"],"mappings":";;;;AAIO,MAAM,gCAAgCA,SAAAA,cAAmC;AAAA,EAC/E,YAAoB,cAAuB;AACpC,UAAA;AADa,SAAA,eAAA;AAAA,EAAA;AAAA,EAIpB,MAAM,MAAM,WAA4D;AACvE,UAAM,UAAUC,8BAAAA,oCAAoC;AACpD,UAAM,eAAe,KAAK;AAC1B,UAAM,mBAAmB,eACtB,QAAQ,MAAM,CAAQ,SAAA,KAAK,QAAQ,WAAWC,SAAS,SAAA,IAAI,YAAY,CAAC,IACxE;AAEH,UAAM,SAAS,MAAM,iBAAiB,UAAU,UAAU,EAAE;AACrD,WAAA,OAAO,IAAIC,wDAA0B;AAAA,EAAA;AAE9C;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationsQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationsQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Operator } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationsQuery extends DatabaseQuery<ExecutedMigration[]> {\n\tconstructor(private afterVersion?: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration[]> {\n\t\tconst builder = createExecutedMigrationQueryBuilder()\n\t\tconst afterVersion = this.afterVersion\n\t\tconst builderWithWhere = afterVersion\n\t\t\t? builder.where(expr => expr.compare('version', Operator.gt, afterVersion))\n\t\t\t: builder\n\n\t\tconst result = await builderWithWhere.getResult(queryable.db)\n\t\treturn result.map(createExecutedMigrationDto)\n\t}\n}\n"],"names":[],"mappings":";;AAIO,MAAM,gCAAgC,cAAmC;AAAA,EAC/E,YAAoB,cAAuB;AACpC;AADa,SAAA,eAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationsQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/migrations/ExecutedMigrationsQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Operator } from '@contember/database'\nimport { ExecutedMigration } from '../../dtos'\nimport { createExecutedMigrationDto, createExecutedMigrationQueryBuilder } from './ExecutedMigrationsQueryHelper'\n\nexport class ExecutedMigrationsQuery extends DatabaseQuery<ExecutedMigration[]> {\n\tconstructor(private afterVersion?: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<ExecutedMigration[]> {\n\t\tconst builder = createExecutedMigrationQueryBuilder()\n\t\tconst afterVersion = this.afterVersion\n\t\tconst builderWithWhere = afterVersion\n\t\t\t? builder.where(expr => expr.compare('version', Operator.gt, afterVersion))\n\t\t\t: builder\n\n\t\tconst result = await builderWithWhere.getResult(queryable.db)\n\t\treturn result.map(createExecutedMigrationDto)\n\t}\n}\n"],"names":[],"mappings":";;AAIO,MAAM,gCAAgC,cAAmC;AAAA,EAC/E,YAAoB,cAAuB;AACpC,UAAA;AADa,SAAA,eAAA;AAAA,EAAA;AAAA,EAIpB,MAAM,MAAM,WAA4D;AACvE,UAAM,UAAU,oCAAoC;AACpD,UAAM,eAAe,KAAK;AAC1B,UAAM,mBAAmB,eACtB,QAAQ,MAAM,CAAQ,SAAA,KAAK,QAAQ,WAAW,SAAS,IAAI,YAAY,CAAC,IACxE;AAEH,UAAM,SAAS,MAAM,iBAAiB,UAAU,UAAU,EAAE;AACrD,WAAA,OAAO,IAAI,0BAA0B;AAAA,EAAA;AAE9C;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const Database = require("@contember/database");
|
|
4
|
+
class SchemaQuery extends Database.DatabaseQuery {
|
|
5
|
+
constructor(currentHash) {
|
|
6
|
+
super();
|
|
7
|
+
this.currentHash = currentHash;
|
|
8
|
+
}
|
|
9
|
+
async fetch(queryable) {
|
|
10
|
+
const query = Database.SelectBuilder.create().from("schema").select(new Database.Literal("*")).where({
|
|
11
|
+
id: "single"
|
|
12
|
+
}).match((it) => {
|
|
13
|
+
if (!this.currentHash) {
|
|
14
|
+
return it;
|
|
15
|
+
}
|
|
16
|
+
return it.where((it2) => it2.raw("checksum != ?", this.currentHash));
|
|
17
|
+
});
|
|
18
|
+
const row = this.fetchOneOrNull(await query.getResult(queryable.db));
|
|
19
|
+
if (!row) {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
schema: row.schema,
|
|
24
|
+
meta: {
|
|
25
|
+
checksum: row.checksum,
|
|
26
|
+
version: row.version,
|
|
27
|
+
updatedAt: row.updated_at,
|
|
28
|
+
id: row.migration_id
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.SchemaQuery = SchemaQuery;
|
|
34
|
+
//# sourceMappingURL=SchemaQuery.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/schema/SchemaQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, SelectBuilder } from '@contember/database'\nimport { Schema } from '@contember/schema'\nimport { SchemaWithMeta } from '../../migrations'\n\nexport class SchemaQuery extends DatabaseQuery<SchemaWithMeta | null> {\n\n\tconstructor(\n\t\tprivate readonly currentHash?: string,\n\t) {\n\t\tsuper()\n\t}\n\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<SchemaWithMeta | null> {\n\t\tconst query = SelectBuilder.create<{\n\t\t\tschema: Schema\n\t\t\tchecksum: string\n\t\t\tversion: string\n\t\t\tupdated_at: Date\n\t\t\tmigration_id: number\n\t\t}>()\n\t\t\t.from('schema')\n\t\t\t.select(new Literal('*'))\n\t\t\t.where({\n\t\t\t\tid: 'single',\n\t\t\t})\n\t\t\t.match(it => {\n\t\t\t\tif (!this.currentHash) {\n\t\t\t\t\treturn it\n\t\t\t\t}\n\t\t\t\treturn it.where(it => it.raw('checksum != ?', this.currentHash))\n\t\t\t})\n\n\t\tconst row = this.fetchOneOrNull(await query.getResult(queryable.db))\n\t\tif (!row) {\n\t\t\treturn null\n\t\t}\n\t\treturn {\n\t\t\tschema: row.schema,\n\t\t\tmeta: {\n\t\t\t\tchecksum: row.checksum,\n\t\t\t\tversion: row.version,\n\t\t\t\tupdatedAt: row.updated_at,\n\t\t\t\tid: row.migration_id,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"names":["DatabaseQuery","SelectBuilder","Literal","it"],"mappings":";;;AAIO,MAAM,oBAAoBA,SAAAA,cAAqC;AAAA,EAErE,YACkB,aAChB;AACK,UAAA;AAFW,SAAA,cAAA;AAAA,EAAA;AAAA,EAMlB,MAAM,MAAM,WAA8D;AACzE,UAAM,QAAQC,SAAAA,cAAc,OAMzB,EACD,KAAK,QAAQ,EACb,OAAO,IAAIC,SAAA,QAAQ,GAAG,CAAC,EACvB,MAAM;AAAA,MACN,IAAI;AAAA,IAAA,CACJ,EACA,MAAM,CAAM,OAAA;AACR,UAAA,CAAC,KAAK,aAAa;AACf,eAAA;AAAA,MAAA;AAED,aAAA,GAAG,MAAM,CAAAC,QAAMA,IAAG,IAAI,iBAAiB,KAAK,WAAW,CAAC;AAAA,IAAA,CAC/D;AAEI,UAAA,MAAO,KAAK,eAAe,MAAM,MAAM,UAAU,UAAU,EAAE,CAAC;AACpE,QAAI,CAAC,KAAK;AACF,aAAA;AAAA,IAAA;AAED,WAAA;AAAA,MACN,QAAQ,IAAI;AAAA,MACZ,MAAM;AAAA,QACL,UAAU,IAAI;AAAA,QACd,SAAS,IAAI;AAAA,QACb,WAAW,IAAI;AAAA,QACf,IAAI,IAAI;AAAA,MAAA;AAAA,IAEV;AAAA,EAAA;AAEF;;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { DatabaseQuery, SelectBuilder, Literal } from "@contember/database";
|
|
2
|
+
class SchemaQuery extends DatabaseQuery {
|
|
3
|
+
constructor(currentHash) {
|
|
4
|
+
super();
|
|
5
|
+
this.currentHash = currentHash;
|
|
6
|
+
}
|
|
7
|
+
async fetch(queryable) {
|
|
8
|
+
const query = SelectBuilder.create().from("schema").select(new Literal("*")).where({
|
|
9
|
+
id: "single"
|
|
10
|
+
}).match((it) => {
|
|
11
|
+
if (!this.currentHash) {
|
|
12
|
+
return it;
|
|
13
|
+
}
|
|
14
|
+
return it.where((it2) => it2.raw("checksum != ?", this.currentHash));
|
|
15
|
+
});
|
|
16
|
+
const row = this.fetchOneOrNull(await query.getResult(queryable.db));
|
|
17
|
+
if (!row) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
schema: row.schema,
|
|
22
|
+
meta: {
|
|
23
|
+
checksum: row.checksum,
|
|
24
|
+
version: row.version,
|
|
25
|
+
updatedAt: row.updated_at,
|
|
26
|
+
id: row.migration_id
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export {
|
|
32
|
+
SchemaQuery
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=SchemaQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/schema/SchemaQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable, Literal, SelectBuilder } from '@contember/database'\nimport { Schema } from '@contember/schema'\nimport { SchemaWithMeta } from '../../migrations'\n\nexport class SchemaQuery extends DatabaseQuery<SchemaWithMeta | null> {\n\n\tconstructor(\n\t\tprivate readonly currentHash?: string,\n\t) {\n\t\tsuper()\n\t}\n\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<SchemaWithMeta | null> {\n\t\tconst query = SelectBuilder.create<{\n\t\t\tschema: Schema\n\t\t\tchecksum: string\n\t\t\tversion: string\n\t\t\tupdated_at: Date\n\t\t\tmigration_id: number\n\t\t}>()\n\t\t\t.from('schema')\n\t\t\t.select(new Literal('*'))\n\t\t\t.where({\n\t\t\t\tid: 'single',\n\t\t\t})\n\t\t\t.match(it => {\n\t\t\t\tif (!this.currentHash) {\n\t\t\t\t\treturn it\n\t\t\t\t}\n\t\t\t\treturn it.where(it => it.raw('checksum != ?', this.currentHash))\n\t\t\t})\n\n\t\tconst row = this.fetchOneOrNull(await query.getResult(queryable.db))\n\t\tif (!row) {\n\t\t\treturn null\n\t\t}\n\t\treturn {\n\t\t\tschema: row.schema,\n\t\t\tmeta: {\n\t\t\t\tchecksum: row.checksum,\n\t\t\t\tversion: row.version,\n\t\t\t\tupdatedAt: row.updated_at,\n\t\t\t\tid: row.migration_id,\n\t\t\t},\n\t\t}\n\t}\n}\n"],"names":["it"],"mappings":";AAIO,MAAM,oBAAoB,cAAqC;AAAA,EAErE,YACkB,aAChB;AACK,UAAA;AAFW,SAAA,cAAA;AAAA,EAAA;AAAA,EAMlB,MAAM,MAAM,WAA8D;AACzE,UAAM,QAAQ,cAAc,OAMzB,EACD,KAAK,QAAQ,EACb,OAAO,IAAI,QAAQ,GAAG,CAAC,EACvB,MAAM;AAAA,MACN,IAAI;AAAA,IAAA,CACJ,EACA,MAAM,CAAM,OAAA;AACR,UAAA,CAAC,KAAK,aAAa;AACf,eAAA;AAAA,MAAA;AAED,aAAA,GAAG,MAAM,CAAAA,QAAMA,IAAG,IAAI,iBAAiB,KAAK,WAAW,CAAC;AAAA,IAAA,CAC/D;AAEI,UAAA,MAAO,KAAK,eAAe,MAAM,MAAM,UAAU,UAAU,EAAE,CAAC;AACpE,QAAI,CAAC,KAAK;AACF,aAAA;AAAA,IAAA;AAED,WAAA;AAAA,MACN,QAAQ,IAAI;AAAA,MACZ,MAAM;AAAA,QACL,UAAU,IAAI;AAAA,QACd,SAAS,IAAI;AAAA,QACb,WAAW,IAAI;AAAA,QACf,IAAI,IAAI;AAAA,MAAA;AAAA,IAEV;AAAA,EAAA;AAEF;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageBySlugQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StageBySlugQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StageBySlugQuery extends DatabaseQuery<StageBySlugQuery.Result> {\n\tconstructor(private readonly slug: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<StageBySlugQuery.Result> {\n\t\tlet selectBuilder = prepareStageQueryBuilder().where({ slug: this.slug })\n\n\t\tconst rows = await selectBuilder.getResult(queryable.db)\n\n\t\treturn this.fetchOneOrNull(rows)\n\t}\n}\n\nnamespace StageBySlugQuery {\n\texport type Result = null | Stage\n}\n\nexport { StageBySlugQuery }\n"],"names":["DatabaseQuery","prepareStageQueryBuilder"],"mappings":";;;;AAIA,MAAM,yBAAyBA,SAAAA,cAAuC;AAAA,EACrE,YAA6B,MAAc;AACpC;AADsB,SAAA,OAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"StageBySlugQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StageBySlugQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StageBySlugQuery extends DatabaseQuery<StageBySlugQuery.Result> {\n\tconstructor(private readonly slug: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<StageBySlugQuery.Result> {\n\t\tlet selectBuilder = prepareStageQueryBuilder().where({ slug: this.slug })\n\n\t\tconst rows = await selectBuilder.getResult(queryable.db)\n\n\t\treturn this.fetchOneOrNull(rows)\n\t}\n}\n\nnamespace StageBySlugQuery {\n\texport type Result = null | Stage\n}\n\nexport { StageBySlugQuery }\n"],"names":["DatabaseQuery","prepareStageQueryBuilder"],"mappings":";;;;AAIA,MAAM,yBAAyBA,SAAAA,cAAuC;AAAA,EACrE,YAA6B,MAAc;AACpC,UAAA;AADsB,SAAA,OAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAAgE;AACvE,QAAA,gBAAgBC,kBAAAA,2BAA2B,MAAM,EAAE,MAAM,KAAK,MAAM;AAExE,UAAM,OAAO,MAAM,cAAc,UAAU,UAAU,EAAE;AAEhD,WAAA,KAAK,eAAe,IAAI;AAAA,EAAA;AAEjC;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageBySlugQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StageBySlugQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StageBySlugQuery extends DatabaseQuery<StageBySlugQuery.Result> {\n\tconstructor(private readonly slug: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<StageBySlugQuery.Result> {\n\t\tlet selectBuilder = prepareStageQueryBuilder().where({ slug: this.slug })\n\n\t\tconst rows = await selectBuilder.getResult(queryable.db)\n\n\t\treturn this.fetchOneOrNull(rows)\n\t}\n}\n\nnamespace StageBySlugQuery {\n\texport type Result = null | Stage\n}\n\nexport { StageBySlugQuery }\n"],"names":[],"mappings":";;AAIA,MAAM,yBAAyB,cAAuC;AAAA,EACrE,YAA6B,MAAc;AACpC;AADsB,SAAA,OAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"StageBySlugQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StageBySlugQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StageBySlugQuery extends DatabaseQuery<StageBySlugQuery.Result> {\n\tconstructor(private readonly slug: string) {\n\t\tsuper()\n\t}\n\n\tasync fetch(queryable: DatabaseQueryable): Promise<StageBySlugQuery.Result> {\n\t\tlet selectBuilder = prepareStageQueryBuilder().where({ slug: this.slug })\n\n\t\tconst rows = await selectBuilder.getResult(queryable.db)\n\n\t\treturn this.fetchOneOrNull(rows)\n\t}\n}\n\nnamespace StageBySlugQuery {\n\texport type Result = null | Stage\n}\n\nexport { StageBySlugQuery }\n"],"names":[],"mappings":";;AAIA,MAAM,yBAAyB,cAAuC;AAAA,EACrE,YAA6B,MAAc;AACpC,UAAA;AADsB,SAAA,OAAA;AAAA,EAAA;AAAA,EAI7B,MAAM,MAAM,WAAgE;AACvE,QAAA,gBAAgB,2BAA2B,MAAM,EAAE,MAAM,KAAK,MAAM;AAExE,UAAM,OAAO,MAAM,cAAc,UAAU,UAAU,EAAE;AAEhD,WAAA,KAAK,eAAe,IAAI;AAAA,EAAA;AAEjC;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagesQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StagesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StagesQuery extends DatabaseQuery<Stage[]> {\n\tasync fetch(queryable: DatabaseQueryable): Promise<Stage[]> {\n\t\tconst select = prepareStageQueryBuilder()\n\n\t\treturn await select.getResult(queryable.db)\n\t}\n}\n\nexport { StagesQuery }\n"],"names":["DatabaseQuery","prepareStageQueryBuilder"],"mappings":";;;;AAIA,MAAM,oBAAoBA,SAAAA,cAAuB;AAAA,EAChD,MAAM,MAAM,WAAgD;AAC3D,UAAM,SAASC,kBAAAA;
|
|
1
|
+
{"version":3,"file":"StagesQuery.cjs","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StagesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StagesQuery extends DatabaseQuery<Stage[]> {\n\tasync fetch(queryable: DatabaseQueryable): Promise<Stage[]> {\n\t\tconst select = prepareStageQueryBuilder()\n\n\t\treturn await select.getResult(queryable.db)\n\t}\n}\n\nexport { StagesQuery }\n"],"names":["DatabaseQuery","prepareStageQueryBuilder"],"mappings":";;;;AAIA,MAAM,oBAAoBA,SAAAA,cAAuB;AAAA,EAChD,MAAM,MAAM,WAAgD;AAC3D,UAAM,SAASC,kBAAAA,yBAAyB;AAExC,WAAO,MAAM,OAAO,UAAU,UAAU,EAAE;AAAA,EAAA;AAE5C;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagesQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StagesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StagesQuery extends DatabaseQuery<Stage[]> {\n\tasync fetch(queryable: DatabaseQueryable): Promise<Stage[]> {\n\t\tconst select = prepareStageQueryBuilder()\n\n\t\treturn await select.getResult(queryable.db)\n\t}\n}\n\nexport { StagesQuery }\n"],"names":[],"mappings":";;AAIA,MAAM,oBAAoB,cAAuB;AAAA,EAChD,MAAM,MAAM,WAAgD;AAC3D,UAAM,SAAS;
|
|
1
|
+
{"version":3,"file":"StagesQuery.js","sources":["../../../../../../../packages/engine-system-api/src/model/queries/stages/StagesQuery.ts"],"sourcesContent":["import { DatabaseQuery, DatabaseQueryable } from '@contember/database'\nimport { prepareStageQueryBuilder } from './StageQueryFactory'\nimport { Stage } from '../../dtos'\n\nclass StagesQuery extends DatabaseQuery<Stage[]> {\n\tasync fetch(queryable: DatabaseQueryable): Promise<Stage[]> {\n\t\tconst select = prepareStageQueryBuilder()\n\n\t\treturn await select.getResult(queryable.db)\n\t}\n}\n\nexport { StagesQuery }\n"],"names":[],"mappings":";;AAIA,MAAM,oBAAoB,cAAuB;AAAA,EAChD,MAAM,MAAM,WAAgD;AAC3D,UAAM,SAAS,yBAAyB;AAExC,WAAO,MAAM,OAAO,UAAU,UAAU,EAAE;AAAA,EAAA;AAE5C;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageCreator.cjs","sources":["../../../../../../packages/engine-system-api/src/model/stages/StageCreator.ts"],"sourcesContent":["import { CreateStageCommand } from '../commands'\nimport { StageBySlugQuery } from '../queries'\nimport { StageConfig } from '../../types'\nimport { DatabaseContext } from '../database'\n\nclass StageCreator {\n\tconstructor() {}\n\n\tpublic async createStage(\n\t\tdb: DatabaseContext,\n\t\tstage: StageConfig,\n\t): Promise<boolean> {\n\t\tconst stageRow = await db.queryHandler.fetch(new StageBySlugQuery(stage.slug))\n\t\tif (stageRow) {\n\t\t\treturn false\n\t\t}\n\t\tawait db.commandBus.execute(new CreateStageCommand(stage))\n\t\treturn true\n\t}\n}\n\nexport { StageCreator }\n"],"names":["StageBySlugQuery","CreateStageCommand"],"mappings":";;;;;;;;AAKA,MAAM,aAAa;AAAA,EAClB,cAAc;AAAA,
|
|
1
|
+
{"version":3,"file":"StageCreator.cjs","sources":["../../../../../../packages/engine-system-api/src/model/stages/StageCreator.ts"],"sourcesContent":["import { CreateStageCommand } from '../commands'\nimport { StageBySlugQuery } from '../queries'\nimport { StageConfig } from '../../types'\nimport { DatabaseContext } from '../database'\n\nclass StageCreator {\n\tconstructor() {}\n\n\tpublic async createStage(\n\t\tdb: DatabaseContext,\n\t\tstage: StageConfig,\n\t): Promise<boolean> {\n\t\tconst stageRow = await db.queryHandler.fetch(new StageBySlugQuery(stage.slug))\n\t\tif (stageRow) {\n\t\t\treturn false\n\t\t}\n\t\tawait db.commandBus.execute(new CreateStageCommand(stage))\n\t\treturn true\n\t}\n}\n\nexport { StageCreator }\n"],"names":["StageBySlugQuery","CreateStageCommand"],"mappings":";;;;;;;;AAKA,MAAM,aAAa;AAAA,EAClB,cAAc;AAAA,EAAA;AAAA,EAEd,MAAa,YACZ,IACA,OACmB;AACb,UAAA,WAAW,MAAM,GAAG,aAAa,MAAM,IAAIA,iBAAA,iBAAiB,MAAM,IAAI,CAAC;AAC7E,QAAI,UAAU;AACN,aAAA;AAAA,IAAA;AAER,UAAM,GAAG,WAAW,QAAQ,IAAIC,mBAAA,mBAAmB,KAAK,CAAC;AAClD,WAAA;AAAA,EAAA;AAET;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageCreator.js","sources":["../../../../../../packages/engine-system-api/src/model/stages/StageCreator.ts"],"sourcesContent":["import { CreateStageCommand } from '../commands'\nimport { StageBySlugQuery } from '../queries'\nimport { StageConfig } from '../../types'\nimport { DatabaseContext } from '../database'\n\nclass StageCreator {\n\tconstructor() {}\n\n\tpublic async createStage(\n\t\tdb: DatabaseContext,\n\t\tstage: StageConfig,\n\t): Promise<boolean> {\n\t\tconst stageRow = await db.queryHandler.fetch(new StageBySlugQuery(stage.slug))\n\t\tif (stageRow) {\n\t\t\treturn false\n\t\t}\n\t\tawait db.commandBus.execute(new CreateStageCommand(stage))\n\t\treturn true\n\t}\n}\n\nexport { StageCreator }\n"],"names":[],"mappings":";;;;;;AAKA,MAAM,aAAa;AAAA,EAClB,cAAc;AAAA,
|
|
1
|
+
{"version":3,"file":"StageCreator.js","sources":["../../../../../../packages/engine-system-api/src/model/stages/StageCreator.ts"],"sourcesContent":["import { CreateStageCommand } from '../commands'\nimport { StageBySlugQuery } from '../queries'\nimport { StageConfig } from '../../types'\nimport { DatabaseContext } from '../database'\n\nclass StageCreator {\n\tconstructor() {}\n\n\tpublic async createStage(\n\t\tdb: DatabaseContext,\n\t\tstage: StageConfig,\n\t): Promise<boolean> {\n\t\tconst stageRow = await db.queryHandler.fetch(new StageBySlugQuery(stage.slug))\n\t\tif (stageRow) {\n\t\t\treturn false\n\t\t}\n\t\tawait db.commandBus.execute(new CreateStageCommand(stage))\n\t\treturn true\n\t}\n}\n\nexport { StageCreator }\n"],"names":[],"mappings":";;;;;;AAKA,MAAM,aAAa;AAAA,EAClB,cAAc;AAAA,EAAA;AAAA,EAEd,MAAa,YACZ,IACA,OACmB;AACb,UAAA,WAAW,MAAM,GAAG,aAAa,MAAM,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAC7E,QAAI,UAAU;AACN,aAAA;AAAA,IAAA;AAER,UAAM,GAAG,WAAW,QAAQ,IAAI,mBAAmB,KAAK,CAAC;AAClD,WAAA;AAAA,EAAA;AAET;"}
|
|
@@ -7,7 +7,7 @@ const assertNever = require("../utils/assertNever.cjs");
|
|
|
7
7
|
const graphqlUtils = require("@contember/graphql-utils");
|
|
8
8
|
const graphql = require("graphql");
|
|
9
9
|
class ResolverFactory {
|
|
10
|
-
constructor(stagesQueryResolver, executedMigrationsQueryResolver, migrateMutationResolver, truncateMutationResolver, migrationAlterMutationResolver, eventsQueryResolver, eventOldValuesResolver) {
|
|
10
|
+
constructor(stagesQueryResolver, executedMigrationsQueryResolver, migrateMutationResolver, truncateMutationResolver, migrationAlterMutationResolver, eventsQueryResolver, eventOldValuesResolver, schemaQueryResolver) {
|
|
11
11
|
this.stagesQueryResolver = stagesQueryResolver;
|
|
12
12
|
this.executedMigrationsQueryResolver = executedMigrationsQueryResolver;
|
|
13
13
|
this.migrateMutationResolver = migrateMutationResolver;
|
|
@@ -15,12 +15,14 @@ class ResolverFactory {
|
|
|
15
15
|
this.migrationAlterMutationResolver = migrationAlterMutationResolver;
|
|
16
16
|
this.eventsQueryResolver = eventsQueryResolver;
|
|
17
17
|
this.eventOldValuesResolver = eventOldValuesResolver;
|
|
18
|
+
this.schemaQueryResolver = schemaQueryResolver;
|
|
18
19
|
}
|
|
19
20
|
create(debugMode) {
|
|
20
21
|
const resolvers = {
|
|
21
22
|
DateTime: graphqlUtils.DateTimeType,
|
|
22
23
|
Json: graphqlUtils.JSONType,
|
|
23
24
|
PrimaryKey: PrimaryKeyType,
|
|
25
|
+
Schema: SchemaType,
|
|
24
26
|
Event: {
|
|
25
27
|
__resolveType: (obj) => {
|
|
26
28
|
switch (obj.type) {
|
|
@@ -41,7 +43,8 @@ class ResolverFactory {
|
|
|
41
43
|
Query: {
|
|
42
44
|
stages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),
|
|
43
45
|
executedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),
|
|
44
|
-
events: this.eventsQueryResolver.events.bind(this.eventsQueryResolver)
|
|
46
|
+
events: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),
|
|
47
|
+
schema: this.schemaQueryResolver.schema.bind(this.schemaQueryResolver)
|
|
45
48
|
},
|
|
46
49
|
Mutation: {
|
|
47
50
|
migrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver)
|
|
@@ -68,6 +71,7 @@ const parseValue = (value) => {
|
|
|
68
71
|
}
|
|
69
72
|
throw new graphql.GraphQLError("PrimaryKey cannot represent value: " + JSON.stringify(value));
|
|
70
73
|
};
|
|
74
|
+
const SchemaType = graphqlUtils.createJsonLikeType("Schema", "Content schema custom scalar type");
|
|
71
75
|
const PrimaryKeyType = new graphql.GraphQLScalarType({
|
|
72
76
|
name: "PrimaryKey",
|
|
73
77
|
description: "PrimaryKey custom scalar type. Can be Int or String",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResolverFactory.cjs","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query'\nimport { Event, EventType, Resolvers } from '../schema'\nimport { assertNever } from '../utils'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation'\nimport { DateTimeType, JSONType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\n\nexport class ResolverFactory {\n\tpublic constructor(\n\t\tprivate readonly stagesQueryResolver: StagesQueryResolver,\n\t\tprivate readonly executedMigrationsQueryResolver: ExecutedMigrationsQueryResolver,\n\t\tprivate readonly migrateMutationResolver: MigrateMutationResolver,\n\t\tprivate readonly truncateMutationResolver: TruncateMutationResolver,\n\t\tprivate readonly migrationAlterMutationResolver: MigrationAlterMutationResolver,\n\t\tprivate readonly eventsQueryResolver: EventsQueryResolver,\n\t\tprivate readonly eventOldValuesResolver: EventOldValuesResolver,\n\t) {}\n\n\tcreate(debugMode: boolean): Resolvers {\n\t\tconst resolvers: Resolvers & Required<Pick<Resolvers, 'Mutation'>> = {\n\t\t\tDateTime: DateTimeType,\n\t\t\tJson: JSONType,\n\t\t\tPrimaryKey: PrimaryKeyType,\n\t\t\tEvent: {\n\t\t\t\t__resolveType: (obj: Event) => {\n\t\t\t\t\tswitch (obj.type) {\n\t\t\t\t\t\tcase EventType.Create:\n\t\t\t\t\t\t\treturn 'CreateEvent'\n\t\t\t\t\t\tcase EventType.Update:\n\t\t\t\t\t\t\treturn 'UpdateEvent'\n\t\t\t\t\t\tcase EventType.Delete:\n\t\t\t\t\t\t\treturn 'DeleteEvent'\n\t\t\t\t\t\tcase null:\n\t\t\t\t\t\tcase undefined:\n\t\t\t\t\t\t\treturn null\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn assertNever(obj.type)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tQuery: {\n\t\t\t\tstages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),\n\t\t\t\texecutedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),\n\t\t\t\tevents: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),\n\t\t\t},\n\t\t\tMutation: {\n\t\t\t\tmigrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver),\n\t\t\t},\n\t\t\tDeleteEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t\tUpdateEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t}\n\t\tif (debugMode) {\n\t\t\tresolvers.Mutation.truncate = this.truncateMutationResolver.truncate.bind(this.truncateMutationResolver)\n\t\t\tresolvers.Mutation.migrationDelete = this.migrationAlterMutationResolver.migrationDelete.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.migrationModify = this.migrationAlterMutationResolver.migrationModify.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.forceMigrate = this.migrateMutationResolver.migrateForce.bind(this.migrateMutationResolver)\n\t\t}\n\t\treturn resolvers\n\t}\n}\n\nconst parseValue = (value: any) => {\n\tif ((typeof value === 'string' && value !== '') || typeof value === 'number' && isFinite(value) && Math.floor(value) === value) {\n\t\treturn value\n\t}\n\tthrow new GraphQLError('PrimaryKey cannot represent value: ' + JSON.stringify(value))\n}\nexport const PrimaryKeyType = new GraphQLScalarType({\n\tname: 'PrimaryKey',\n\tdescription: 'PrimaryKey custom scalar type. Can be Int or String',\n\tserialize: parseValue,\n\tparseValue: parseValue,\n\tparseLiteral(ast) {\n\t\tif (ast.kind === Kind.STRING) {\n\t\t\treturn ast.value\n\t\t}\n\t\tif (ast.kind === Kind.INT) {\n\t\t\treturn Number.parseInt(ast.value, 10)\n\t\t}\n\t\treturn null\n\t},\n})\n"],"names":["DateTimeType","JSONType","EventType","assertNever","GraphQLError","GraphQLScalarType","Kind"],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"ResolverFactory.cjs","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query'\nimport { Event, EventType, Resolvers } from '../schema'\nimport { assertNever } from '../utils'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation'\nimport { DateTimeType, JSONType, createJsonLikeType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\nimport { SchemaQueryResolver } from './query/SchemaQueryResolver'\n\nexport class ResolverFactory {\n\tpublic constructor(\n\t\tprivate readonly stagesQueryResolver: StagesQueryResolver,\n\t\tprivate readonly executedMigrationsQueryResolver: ExecutedMigrationsQueryResolver,\n\t\tprivate readonly migrateMutationResolver: MigrateMutationResolver,\n\t\tprivate readonly truncateMutationResolver: TruncateMutationResolver,\n\t\tprivate readonly migrationAlterMutationResolver: MigrationAlterMutationResolver,\n\t\tprivate readonly eventsQueryResolver: EventsQueryResolver,\n\t\tprivate readonly eventOldValuesResolver: EventOldValuesResolver,\n\t\tprivate readonly schemaQueryResolver: SchemaQueryResolver,\n\t) {}\n\n\tcreate(debugMode: boolean): Resolvers {\n\t\tconst resolvers: Resolvers & Required<Pick<Resolvers, 'Mutation'>> = {\n\t\t\tDateTime: DateTimeType,\n\t\t\tJson: JSONType,\n\t\t\tPrimaryKey: PrimaryKeyType,\n\t\t\tSchema: SchemaType,\n\t\t\tEvent: {\n\t\t\t\t__resolveType: (obj: Event) => {\n\t\t\t\t\tswitch (obj.type) {\n\t\t\t\t\t\tcase EventType.Create:\n\t\t\t\t\t\t\treturn 'CreateEvent'\n\t\t\t\t\t\tcase EventType.Update:\n\t\t\t\t\t\t\treturn 'UpdateEvent'\n\t\t\t\t\t\tcase EventType.Delete:\n\t\t\t\t\t\t\treturn 'DeleteEvent'\n\t\t\t\t\t\tcase null:\n\t\t\t\t\t\tcase undefined:\n\t\t\t\t\t\t\treturn null\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn assertNever(obj.type)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tQuery: {\n\t\t\t\tstages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),\n\t\t\t\texecutedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),\n\t\t\t\tevents: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),\n\t\t\t\tschema: this.schemaQueryResolver.schema.bind(this.schemaQueryResolver),\n\t\t\t},\n\t\t\tMutation: {\n\t\t\t\tmigrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver),\n\t\t\t},\n\t\t\tDeleteEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t\tUpdateEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t}\n\t\tif (debugMode) {\n\t\t\tresolvers.Mutation.truncate = this.truncateMutationResolver.truncate.bind(this.truncateMutationResolver)\n\t\t\tresolvers.Mutation.migrationDelete = this.migrationAlterMutationResolver.migrationDelete.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.migrationModify = this.migrationAlterMutationResolver.migrationModify.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.forceMigrate = this.migrateMutationResolver.migrateForce.bind(this.migrateMutationResolver)\n\t\t}\n\t\treturn resolvers\n\t}\n}\n\nconst parseValue = (value: any) => {\n\tif ((typeof value === 'string' && value !== '') || typeof value === 'number' && isFinite(value) && Math.floor(value) === value) {\n\t\treturn value\n\t}\n\tthrow new GraphQLError('PrimaryKey cannot represent value: ' + JSON.stringify(value))\n}\n\nconst SchemaType = createJsonLikeType('Schema', 'Content schema custom scalar type')\n\n\nexport const PrimaryKeyType = new GraphQLScalarType({\n\tname: 'PrimaryKey',\n\tdescription: 'PrimaryKey custom scalar type. Can be Int or String',\n\tserialize: parseValue,\n\tparseValue: parseValue,\n\tparseLiteral(ast) {\n\t\tif (ast.kind === Kind.STRING) {\n\t\t\treturn ast.value\n\t\t}\n\t\tif (ast.kind === Kind.INT) {\n\t\t\treturn Number.parseInt(ast.value, 10)\n\t\t}\n\t\treturn null\n\t},\n})\n"],"names":["DateTimeType","JSONType","EventType","assertNever","GraphQLError","createJsonLikeType","GraphQLScalarType","Kind"],"mappings":";;;;;;;;AASO,MAAM,gBAAgB;AAAA,EACrB,YACW,qBACA,iCACA,yBACA,0BACA,gCACA,qBACA,wBACA,qBAChB;AARgB,SAAA,sBAAA;AACA,SAAA,kCAAA;AACA,SAAA,0BAAA;AACA,SAAA,2BAAA;AACA,SAAA,iCAAA;AACA,SAAA,sBAAA;AACA,SAAA,yBAAA;AACA,SAAA,sBAAA;AAAA,EAAA;AAAA,EAGlB,OAAO,WAA+B;AACrC,UAAM,YAA+D;AAAA,MACpE,UAAUA,aAAA;AAAA,MACV,MAAMC,aAAA;AAAA,MACN,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,OAAO;AAAA,QACN,eAAe,CAAC,QAAe;AAC9B,kBAAQ,IAAI,MAAM;AAAA,YACjB,KAAKC,MAAU,UAAA;AACP,qBAAA;AAAA,YACR,KAAKA,MAAU,UAAA;AACP,qBAAA;AAAA,YACR,KAAKA,MAAU,UAAA;AACP,qBAAA;AAAA,YACR,KAAK;AAAA,YACL,KAAK;AACG,qBAAA;AAAA,YACR;AACQ,qBAAAC,YAAA,YAAY,IAAI,IAAI;AAAA,UAAA;AAAA,QAC7B;AAAA,MAEF;AAAA,MACA,OAAO;AAAA,QACN,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,QACrE,oBAAoB,KAAK,gCAAgC,mBAAmB,KAAK,KAAK,+BAA+B;AAAA,QACrH,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,QACrE,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,MACtE;AAAA,MACA,UAAU;AAAA,QACT,SAAS,KAAK,wBAAwB,QAAQ,KAAK,KAAK,uBAAuB;AAAA,MAChF;AAAA,MACA,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAClF;AAAA,MACA,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAAA;AAAA,IAEnF;AACA,QAAI,WAAW;AACd,gBAAU,SAAS,WAAW,KAAK,yBAAyB,SAAS,KAAK,KAAK,wBAAwB;AACvG,gBAAU,SAAS,kBAAkB,KAAK,+BAA+B,gBAAgB,KAAK,KAAK,8BAA8B;AACjI,gBAAU,SAAS,kBAAkB,KAAK,+BAA+B,gBAAgB,KAAK,KAAK,8BAA8B;AACjI,gBAAU,SAAS,eAAe,KAAK,wBAAwB,aAAa,KAAK,KAAK,uBAAuB;AAAA,IAAA;AAEvG,WAAA;AAAA,EAAA;AAET;AAEA,MAAM,aAAa,CAAC,UAAgB;AACnC,MAAK,OAAO,UAAU,YAAY,UAAU,MAAO,OAAO,UAAU,YAAY,SAAS,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,OAAO;AACxH,WAAA;AAAA,EAAA;AAER,QAAM,IAAIC,QAAa,aAAA,wCAAwC,KAAK,UAAU,KAAK,CAAC;AACrF;AAEA,MAAM,aAAaC,aAAAA,mBAAmB,UAAU,mCAAmC;AAGtE,MAAA,iBAAiB,IAAIC,QAAAA,kBAAkB;AAAA,EACnD,MAAM;AAAA,EACN,aAAa;AAAA,EACb,WAAW;AAAA,EACX;AAAA,EACA,aAAa,KAAK;AACb,QAAA,IAAI,SAASC,QAAA,KAAK,QAAQ;AAC7B,aAAO,IAAI;AAAA,IAAA;AAER,QAAA,IAAI,SAASA,QAAA,KAAK,KAAK;AAC1B,aAAO,OAAO,SAAS,IAAI,OAAO,EAAE;AAAA,IAAA;AAE9B,WAAA;AAAA,EAAA;AAET,CAAC;;;"}
|
|
@@ -2,10 +2,10 @@ import { EventType } from "../schema/types.js";
|
|
|
2
2
|
import "../schema/dev.graphql.js";
|
|
3
3
|
import "../schema/system.graphql.js";
|
|
4
4
|
import { assertNever } from "../utils/assertNever.js";
|
|
5
|
-
import { DateTimeType, JSONType } from "@contember/graphql-utils";
|
|
5
|
+
import { createJsonLikeType, DateTimeType, JSONType } from "@contember/graphql-utils";
|
|
6
6
|
import { GraphQLScalarType, Kind, GraphQLError } from "graphql";
|
|
7
7
|
class ResolverFactory {
|
|
8
|
-
constructor(stagesQueryResolver, executedMigrationsQueryResolver, migrateMutationResolver, truncateMutationResolver, migrationAlterMutationResolver, eventsQueryResolver, eventOldValuesResolver) {
|
|
8
|
+
constructor(stagesQueryResolver, executedMigrationsQueryResolver, migrateMutationResolver, truncateMutationResolver, migrationAlterMutationResolver, eventsQueryResolver, eventOldValuesResolver, schemaQueryResolver) {
|
|
9
9
|
this.stagesQueryResolver = stagesQueryResolver;
|
|
10
10
|
this.executedMigrationsQueryResolver = executedMigrationsQueryResolver;
|
|
11
11
|
this.migrateMutationResolver = migrateMutationResolver;
|
|
@@ -13,12 +13,14 @@ class ResolverFactory {
|
|
|
13
13
|
this.migrationAlterMutationResolver = migrationAlterMutationResolver;
|
|
14
14
|
this.eventsQueryResolver = eventsQueryResolver;
|
|
15
15
|
this.eventOldValuesResolver = eventOldValuesResolver;
|
|
16
|
+
this.schemaQueryResolver = schemaQueryResolver;
|
|
16
17
|
}
|
|
17
18
|
create(debugMode) {
|
|
18
19
|
const resolvers = {
|
|
19
20
|
DateTime: DateTimeType,
|
|
20
21
|
Json: JSONType,
|
|
21
22
|
PrimaryKey: PrimaryKeyType,
|
|
23
|
+
Schema: SchemaType,
|
|
22
24
|
Event: {
|
|
23
25
|
__resolveType: (obj) => {
|
|
24
26
|
switch (obj.type) {
|
|
@@ -39,7 +41,8 @@ class ResolverFactory {
|
|
|
39
41
|
Query: {
|
|
40
42
|
stages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),
|
|
41
43
|
executedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),
|
|
42
|
-
events: this.eventsQueryResolver.events.bind(this.eventsQueryResolver)
|
|
44
|
+
events: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),
|
|
45
|
+
schema: this.schemaQueryResolver.schema.bind(this.schemaQueryResolver)
|
|
43
46
|
},
|
|
44
47
|
Mutation: {
|
|
45
48
|
migrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver)
|
|
@@ -66,6 +69,7 @@ const parseValue = (value) => {
|
|
|
66
69
|
}
|
|
67
70
|
throw new GraphQLError("PrimaryKey cannot represent value: " + JSON.stringify(value));
|
|
68
71
|
};
|
|
72
|
+
const SchemaType = createJsonLikeType("Schema", "Content schema custom scalar type");
|
|
69
73
|
const PrimaryKeyType = new GraphQLScalarType({
|
|
70
74
|
name: "PrimaryKey",
|
|
71
75
|
description: "PrimaryKey custom scalar type. Can be Int or String",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResolverFactory.js","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query'\nimport { Event, EventType, Resolvers } from '../schema'\nimport { assertNever } from '../utils'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation'\nimport { DateTimeType, JSONType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\n\nexport class ResolverFactory {\n\tpublic constructor(\n\t\tprivate readonly stagesQueryResolver: StagesQueryResolver,\n\t\tprivate readonly executedMigrationsQueryResolver: ExecutedMigrationsQueryResolver,\n\t\tprivate readonly migrateMutationResolver: MigrateMutationResolver,\n\t\tprivate readonly truncateMutationResolver: TruncateMutationResolver,\n\t\tprivate readonly migrationAlterMutationResolver: MigrationAlterMutationResolver,\n\t\tprivate readonly eventsQueryResolver: EventsQueryResolver,\n\t\tprivate readonly eventOldValuesResolver: EventOldValuesResolver,\n\t) {}\n\n\tcreate(debugMode: boolean): Resolvers {\n\t\tconst resolvers: Resolvers & Required<Pick<Resolvers, 'Mutation'>> = {\n\t\t\tDateTime: DateTimeType,\n\t\t\tJson: JSONType,\n\t\t\tPrimaryKey: PrimaryKeyType,\n\t\t\tEvent: {\n\t\t\t\t__resolveType: (obj: Event) => {\n\t\t\t\t\tswitch (obj.type) {\n\t\t\t\t\t\tcase EventType.Create:\n\t\t\t\t\t\t\treturn 'CreateEvent'\n\t\t\t\t\t\tcase EventType.Update:\n\t\t\t\t\t\t\treturn 'UpdateEvent'\n\t\t\t\t\t\tcase EventType.Delete:\n\t\t\t\t\t\t\treturn 'DeleteEvent'\n\t\t\t\t\t\tcase null:\n\t\t\t\t\t\tcase undefined:\n\t\t\t\t\t\t\treturn null\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn assertNever(obj.type)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tQuery: {\n\t\t\t\tstages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),\n\t\t\t\texecutedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),\n\t\t\t\tevents: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),\n\t\t\t},\n\t\t\tMutation: {\n\t\t\t\tmigrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver),\n\t\t\t},\n\t\t\tDeleteEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t\tUpdateEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t}\n\t\tif (debugMode) {\n\t\t\tresolvers.Mutation.truncate = this.truncateMutationResolver.truncate.bind(this.truncateMutationResolver)\n\t\t\tresolvers.Mutation.migrationDelete = this.migrationAlterMutationResolver.migrationDelete.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.migrationModify = this.migrationAlterMutationResolver.migrationModify.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.forceMigrate = this.migrateMutationResolver.migrateForce.bind(this.migrateMutationResolver)\n\t\t}\n\t\treturn resolvers\n\t}\n}\n\nconst parseValue = (value: any) => {\n\tif ((typeof value === 'string' && value !== '') || typeof value === 'number' && isFinite(value) && Math.floor(value) === value) {\n\t\treturn value\n\t}\n\tthrow new GraphQLError('PrimaryKey cannot represent value: ' + JSON.stringify(value))\n}\nexport const PrimaryKeyType = new GraphQLScalarType({\n\tname: 'PrimaryKey',\n\tdescription: 'PrimaryKey custom scalar type. Can be Int or String',\n\tserialize: parseValue,\n\tparseValue: parseValue,\n\tparseLiteral(ast) {\n\t\tif (ast.kind === Kind.STRING) {\n\t\t\treturn ast.value\n\t\t}\n\t\tif (ast.kind === Kind.INT) {\n\t\t\treturn Number.parseInt(ast.value, 10)\n\t\t}\n\t\treturn null\n\t},\n})\n"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"ResolverFactory.js","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query'\nimport { Event, EventType, Resolvers } from '../schema'\nimport { assertNever } from '../utils'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation'\nimport { DateTimeType, JSONType, createJsonLikeType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\nimport { SchemaQueryResolver } from './query/SchemaQueryResolver'\n\nexport class ResolverFactory {\n\tpublic constructor(\n\t\tprivate readonly stagesQueryResolver: StagesQueryResolver,\n\t\tprivate readonly executedMigrationsQueryResolver: ExecutedMigrationsQueryResolver,\n\t\tprivate readonly migrateMutationResolver: MigrateMutationResolver,\n\t\tprivate readonly truncateMutationResolver: TruncateMutationResolver,\n\t\tprivate readonly migrationAlterMutationResolver: MigrationAlterMutationResolver,\n\t\tprivate readonly eventsQueryResolver: EventsQueryResolver,\n\t\tprivate readonly eventOldValuesResolver: EventOldValuesResolver,\n\t\tprivate readonly schemaQueryResolver: SchemaQueryResolver,\n\t) {}\n\n\tcreate(debugMode: boolean): Resolvers {\n\t\tconst resolvers: Resolvers & Required<Pick<Resolvers, 'Mutation'>> = {\n\t\t\tDateTime: DateTimeType,\n\t\t\tJson: JSONType,\n\t\t\tPrimaryKey: PrimaryKeyType,\n\t\t\tSchema: SchemaType,\n\t\t\tEvent: {\n\t\t\t\t__resolveType: (obj: Event) => {\n\t\t\t\t\tswitch (obj.type) {\n\t\t\t\t\t\tcase EventType.Create:\n\t\t\t\t\t\t\treturn 'CreateEvent'\n\t\t\t\t\t\tcase EventType.Update:\n\t\t\t\t\t\t\treturn 'UpdateEvent'\n\t\t\t\t\t\tcase EventType.Delete:\n\t\t\t\t\t\t\treturn 'DeleteEvent'\n\t\t\t\t\t\tcase null:\n\t\t\t\t\t\tcase undefined:\n\t\t\t\t\t\t\treturn null\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn assertNever(obj.type)\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t},\n\t\t\tQuery: {\n\t\t\t\tstages: this.stagesQueryResolver.stages.bind(this.stagesQueryResolver),\n\t\t\t\texecutedMigrations: this.executedMigrationsQueryResolver.executedMigrations.bind(this.executedMigrationsQueryResolver),\n\t\t\t\tevents: this.eventsQueryResolver.events.bind(this.eventsQueryResolver),\n\t\t\t\tschema: this.schemaQueryResolver.schema.bind(this.schemaQueryResolver),\n\t\t\t},\n\t\t\tMutation: {\n\t\t\t\tmigrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver),\n\t\t\t},\n\t\t\tDeleteEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t\tUpdateEvent: {\n\t\t\t\toldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver),\n\t\t\t},\n\t\t}\n\t\tif (debugMode) {\n\t\t\tresolvers.Mutation.truncate = this.truncateMutationResolver.truncate.bind(this.truncateMutationResolver)\n\t\t\tresolvers.Mutation.migrationDelete = this.migrationAlterMutationResolver.migrationDelete.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.migrationModify = this.migrationAlterMutationResolver.migrationModify.bind(this.migrationAlterMutationResolver)\n\t\t\tresolvers.Mutation.forceMigrate = this.migrateMutationResolver.migrateForce.bind(this.migrateMutationResolver)\n\t\t}\n\t\treturn resolvers\n\t}\n}\n\nconst parseValue = (value: any) => {\n\tif ((typeof value === 'string' && value !== '') || typeof value === 'number' && isFinite(value) && Math.floor(value) === value) {\n\t\treturn value\n\t}\n\tthrow new GraphQLError('PrimaryKey cannot represent value: ' + JSON.stringify(value))\n}\n\nconst SchemaType = createJsonLikeType('Schema', 'Content schema custom scalar type')\n\n\nexport const PrimaryKeyType = new GraphQLScalarType({\n\tname: 'PrimaryKey',\n\tdescription: 'PrimaryKey custom scalar type. Can be Int or String',\n\tserialize: parseValue,\n\tparseValue: parseValue,\n\tparseLiteral(ast) {\n\t\tif (ast.kind === Kind.STRING) {\n\t\t\treturn ast.value\n\t\t}\n\t\tif (ast.kind === Kind.INT) {\n\t\t\treturn Number.parseInt(ast.value, 10)\n\t\t}\n\t\treturn null\n\t},\n})\n"],"names":[],"mappings":";;;;;;AASO,MAAM,gBAAgB;AAAA,EACrB,YACW,qBACA,iCACA,yBACA,0BACA,gCACA,qBACA,wBACA,qBAChB;AARgB,SAAA,sBAAA;AACA,SAAA,kCAAA;AACA,SAAA,0BAAA;AACA,SAAA,2BAAA;AACA,SAAA,iCAAA;AACA,SAAA,sBAAA;AACA,SAAA,yBAAA;AACA,SAAA,sBAAA;AAAA,EAAA;AAAA,EAGlB,OAAO,WAA+B;AACrC,UAAM,YAA+D;AAAA,MACpE,UAAU;AAAA,MACV,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,OAAO;AAAA,QACN,eAAe,CAAC,QAAe;AAC9B,kBAAQ,IAAI,MAAM;AAAA,YACjB,KAAK,UAAU;AACP,qBAAA;AAAA,YACR,KAAK,UAAU;AACP,qBAAA;AAAA,YACR,KAAK,UAAU;AACP,qBAAA;AAAA,YACR,KAAK;AAAA,YACL,KAAK;AACG,qBAAA;AAAA,YACR;AACQ,qBAAA,YAAY,IAAI,IAAI;AAAA,UAAA;AAAA,QAC7B;AAAA,MAEF;AAAA,MACA,OAAO;AAAA,QACN,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,QACrE,oBAAoB,KAAK,gCAAgC,mBAAmB,KAAK,KAAK,+BAA+B;AAAA,QACrH,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,QACrE,QAAQ,KAAK,oBAAoB,OAAO,KAAK,KAAK,mBAAmB;AAAA,MACtE;AAAA,MACA,UAAU;AAAA,QACT,SAAS,KAAK,wBAAwB,QAAQ,KAAK,KAAK,uBAAuB;AAAA,MAChF;AAAA,MACA,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAClF;AAAA,MACA,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAAA;AAAA,IAEnF;AACA,QAAI,WAAW;AACd,gBAAU,SAAS,WAAW,KAAK,yBAAyB,SAAS,KAAK,KAAK,wBAAwB;AACvG,gBAAU,SAAS,kBAAkB,KAAK,+BAA+B,gBAAgB,KAAK,KAAK,8BAA8B;AACjI,gBAAU,SAAS,kBAAkB,KAAK,+BAA+B,gBAAgB,KAAK,KAAK,8BAA8B;AACjI,gBAAU,SAAS,eAAe,KAAK,wBAAwB,aAAa,KAAK,KAAK,uBAAuB;AAAA,IAAA;AAEvG,WAAA;AAAA,EAAA;AAET;AAEA,MAAM,aAAa,CAAC,UAAgB;AACnC,MAAK,OAAO,UAAU,YAAY,UAAU,MAAO,OAAO,UAAU,YAAY,SAAS,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,OAAO;AACxH,WAAA;AAAA,EAAA;AAER,QAAM,IAAI,aAAa,wCAAwC,KAAK,UAAU,KAAK,CAAC;AACrF;AAEA,MAAM,aAAa,mBAAmB,UAAU,mCAAmC;AAGtE,MAAA,iBAAiB,IAAI,kBAAkB;AAAA,EACnD,MAAM;AAAA,EACN,aAAa;AAAA,EACb,WAAW;AAAA,EACX;AAAA,EACA,aAAa,KAAK;AACb,QAAA,IAAI,SAAS,KAAK,QAAQ;AAC7B,aAAO,IAAI;AAAA,IAAA;AAER,QAAA,IAAI,SAAS,KAAK,KAAK;AAC1B,aAAO,OAAO,SAAS,IAAI,OAAO,EAAE;AAAA,IAAA;AAE9B,WAAA;AAAA,EAAA;AAET,CAAC;"}
|
|
@@ -7,15 +7,15 @@ class SystemResolverContextFactory {
|
|
|
7
7
|
constructor(authorizator) {
|
|
8
8
|
this.authorizator = authorizator;
|
|
9
9
|
}
|
|
10
|
-
async create(
|
|
11
|
-
const stagePermissionsFactory = new StagePermissionsFactory.StagePermissionsFactory(
|
|
10
|
+
async create({ getSchema, identity, project, db }) {
|
|
11
|
+
const stagePermissionsFactory = new StagePermissionsFactory.StagePermissionsFactory(getSchema);
|
|
12
12
|
const loaders = /* @__PURE__ */ new Map();
|
|
13
13
|
return {
|
|
14
14
|
project,
|
|
15
15
|
identity,
|
|
16
|
-
|
|
16
|
+
getSchema,
|
|
17
17
|
authorizator: this.authorizator,
|
|
18
|
-
db
|
|
18
|
+
db,
|
|
19
19
|
requireAccess: async (action, stage, message) => {
|
|
20
20
|
if (!await this.authorizator.isAllowed(identity, new StageScope.StageScope(stage, stagePermissionsFactory), action)) {
|
|
21
21
|
throw new graphqlUtils.ForbiddenError(message || "Forbidden");
|
|
@@ -26,7 +26,7 @@ class SystemResolverContextFactory {
|
|
|
26
26
|
if (loader) {
|
|
27
27
|
return loader;
|
|
28
28
|
}
|
|
29
|
-
const newLoader = loaderFactory(
|
|
29
|
+
const newLoader = loaderFactory(db);
|
|
30
30
|
loaders.set(loaderFactory, newLoader);
|
|
31
31
|
return newLoader;
|
|
32
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemResolverContext.cjs","sources":["../../../../../packages/engine-system-api/src/resolvers/SystemResolverContext.ts"],"sourcesContent":["import { Authorizator } from '@contember/authorization'\nimport {
|
|
1
|
+
{"version":3,"file":"SystemResolverContext.cjs","sources":["../../../../../packages/engine-system-api/src/resolvers/SystemResolverContext.ts"],"sourcesContent":["import { Authorizator } from '@contember/authorization'\nimport { ForbiddenError } from '@contember/graphql-utils'\nimport { DatabaseContext, Identity } from '../model'\nimport { ProjectConfig } from '../types'\nimport { StagePermissionsFactory } from '../model/authorization/StagePermissionsFactory'\nimport { StageScope } from '../model/authorization/StageScope'\nimport { ItemLoader } from '../utils/batchQuery'\nimport { SchemaGetter } from '../model/SchemaGetter'\n\nexport class SystemResolverContextFactory {\n\tconstructor(\n\t\tprivate readonly authorizator: Authorizator<Identity>,\n\t) {}\n\n\tpublic async create({ getSchema, identity, project, db }: Pick<SystemResolverContext, 'getSchema' | 'db' | 'identity' | 'project'>): Promise<SystemResolverContext> {\n\t\tconst stagePermissionsFactory = new StagePermissionsFactory(getSchema)\n\t\tconst loaders = new Map<LoaderFactory<any, any>, ItemLoader<any, any>>()\n\t\treturn {\n\t\t\tproject,\n\t\t\tidentity,\n\t\t\tgetSchema,\n\t\t\tauthorizator: this.authorizator,\n\t\t\tdb,\n\t\t\trequireAccess: async (action, stage, message?) => {\n\t\t\t\tif (!(await this.authorizator.isAllowed(identity, new StageScope(stage, stagePermissionsFactory), action))) {\n\t\t\t\t\tthrow new ForbiddenError(message || 'Forbidden')\n\t\t\t\t}\n\t\t\t},\n\t\t\tgetLoader: loaderFactory => {\n\t\t\t\tconst loader = loaders.get(loaderFactory)\n\t\t\t\tif (loader) {\n\t\t\t\t\treturn loader\n\t\t\t\t}\n\t\t\t\tconst newLoader = loaderFactory(db)\n\t\t\t\tloaders.set(loaderFactory, newLoader)\n\t\t\t\treturn newLoader\n\t\t\t},\n\t\t}\n\t}\n}\n\nexport type LoaderFactory<Args, Item> = (db: DatabaseContext) => ItemLoader<Args, Item>\n\nexport interface SystemResolverContext {\n\treadonly project: ProjectConfig\n\treadonly getSchema: SchemaGetter\n\treadonly identity: Identity\n\treadonly db: DatabaseContext\n\treadonly authorizator: Authorizator<Identity>\n\treadonly requireAccess: (action: Authorizator.Action, stage: string, message?: string) => Promise<void>\n\treadonly getLoader: <Args, Item>(loaderFactory: LoaderFactory<Args, Item>) => ItemLoader<Args, Item>\n}\n"],"names":["StagePermissionsFactory","StageScope","ForbiddenError"],"mappings":";;;;;AASO,MAAM,6BAA6B;AAAA,EACzC,YACkB,cAChB;AADgB,SAAA,eAAA;AAAA,EAAA;AAAA,EAGlB,MAAa,OAAO,EAAE,WAAW,UAAU,SAAS,MAAgH;AAC7J,UAAA,0BAA0B,IAAIA,wBAAA,wBAAwB,SAAS;AAC/D,UAAA,8BAAc,IAAmD;AAChE,WAAA;AAAA,MACN;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAc,KAAK;AAAA,MACnB;AAAA,MACA,eAAe,OAAO,QAAQ,OAAO,YAAa;AACjD,YAAI,CAAE,MAAM,KAAK,aAAa,UAAU,UAAU,IAAIC,WAAAA,WAAW,OAAO,uBAAuB,GAAG,MAAM,GAAI;AACrG,gBAAA,IAAIC,aAAAA,eAAe,WAAW,WAAW;AAAA,QAAA;AAAA,MAEjD;AAAA,MACA,WAAW,CAAiB,kBAAA;AACrB,cAAA,SAAS,QAAQ,IAAI,aAAa;AACxC,YAAI,QAAQ;AACJ,iBAAA;AAAA,QAAA;AAEF,cAAA,YAAY,cAAc,EAAE;AAC1B,gBAAA,IAAI,eAAe,SAAS;AAC7B,eAAA;AAAA,MAAA;AAAA,IAET;AAAA,EAAA;AAEF;;"}
|