@contember/engine-system-api 2.1.0-beta.1 → 2.2.0-alpha.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/CLAUDE.md +16 -2
- package/dist/development/src/SystemContainer.cjs.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +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.map +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.map +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-153001-schema-init.cjs.map +1 -1
- package/dist/development/src/migrations/2024-06-28-153001-schema-init.js.map +1 -1
- package/dist/development/src/migrations/2025-03-14-110000-fix-missing-index.cjs.map +1 -1
- package/dist/development/src/migrations/2025-03-14-110000-fix-missing-index.js.map +1 -1
- package/dist/development/src/migrations/2026-06-01-120000-event-truncate.cjs +13 -0
- package/dist/development/src/migrations/2026-06-01-120000-event-truncate.cjs.map +1 -0
- package/dist/development/src/migrations/2026-06-01-120000-event-truncate.js +14 -0
- package/dist/development/src/migrations/2026-06-01-120000-event-truncate.js.map +1 -0
- package/dist/development/src/migrations/runner.cjs +3 -1
- package/dist/development/src/migrations/runner.cjs.map +1 -1
- package/dist/development/src/migrations/runner.js +3 -1
- package/dist/development/src/migrations/runner.js.map +1 -1
- package/dist/development/src/migrations/snapshot-factory.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot-factory.js.map +1 -1
- package/dist/development/src/migrations/snapshot.cjs +5 -4
- package/dist/development/src/migrations/snapshot.cjs.map +1 -1
- package/dist/development/src/migrations/snapshot.js +5 -4
- 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 +3 -3
- package/dist/development/src/model/ProjectTruncateExecutor.cjs.map +1 -1
- package/dist/development/src/model/ProjectTruncateExecutor.js +3 -3
- package/dist/development/src/model/ProjectTruncateExecutor.js.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/development/src/model/authorization/StagePermissionsFactory.cjs.map +1 -1
- package/dist/development/src/model/authorization/StagePermissionsFactory.js.map +1 -1
- package/dist/development/src/model/authorization/StageScope.cjs.map +1 -1
- package/dist/development/src/model/authorization/StageScope.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 +25 -2
- package/dist/development/src/model/commands/events/TruncateEventsCommand.cjs.map +1 -1
- package/dist/development/src/model/commands/events/TruncateEventsCommand.js +26 -3
- 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.map +1 -1
- package/dist/development/src/model/commands/schema/SaveSchemaCommand.js.map +1 -1
- 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/events/EventResponseBuilder.cjs +6 -1
- package/dist/development/src/model/events/EventResponseBuilder.cjs.map +1 -1
- package/dist/development/src/model/events/EventResponseBuilder.js +6 -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 +17 -0
- package/dist/development/src/model/events/types.cjs.map +1 -1
- package/dist/development/src/model/events/types.js +17 -0
- package/dist/development/src/model/events/types.js.map +1 -1
- package/dist/development/src/model/helpers/stageHelpers.cjs.map +1 -1
- package/dist/development/src/model/helpers/stageHelpers.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.map +1 -1
- package/dist/development/src/model/migrations/MigrationAlterer.js.map +1 -1
- package/dist/development/src/model/migrations/ProjectMigrator.cjs +94 -5
- package/dist/development/src/model/migrations/ProjectMigrator.cjs.map +1 -1
- package/dist/development/src/model/migrations/ProjectMigrator.js +96 -7
- package/dist/development/src/model/migrations/ProjectMigrator.js.map +1 -1
- package/dist/development/src/model/migrations/SchemaProvider.cjs +1 -1
- package/dist/development/src/model/migrations/SchemaProvider.cjs.map +1 -1
- package/dist/development/src/model/migrations/SchemaProvider.js +1 -1
- package/dist/development/src/model/migrations/SchemaProvider.js.map +1 -1
- package/dist/development/src/model/queries/events/EventQueryHelpers.cjs +16 -8
- package/dist/development/src/model/queries/events/EventQueryHelpers.cjs.map +1 -1
- package/dist/development/src/model/queries/events/EventQueryHelpers.js +17 -9
- package/dist/development/src/model/queries/events/EventQueryHelpers.js.map +1 -1
- package/dist/development/src/model/queries/events/EventsQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/events/EventsQuery.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/migrations/ExecutedMigrationsQueryHelper.cjs.map +1 -1
- package/dist/development/src/model/queries/migrations/ExecutedMigrationsQueryHelper.js.map +1 -1
- package/dist/development/src/model/queries/schema/SchemaQuery.cjs +5 -1
- package/dist/development/src/model/queries/schema/SchemaQuery.cjs.map +1 -1
- package/dist/development/src/model/queries/schema/SchemaQuery.js +5 -1
- package/dist/development/src/model/queries/schema/SchemaQuery.js.map +1 -1
- 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/StageQueryFactory.cjs.map +1 -1
- package/dist/development/src/model/queries/stages/StageQueryFactory.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 +4 -1
- package/dist/development/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/development/src/resolvers/ResolverFactory.js +4 -1
- package/dist/development/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/development/src/resolvers/SystemResolverContext.cjs.map +1 -1
- package/dist/development/src/resolvers/SystemResolverContext.js.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.cjs +49 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.js +49 -1
- package/dist/development/src/resolvers/mutation/MigrateMutationResolver.js.map +1 -1
- package/dist/development/src/resolvers/mutation/MigrationAlterMutationResolver.cjs.map +1 -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.map +1 -1
- package/dist/development/src/resolvers/query/EventsQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/ExecutedMigrationsQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/SchemaQueryResolver.cjs.map +1 -1
- package/dist/development/src/resolvers/query/SchemaQueryResolver.js.map +1 -1
- package/dist/development/src/resolvers/query/StagesQueryResolver.cjs.map +1 -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.map +1 -1
- package/dist/development/src/resolvers/types/OldValuesHelpers.js.map +1 -1
- package/dist/development/src/schema/dev.graphql.cjs +1 -1
- package/dist/development/src/schema/dev.graphql.cjs.map +1 -1
- package/dist/development/src/schema/dev.graphql.js +1 -1
- package/dist/development/src/schema/dev.graphql.js.map +1 -1
- package/dist/development/src/schema/system.graphql.cjs +39 -3
- package/dist/development/src/schema/system.graphql.cjs.map +1 -1
- package/dist/development/src/schema/system.graphql.js +39 -3
- package/dist/development/src/schema/system.graphql.js.map +1 -1
- package/dist/development/src/schema/types.cjs +2 -0
- package/dist/development/src/schema/types.cjs.map +1 -1
- package/dist/development/src/schema/types.js +2 -0
- package/dist/development/src/schema/types.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/src/SystemContainer.cjs.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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.map +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.map +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.map +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-153001-schema-init.cjs.map +1 -1
- package/dist/production/src/migrations/2024-06-28-153001-schema-init.js.map +1 -1
- package/dist/production/src/migrations/2025-03-14-110000-fix-missing-index.cjs.map +1 -1
- package/dist/production/src/migrations/2025-03-14-110000-fix-missing-index.js.map +1 -1
- package/dist/production/src/migrations/2026-06-01-120000-event-truncate.cjs +13 -0
- package/dist/production/src/migrations/2026-06-01-120000-event-truncate.cjs.map +1 -0
- package/dist/production/src/migrations/2026-06-01-120000-event-truncate.js +14 -0
- package/dist/production/src/migrations/2026-06-01-120000-event-truncate.js.map +1 -0
- package/dist/production/src/migrations/runner.cjs +3 -1
- package/dist/production/src/migrations/runner.cjs.map +1 -1
- package/dist/production/src/migrations/runner.js +3 -1
- package/dist/production/src/migrations/runner.js.map +1 -1
- package/dist/production/src/migrations/snapshot-factory.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot-factory.js.map +1 -1
- package/dist/production/src/migrations/snapshot.cjs +5 -4
- package/dist/production/src/migrations/snapshot.cjs.map +1 -1
- package/dist/production/src/migrations/snapshot.js +5 -4
- 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 +3 -3
- package/dist/production/src/model/ProjectTruncateExecutor.cjs.map +1 -1
- package/dist/production/src/model/ProjectTruncateExecutor.js +3 -3
- package/dist/production/src/model/ProjectTruncateExecutor.js.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/PermissionsFactory.js.map +1 -1
- package/dist/production/src/model/authorization/StagePermissionsFactory.cjs.map +1 -1
- package/dist/production/src/model/authorization/StagePermissionsFactory.js.map +1 -1
- package/dist/production/src/model/authorization/StageScope.cjs.map +1 -1
- package/dist/production/src/model/authorization/StageScope.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 +25 -2
- package/dist/production/src/model/commands/events/TruncateEventsCommand.cjs.map +1 -1
- package/dist/production/src/model/commands/events/TruncateEventsCommand.js +26 -3
- 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.map +1 -1
- package/dist/production/src/model/commands/schema/SaveSchemaCommand.js.map +1 -1
- 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/events/EventResponseBuilder.cjs +6 -1
- package/dist/production/src/model/events/EventResponseBuilder.cjs.map +1 -1
- package/dist/production/src/model/events/EventResponseBuilder.js +6 -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 +17 -0
- package/dist/production/src/model/events/types.cjs.map +1 -1
- package/dist/production/src/model/events/types.js +17 -0
- package/dist/production/src/model/events/types.js.map +1 -1
- package/dist/production/src/model/helpers/stageHelpers.cjs.map +1 -1
- package/dist/production/src/model/helpers/stageHelpers.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.map +1 -1
- package/dist/production/src/model/migrations/MigrationAlterer.js.map +1 -1
- package/dist/production/src/model/migrations/ProjectMigrator.cjs +94 -5
- package/dist/production/src/model/migrations/ProjectMigrator.cjs.map +1 -1
- package/dist/production/src/model/migrations/ProjectMigrator.js +96 -7
- package/dist/production/src/model/migrations/ProjectMigrator.js.map +1 -1
- package/dist/production/src/model/migrations/SchemaProvider.cjs +1 -1
- package/dist/production/src/model/migrations/SchemaProvider.cjs.map +1 -1
- package/dist/production/src/model/migrations/SchemaProvider.js +1 -1
- package/dist/production/src/model/migrations/SchemaProvider.js.map +1 -1
- package/dist/production/src/model/queries/events/EventQueryHelpers.cjs +16 -8
- package/dist/production/src/model/queries/events/EventQueryHelpers.cjs.map +1 -1
- package/dist/production/src/model/queries/events/EventQueryHelpers.js +17 -9
- package/dist/production/src/model/queries/events/EventQueryHelpers.js.map +1 -1
- package/dist/production/src/model/queries/events/EventsQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/events/EventsQuery.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/migrations/ExecutedMigrationsQueryHelper.cjs.map +1 -1
- package/dist/production/src/model/queries/migrations/ExecutedMigrationsQueryHelper.js.map +1 -1
- package/dist/production/src/model/queries/schema/SchemaQuery.cjs +5 -1
- package/dist/production/src/model/queries/schema/SchemaQuery.cjs.map +1 -1
- package/dist/production/src/model/queries/schema/SchemaQuery.js +5 -1
- package/dist/production/src/model/queries/schema/SchemaQuery.js.map +1 -1
- 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/StageQueryFactory.cjs.map +1 -1
- package/dist/production/src/model/queries/stages/StageQueryFactory.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 +4 -1
- package/dist/production/src/resolvers/ResolverFactory.cjs.map +1 -1
- package/dist/production/src/resolvers/ResolverFactory.js +4 -1
- package/dist/production/src/resolvers/ResolverFactory.js.map +1 -1
- package/dist/production/src/resolvers/SystemResolverContext.cjs.map +1 -1
- package/dist/production/src/resolvers/SystemResolverContext.js.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.cjs +49 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.js +49 -1
- package/dist/production/src/resolvers/mutation/MigrateMutationResolver.js.map +1 -1
- package/dist/production/src/resolvers/mutation/MigrationAlterMutationResolver.cjs.map +1 -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.map +1 -1
- package/dist/production/src/resolvers/query/EventsQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/ExecutedMigrationsQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/SchemaQueryResolver.cjs.map +1 -1
- package/dist/production/src/resolvers/query/SchemaQueryResolver.js.map +1 -1
- package/dist/production/src/resolvers/query/StagesQueryResolver.cjs.map +1 -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.map +1 -1
- package/dist/production/src/resolvers/types/OldValuesHelpers.js.map +1 -1
- package/dist/production/src/schema/dev.graphql.cjs +1 -1
- package/dist/production/src/schema/dev.graphql.cjs.map +1 -1
- package/dist/production/src/schema/dev.graphql.js +1 -1
- package/dist/production/src/schema/dev.graphql.js.map +1 -1
- package/dist/production/src/schema/system.graphql.cjs +39 -3
- package/dist/production/src/schema/system.graphql.cjs.map +1 -1
- package/dist/production/src/schema/system.graphql.js +39 -3
- package/dist/production/src/schema/system.graphql.js.map +1 -1
- package/dist/production/src/schema/types.cjs +2 -0
- package/dist/production/src/schema/types.cjs.map +1 -1
- package/dist/production/src/schema/types.js +2 -0
- package/dist/production/src/schema/types.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/projectMigratorSchemaState.test.d.ts +2 -0
- package/dist/tests/cases/unit/projectMigratorSchemaState.test.d.ts.map +1 -0
- package/dist/tests/cases/unit/truncateEventsCommand.test.d.ts +2 -0
- package/dist/tests/cases/unit/truncateEventsCommand.test.d.ts.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/dist/types/SystemContainer.d.ts +6 -6
- package/dist/types/SystemContainer.d.ts.map +1 -1
- package/dist/types/index.d.ts +7 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/migrations/2020-03-27-130000-project-migrations.d.ts +1 -1
- package/dist/types/migrations/2020-03-27-130000-project-migrations.d.ts.map +1 -1
- package/dist/types/migrations/2020-05-06-150000-composed-primary.d.ts +1 -1
- package/dist/types/migrations/2020-05-06-150000-composed-primary.d.ts.map +1 -1
- package/dist/types/migrations/2020-06-01-103000-event-trigger-perf.d.ts +1 -1
- package/dist/types/migrations/2020-06-01-103000-event-trigger-perf.d.ts.map +1 -1
- package/dist/types/migrations/2021-05-07-155800-event-log-rework.d.ts +1 -1
- package/dist/types/migrations/2021-05-07-155800-event-log-rework.d.ts.map +1 -1
- package/dist/types/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts +1 -1
- package/dist/types/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts.map +1 -1
- package/dist/types/migrations/2022-10-03-110000-table-on-delete.d.ts +1 -1
- package/dist/types/migrations/2022-10-03-110000-table-on-delete.d.ts.map +1 -1
- package/dist/types/migrations/2023-09-11-174000-fix-on-delete.d.ts +1 -1
- package/dist/types/migrations/2023-09-11-174000-fix-on-delete.d.ts.map +1 -1
- package/dist/types/migrations/2023-10-19-173000-fix-unique.d.ts +1 -1
- package/dist/types/migrations/2023-10-19-173000-fix-unique.d.ts.map +1 -1
- package/dist/types/migrations/2024-06-28-153001-schema-init.d.ts +1 -1
- package/dist/types/migrations/2024-06-28-153001-schema-init.d.ts.map +1 -1
- package/dist/types/migrations/2025-03-14-110000-fix-missing-index.d.ts +1 -1
- package/dist/types/migrations/2025-03-14-110000-fix-missing-index.d.ts.map +1 -1
- package/dist/types/migrations/2026-06-01-120000-event-truncate.d.ts +3 -0
- package/dist/types/migrations/2026-06-01-120000-event-truncate.d.ts.map +1 -0
- package/dist/types/migrations/index.d.ts +2 -2
- package/dist/types/migrations/index.d.ts.map +1 -1
- package/dist/types/migrations/runner.d.ts +2 -2
- package/dist/types/migrations/runner.d.ts.map +1 -1
- package/dist/types/migrations/snapshot-factory.d.ts +1 -1
- package/dist/types/migrations/snapshot-factory.d.ts.map +1 -1
- package/dist/types/migrations/snapshot.d.ts +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/ProjectInitializer.d.ts +4 -4
- package/dist/types/model/ProjectInitializer.d.ts.map +1 -1
- package/dist/types/model/ProjectTruncateExecutor.d.ts +3 -3
- package/dist/types/model/ProjectTruncateExecutor.d.ts.map +1 -1
- package/dist/types/model/authorization/StagePermissionsFactory.d.ts +1 -1
- package/dist/types/model/authorization/StagePermissionsFactory.d.ts.map +1 -1
- package/dist/types/model/authorization/StageScope.d.ts +2 -2
- package/dist/types/model/authorization/StageScope.d.ts.map +1 -1
- package/dist/types/model/authorization/index.d.ts +3 -3
- package/dist/types/model/authorization/index.d.ts.map +1 -1
- package/dist/types/model/commands/Command.d.ts +2 -2
- package/dist/types/model/commands/Command.d.ts.map +1 -1
- package/dist/types/model/commands/CommandBus.d.ts +2 -2
- package/dist/types/model/commands/CommandBus.d.ts.map +1 -1
- package/dist/types/model/commands/events/TruncateEventsCommand.d.ts +12 -3
- package/dist/types/model/commands/events/TruncateEventsCommand.d.ts.map +1 -1
- package/dist/types/model/commands/events/index.d.ts +1 -1
- package/dist/types/model/commands/events/index.d.ts.map +1 -1
- package/dist/types/model/commands/index.d.ts +5 -5
- package/dist/types/model/commands/index.d.ts.map +1 -1
- package/dist/types/model/commands/migrations/DeleteMigrationCommand.d.ts +1 -1
- package/dist/types/model/commands/migrations/DeleteMigrationCommand.d.ts.map +1 -1
- package/dist/types/model/commands/migrations/ModifyMigrationCommand.d.ts +1 -1
- package/dist/types/model/commands/migrations/ModifyMigrationCommand.d.ts.map +1 -1
- package/dist/types/model/commands/migrations/SaveMigrationCommand.d.ts +2 -2
- package/dist/types/model/commands/migrations/SaveMigrationCommand.d.ts.map +1 -1
- package/dist/types/model/commands/migrations/index.d.ts +2 -2
- package/dist/types/model/commands/migrations/index.d.ts.map +1 -1
- package/dist/types/model/commands/schema/SaveSchemaCommand.d.ts +2 -2
- package/dist/types/model/commands/schema/SaveSchemaCommand.d.ts.map +1 -1
- package/dist/types/model/commands/stages/CreateStageCommand.d.ts +2 -2
- package/dist/types/model/commands/stages/CreateStageCommand.d.ts.map +1 -1
- package/dist/types/model/commands/stages/TruncateStagesCommand.d.ts +1 -1
- package/dist/types/model/commands/stages/TruncateStagesCommand.d.ts.map +1 -1
- package/dist/types/model/commands/stages/index.d.ts +2 -2
- package/dist/types/model/commands/stages/index.d.ts.map +1 -1
- package/dist/types/model/database/DatabaseContext.d.ts +2 -2
- package/dist/types/model/database/DatabaseContext.d.ts.map +1 -1
- package/dist/types/model/database/index.d.ts +1 -1
- package/dist/types/model/database/index.d.ts.map +1 -1
- package/dist/types/model/dependencies/content/ContentQueryExecutor.d.ts +2 -2
- package/dist/types/model/dependencies/content/ContentQueryExecutor.d.ts.map +1 -1
- package/dist/types/model/dependencies/index.d.ts +2 -2
- package/dist/types/model/dependencies/index.d.ts.map +1 -1
- package/dist/types/model/dependencies/tenant/index.d.ts +1 -1
- package/dist/types/model/dependencies/tenant/index.d.ts.map +1 -1
- package/dist/types/model/dtos/index.d.ts +2 -2
- package/dist/types/model/dtos/index.d.ts.map +1 -1
- package/dist/types/model/events/EventResponseBuilder.d.ts +4 -4
- package/dist/types/model/events/EventResponseBuilder.d.ts.map +1 -1
- package/dist/types/model/events/EventResponseHelper.d.ts +1 -1
- package/dist/types/model/events/EventResponseHelper.d.ts.map +1 -1
- package/dist/types/model/events/identityUtils.d.ts +1 -1
- package/dist/types/model/events/identityUtils.d.ts.map +1 -1
- package/dist/types/model/events/index.d.ts +2 -2
- package/dist/types/model/events/index.d.ts.map +1 -1
- package/dist/types/model/events/types.d.ts +12 -2
- package/dist/types/model/events/types.d.ts.map +1 -1
- package/dist/types/model/helpers/index.d.ts +2 -2
- package/dist/types/model/helpers/index.d.ts.map +1 -1
- package/dist/types/model/helpers/stageHelpers.d.ts +1 -1
- package/dist/types/model/helpers/stageHelpers.d.ts.map +1 -1
- package/dist/types/model/index.d.ts +13 -13
- package/dist/types/model/index.d.ts.map +1 -1
- package/dist/types/model/metadata/SchemaDatabaseMetadataResolverStore.d.ts +1 -1
- package/dist/types/model/metadata/SchemaDatabaseMetadataResolverStore.d.ts.map +1 -1
- package/dist/types/model/metadata/index.d.ts +1 -1
- package/dist/types/model/metadata/index.d.ts.map +1 -1
- package/dist/types/model/migrations/ExecutedMigrationsResolver.d.ts +2 -2
- package/dist/types/model/migrations/ExecutedMigrationsResolver.d.ts.map +1 -1
- package/dist/types/model/migrations/MigrationAlterer.d.ts +3 -3
- package/dist/types/model/migrations/MigrationAlterer.d.ts.map +1 -1
- package/dist/types/model/migrations/MigrationInput.d.ts +6 -0
- package/dist/types/model/migrations/MigrationInput.d.ts.map +1 -1
- package/dist/types/model/migrations/ProjectMigrator.d.ts +28 -10
- package/dist/types/model/migrations/ProjectMigrator.d.ts.map +1 -1
- package/dist/types/model/migrations/SchemaProvider.d.ts +2 -2
- package/dist/types/model/migrations/SchemaProvider.d.ts.map +1 -1
- package/dist/types/model/migrations/index.d.ts +4 -4
- package/dist/types/model/migrations/index.d.ts.map +1 -1
- package/dist/types/model/queries/events/EventQueryHelpers.d.ts +4 -4
- package/dist/types/model/queries/events/EventQueryHelpers.d.ts.map +1 -1
- package/dist/types/model/queries/events/EventsQuery.d.ts +2 -2
- package/dist/types/model/queries/events/EventsQuery.d.ts.map +1 -1
- package/dist/types/model/queries/events/index.d.ts +3 -3
- package/dist/types/model/queries/events/index.d.ts.map +1 -1
- package/dist/types/model/queries/index.d.ts +4 -4
- package/dist/types/model/queries/index.d.ts.map +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationByVersionQuery.d.ts +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationByVersionQuery.d.ts.map +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationsQuery.d.ts +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationsQuery.d.ts.map +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationsQueryHelper.d.ts +1 -1
- package/dist/types/model/queries/migrations/ExecutedMigrationsQueryHelper.d.ts.map +1 -1
- package/dist/types/model/queries/migrations/index.d.ts +3 -3
- package/dist/types/model/queries/migrations/index.d.ts.map +1 -1
- package/dist/types/model/queries/schema/SchemaQuery.d.ts +3 -2
- package/dist/types/model/queries/schema/SchemaQuery.d.ts.map +1 -1
- package/dist/types/model/queries/schema/index.d.ts +1 -1
- package/dist/types/model/queries/schema/index.d.ts.map +1 -1
- package/dist/types/model/queries/stages/StageBySlugQuery.d.ts +1 -1
- package/dist/types/model/queries/stages/StageBySlugQuery.d.ts.map +1 -1
- package/dist/types/model/queries/stages/StageQueryFactory.d.ts +1 -1
- package/dist/types/model/queries/stages/StageQueryFactory.d.ts.map +1 -1
- package/dist/types/model/queries/stages/StagesQuery.d.ts +1 -1
- package/dist/types/model/queries/stages/StagesQuery.d.ts.map +1 -1
- package/dist/types/model/queries/stages/index.d.ts +3 -3
- package/dist/types/model/queries/stages/index.d.ts.map +1 -1
- package/dist/types/model/stages/StageCreator.d.ts +2 -2
- package/dist/types/model/stages/StageCreator.d.ts.map +1 -1
- package/dist/types/model/stages/index.d.ts +1 -1
- package/dist/types/model/stages/index.d.ts.map +1 -1
- package/dist/types/resolvers/Resolver.d.ts +1 -1
- package/dist/types/resolvers/Resolver.d.ts.map +1 -1
- package/dist/types/resolvers/ResolverFactory.d.ts +5 -5
- 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/index.d.ts +5 -5
- package/dist/types/resolvers/index.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/MigrateMutationResolver.d.ts +6 -4
- package/dist/types/resolvers/mutation/MigrateMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/MigrationAlterMutationResolver.d.ts +4 -4
- package/dist/types/resolvers/mutation/MigrationAlterMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/TruncateMutationResolver.d.ts +4 -4
- package/dist/types/resolvers/mutation/TruncateMutationResolver.d.ts.map +1 -1
- package/dist/types/resolvers/mutation/index.d.ts +3 -3
- package/dist/types/resolvers/mutation/index.d.ts.map +1 -1
- package/dist/types/resolvers/query/EventsQueryResolver.d.ts +4 -4
- package/dist/types/resolvers/query/EventsQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/ExecutedMigrationsQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/ExecutedMigrationsQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/SchemaQueryResolver.d.ts +2 -2
- package/dist/types/resolvers/query/SchemaQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/StagesQueryResolver.d.ts +3 -3
- package/dist/types/resolvers/query/StagesQueryResolver.d.ts.map +1 -1
- package/dist/types/resolvers/query/index.d.ts +3 -3
- package/dist/types/resolvers/query/index.d.ts.map +1 -1
- package/dist/types/resolvers/types/EventOldValuesResolver.d.ts +2 -2
- package/dist/types/resolvers/types/EventOldValuesResolver.d.ts.map +1 -1
- package/dist/types/resolvers/types/OldValuesHelpers.d.ts +2 -2
- package/dist/types/resolvers/types/OldValuesHelpers.d.ts.map +1 -1
- package/dist/types/resolvers/types/index.d.ts +1 -1
- package/dist/types/resolvers/types/index.d.ts.map +1 -1
- package/dist/types/schema/index.d.ts +2 -2
- package/dist/types/schema/index.d.ts.map +1 -1
- package/dist/types/schema/system.graphql.d.ts.map +1 -1
- package/dist/types/schema/types.d.ts +80 -54
- package/dist/types/schema/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/dist/types/utils/index.d.ts +7 -7
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/providers.d.ts +1 -1
- package/dist/types/utils/providers.d.ts.map +1 -1
- package/package.json +12 -12
- package/src/SystemContainer.ts +6 -6
- package/src/bin/runMigrations.ts +2 -2
- package/src/index.ts +7 -7
- package/src/migrations/2020-03-27-130000-project-migrations.ts +1 -1
- package/src/migrations/2020-05-06-150000-composed-primary.ts +2 -2
- package/src/migrations/2020-06-01-103000-event-trigger-perf.ts +2 -2
- package/src/migrations/2021-05-07-155800-event-log-rework.ts +2 -2
- package/src/migrations/2021-05-19-1232000-event-log-fix-constraint.ts +2 -2
- 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-153001-schema-init.ts +1 -1
- package/src/migrations/2025-03-14-110000-fix-missing-index.ts +1 -1
- package/src/migrations/2026-06-01-120000-event-truncate.ts +18 -0
- package/src/migrations/index.ts +2 -2
- package/src/migrations/runner.ts +31 -29
- package/src/migrations/snapshot-factory.ts +1 -1
- package/src/migrations/snapshot-template-start.txt +1 -1
- package/src/migrations/snapshot.ts +6 -5
- package/src/migrations/types.ts +2 -2
- package/src/model/ProjectInitializer.ts +4 -4
- package/src/model/ProjectTruncateExecutor.ts +8 -8
- package/src/model/authorization/PermissionsFactory.ts +1 -1
- package/src/model/authorization/StagePermissionsFactory.ts +2 -2
- package/src/model/authorization/StageScope.ts +3 -3
- package/src/model/authorization/index.ts +3 -3
- package/src/model/commands/Command.ts +2 -2
- package/src/model/commands/CommandBus.ts +2 -2
- package/src/model/commands/events/TruncateEventsCommand.ts +45 -5
- package/src/model/commands/events/index.ts +1 -1
- package/src/model/commands/index.ts +5 -5
- package/src/model/commands/migrations/DeleteMigrationCommand.ts +1 -1
- package/src/model/commands/migrations/ModifyMigrationCommand.ts +2 -2
- package/src/model/commands/migrations/SaveMigrationCommand.ts +2 -2
- package/src/model/commands/migrations/index.ts +2 -2
- package/src/model/commands/schema/SaveSchemaCommand.ts +2 -2
- package/src/model/commands/stages/CreateStageCommand.ts +3 -3
- package/src/model/commands/stages/TruncateStagesCommand.ts +1 -1
- package/src/model/commands/stages/index.ts +2 -2
- package/src/model/database/DatabaseContext.ts +2 -2
- package/src/model/database/index.ts +1 -1
- package/src/model/dependencies/content/ContentQueryExecutor.ts +2 -2
- package/src/model/dependencies/index.ts +2 -2
- package/src/model/dependencies/tenant/index.ts +1 -1
- package/src/model/dtos/index.ts +2 -2
- package/src/model/events/EventResponseBuilder.ts +12 -7
- package/src/model/events/EventResponseHelper.ts +1 -1
- package/src/model/events/identityUtils.ts +2 -2
- package/src/model/events/index.ts +2 -2
- package/src/model/events/types.ts +15 -1
- package/src/model/helpers/index.ts +2 -2
- package/src/model/helpers/stageHelpers.ts +1 -1
- package/src/model/index.ts +13 -13
- package/src/model/metadata/SchemaDatabaseMetadataResolverStore.ts +1 -1
- package/src/model/metadata/index.ts +1 -1
- package/src/model/migrations/ExecutedMigrationsResolver.ts +3 -3
- package/src/model/migrations/MigrationAlterer.ts +6 -6
- package/src/model/migrations/MigrationInput.ts +7 -0
- package/src/model/migrations/ProjectMigrator.ts +133 -17
- package/src/model/migrations/SchemaProvider.ts +4 -4
- package/src/model/migrations/index.ts +4 -4
- package/src/model/queries/events/EventQueryHelpers.ts +21 -13
- package/src/model/queries/events/EventsQuery.ts +3 -3
- package/src/model/queries/events/index.ts +3 -3
- package/src/model/queries/index.ts +4 -4
- package/src/model/queries/migrations/ExecutedMigrationByVersionQuery.ts +2 -2
- package/src/model/queries/migrations/ExecutedMigrationsQuery.ts +2 -2
- package/src/model/queries/migrations/ExecutedMigrationsQueryHelper.ts +1 -1
- package/src/model/queries/migrations/index.ts +3 -3
- package/src/model/queries/schema/SchemaQuery.ts +5 -1
- package/src/model/queries/schema/index.ts +1 -1
- package/src/model/queries/stages/StageBySlugQuery.ts +2 -2
- package/src/model/queries/stages/StageQueryFactory.ts +1 -1
- package/src/model/queries/stages/StagesQuery.ts +2 -2
- package/src/model/queries/stages/index.ts +3 -3
- package/src/model/stages/StageCreator.ts +4 -4
- package/src/model/stages/index.ts +1 -1
- package/src/resolvers/Resolver.ts +1 -1
- package/src/resolvers/ResolverFactory.ts +9 -6
- package/src/resolvers/SystemResolverContext.ts +6 -6
- package/src/resolvers/index.ts +5 -5
- package/src/resolvers/mutation/MigrateMutationResolver.ts +64 -7
- package/src/resolvers/mutation/MigrationAlterMutationResolver.ts +4 -4
- package/src/resolvers/mutation/TruncateMutationResolver.ts +5 -5
- package/src/resolvers/mutation/index.ts +3 -3
- package/src/resolvers/query/EventsQueryResolver.ts +4 -4
- package/src/resolvers/query/ExecutedMigrationsQueryResolver.ts +4 -4
- package/src/resolvers/query/SchemaQueryResolver.ts +3 -3
- package/src/resolvers/query/StagesQueryResolver.ts +4 -4
- package/src/resolvers/query/index.ts +3 -3
- package/src/resolvers/types/EventOldValuesResolver.ts +3 -3
- package/src/resolvers/types/OldValuesHelpers.ts +3 -3
- package/src/resolvers/types/index.ts +1 -1
- package/src/schema/dev.graphql.ts +1 -1
- package/src/schema/index.ts +4 -2
- package/src/schema/system.graphql.ts +39 -3
- package/src/schema/types.ts +108 -38
- package/src/utils/batchQuery.ts +1 -1
- package/src/utils/index.ts +7 -7
- package/src/utils/providers.ts +1 -1
- package/tests/cases/migrations/2020-05-06-150000-composed-primary.test.ts +1 -1
- package/tests/cases/migrations/2020-06-01-103000-event-trigger-perf.test.ts +1 -1
- package/tests/cases/migrations/2022-10-03-110000-table-on-delete.test.ts +1 -1
- package/tests/cases/migrations/2023-09-11-174000-fix-on-delete.test.ts +1 -1
- package/tests/cases/migrations/2023-10-19-173000-fix-unique.test.ts +1 -1
- package/tests/cases/migrations/2025-03-14-110000-fix-missing-index.test.ts +1 -1
- package/tests/cases/unit/eventsQuery.test.ts +3 -3
- package/tests/cases/unit/projectMigratorSchemaState.test.ts +48 -0
- package/tests/cases/unit/truncateEventsCommand.test.ts +54 -0
- package/vitest.config.ts +0 -3
|
@@ -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 { createJsonLikeType, DateTimeType, JSONType } 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' && 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\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,EACf;AAAA,EAEH,OAAO,WAA+B;AACrC,UAAM,YAA+D;AAAA,MACpE,UAAUA,aAAAA;AAAAA,MACV,MAAMC,aAAAA;AAAAA,MACN,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,OAAO;AAAA,QACN,eAAe,CAAC,QAAe;AAC9B,kBAAQ,IAAI,MAAA;AAAA,YACX,KAAKC,MAAAA,UAAU;AACd,qBAAO;AAAA,YACR,KAAKA,MAAAA,UAAU;AACd,qBAAO;AAAA,YACR,KAAKA,MAAAA,UAAU;AACd,qBAAO;AAAA,YACR,KAAK;AAAA,YACL,KAAK;AACJ,qBAAO;AAAA,YACR;AACC,qBAAOC,YAAAA,YAAY,IAAI,IAAI;AAAA,UAAA;AAAA,QAE9B;AAAA,MAAA;AAAA,MAED,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,MAAA;AAAA,MAEtE,UAAU;AAAA,QACT,SAAS,KAAK,wBAAwB,QAAQ,KAAK,KAAK,uBAAuB;AAAA,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ResolverFactory.cjs","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query/index.js'\nimport { Event, EventType, Resolvers } from '../schema/index.js'\nimport { assertNever } from '../utils/index.js'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation/index.js'\nimport { createJsonLikeType, DateTimeType, JSONType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types/index.js'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\nimport { SchemaQueryResolver } from './query/SchemaQueryResolver.js'\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 EventType.Truncate:\n\t\t\t\t\t\t\treturn 'TruncateEvent'\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\tmigrateFromSnapshot: this.migrateMutationResolver.migrateFromSnapshot.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' && 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\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":"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"}
|
|
@@ -30,6 +30,8 @@ class ResolverFactory {
|
|
|
30
30
|
return "UpdateEvent";
|
|
31
31
|
case EventType.Delete:
|
|
32
32
|
return "DeleteEvent";
|
|
33
|
+
case EventType.Truncate:
|
|
34
|
+
return "TruncateEvent";
|
|
33
35
|
case null:
|
|
34
36
|
case void 0:
|
|
35
37
|
return null;
|
|
@@ -45,7 +47,8 @@ class ResolverFactory {
|
|
|
45
47
|
schema: this.schemaQueryResolver.schema.bind(this.schemaQueryResolver)
|
|
46
48
|
},
|
|
47
49
|
Mutation: {
|
|
48
|
-
migrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver)
|
|
50
|
+
migrate: this.migrateMutationResolver.migrate.bind(this.migrateMutationResolver),
|
|
51
|
+
migrateFromSnapshot: this.migrateMutationResolver.migrateFromSnapshot.bind(this.migrateMutationResolver)
|
|
49
52
|
},
|
|
50
53
|
DeleteEvent: {
|
|
51
54
|
oldValues: this.eventOldValuesResolver.oldValues.bind(this.eventOldValuesResolver)
|
|
@@ -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 { createJsonLikeType, DateTimeType, JSONType } 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' && 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\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,EACf;AAAA,EAEH,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,MAAA;AAAA,YACX,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK;AAAA,YACL,KAAK;AACJ,qBAAO;AAAA,YACR;AACC,qBAAO,YAAY,IAAI,IAAI;AAAA,UAAA;AAAA,QAE9B;AAAA,MAAA;AAAA,MAED,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,MAAA;AAAA,MAEtE,UAAU;AAAA,QACT,SAAS,KAAK,wBAAwB,QAAQ,KAAK,KAAK,uBAAuB;AAAA,MAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"ResolverFactory.js","sources":["../../../../../packages/engine-system-api/src/resolvers/ResolverFactory.ts"],"sourcesContent":["import { EventsQueryResolver, ExecutedMigrationsQueryResolver, StagesQueryResolver } from './query/index.js'\nimport { Event, EventType, Resolvers } from '../schema/index.js'\nimport { assertNever } from '../utils/index.js'\nimport { MigrateMutationResolver, MigrationAlterMutationResolver, TruncateMutationResolver } from './mutation/index.js'\nimport { createJsonLikeType, DateTimeType, JSONType } from '@contember/graphql-utils'\nimport { EventOldValuesResolver } from './types/index.js'\nimport { GraphQLError, GraphQLScalarType, Kind } from 'graphql'\nimport { SchemaQueryResolver } from './query/SchemaQueryResolver.js'\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 EventType.Truncate:\n\t\t\t\t\t\t\treturn 'TruncateEvent'\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\tmigrateFromSnapshot: this.migrateMutationResolver.migrateFromSnapshot.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' && 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\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,EACf;AAAA,EAEH,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,MAAA;AAAA,YACX,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK,UAAU;AACd,qBAAO;AAAA,YACR,KAAK;AAAA,YACL,KAAK;AACJ,qBAAO;AAAA,YACR;AACC,qBAAO,YAAY,IAAI,IAAI;AAAA,UAAA;AAAA,QAE9B;AAAA,MAAA;AAAA,MAED,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,MAAA;AAAA,MAEtE,UAAU;AAAA,QACT,SAAS,KAAK,wBAAwB,QAAQ,KAAK,KAAK,uBAAuB;AAAA,QAC/E,qBAAqB,KAAK,wBAAwB,oBAAoB,KAAK,KAAK,uBAAuB;AAAA,MAAA;AAAA,MAExG,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAAA;AAAA,MAElF,aAAa;AAAA,QACZ,WAAW,KAAK,uBAAuB,UAAU,KAAK,KAAK,sBAAsB;AAAA,MAAA;AAAA,IAClF;AAED,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,IAC9G;AACA,WAAO;AAAA,EACR;AACD;AAEA,MAAM,aAAa,CAAC,UAAe;AAClC,MAAK,OAAO,UAAU,YAAY,UAAU,MAAO,OAAO,UAAU,YAAY,OAAO,SAAS,KAAK,KAAK,KAAK,MAAM,KAAK,MAAM,OAAO;AACtI,WAAO;AAAA,EACR;AACA,QAAM,IAAI,aAAa,wCAAwC,KAAK,UAAU,KAAK,CAAC;AACrF;AAEA,MAAM,aAAa,mBAAmB,UAAU,mCAAmC;AAE5E,MAAM,iBAAiB,IAAI,kBAAkB;AAAA,EACnD,MAAM;AAAA,EACN,aAAa;AAAA,EACb,WAAW;AAAA,EACX;AAAA,EACA,aAAa,KAAK;AACjB,QAAI,IAAI,SAAS,KAAK,QAAQ;AAC7B,aAAO,IAAI;AAAA,IACZ;AACA,QAAI,IAAI,SAAS,KAAK,KAAK;AAC1B,aAAO,OAAO,SAAS,IAAI,OAAO,EAAE;AAAA,IACrC;AACA,WAAO;AAAA,EACR;AACD,CAAC;"}
|
|
@@ -1 +1 @@
|
|
|
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(\n\t\t{ getSchema, identity, project, db }: Pick<SystemResolverContext, 'getSchema' | 'db' | 'identity' | 'project'>,\n\t): 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,EACf;AAAA,EAEH,MAAa,OACZ,EAAE,WAAW,UAAU,SAAS,MACC;AACjC,UAAM,0BAA0B,IAAIA,wBAAAA,wBAAwB,SAAS;AACrE,UAAM,8BAAc,IAAA;AACpB,WAAO;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;AAC3G,gBAAM,IAAIC,aAAAA,eAAe,WAAW,WAAW;AAAA,QAChD;AAAA,MACD;AAAA,MACA,WAAW,CAAA,kBAAiB;AAC3B,cAAM,SAAS,QAAQ,IAAI,aAAa;AACxC,YAAI,QAAQ;AACX,iBAAO;AAAA,QACR;AACA,cAAM,YAAY,cAAc,EAAE;AAClC,gBAAQ,IAAI,eAAe,SAAS;AACpC,eAAO;AAAA,MACR;AAAA,IAAA;AAAA,EAEF;AACD;;"}
|
|
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/index.js'\nimport { ProjectConfig } from '../types.js'\nimport { StagePermissionsFactory } from '../model/authorization/StagePermissionsFactory.js'\nimport { StageScope } from '../model/authorization/StageScope.js'\nimport { ItemLoader } from '../utils/batchQuery.js'\nimport { SchemaGetter } from '../model/SchemaGetter.js'\n\nexport class SystemResolverContextFactory {\n\tconstructor(\n\t\tprivate readonly authorizator: Authorizator<Identity>,\n\t) {}\n\n\tpublic async create(\n\t\t{ getSchema, identity, project, db }: Pick<SystemResolverContext, 'getSchema' | 'db' | 'identity' | 'project'>,\n\t): 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,EACf;AAAA,EAEH,MAAa,OACZ,EAAE,WAAW,UAAU,SAAS,MACC;AACjC,UAAM,0BAA0B,IAAIA,wBAAAA,wBAAwB,SAAS;AACrE,UAAM,8BAAc,IAAA;AACpB,WAAO;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;AAC3G,gBAAM,IAAIC,aAAAA,eAAe,WAAW,WAAW;AAAA,QAChD;AAAA,MACD;AAAA,MACA,WAAW,CAAA,kBAAiB;AAC3B,cAAM,SAAS,QAAQ,IAAI,aAAa;AACxC,YAAI,QAAQ;AACX,iBAAO;AAAA,QACR;AACA,cAAM,YAAY,cAAc,EAAE;AAClC,gBAAQ,IAAI,eAAe,SAAS;AACpC,eAAO;AAAA,MACR;AAAA,IAAA;AAAA,EAEF;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SystemResolverContext.js","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(\n\t\t{ getSchema, identity, project, db }: Pick<SystemResolverContext, 'getSchema' | 'db' | 'identity' | 'project'>,\n\t): 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":[],"mappings":";;;AASO,MAAM,6BAA6B;AAAA,EACzC,YACkB,cAChB;AADgB,SAAA,eAAA;AAAA,EACf;AAAA,EAEH,MAAa,OACZ,EAAE,WAAW,UAAU,SAAS,MACC;AACjC,UAAM,0BAA0B,IAAI,wBAAwB,SAAS;AACrE,UAAM,8BAAc,IAAA;AACpB,WAAO;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,IAAI,WAAW,OAAO,uBAAuB,GAAG,MAAM,GAAI;AAC3G,gBAAM,IAAI,eAAe,WAAW,WAAW;AAAA,QAChD;AAAA,MACD;AAAA,MACA,WAAW,CAAA,kBAAiB;AAC3B,cAAM,SAAS,QAAQ,IAAI,aAAa;AACxC,YAAI,QAAQ;AACX,iBAAO;AAAA,QACR;AACA,cAAM,YAAY,cAAc,EAAE;AAClC,gBAAQ,IAAI,eAAe,SAAS;AACpC,eAAO;AAAA,MACR;AAAA,IAAA;AAAA,EAEF;AACD;"}
|
|
1
|
+
{"version":3,"file":"SystemResolverContext.js","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/index.js'\nimport { ProjectConfig } from '../types.js'\nimport { StagePermissionsFactory } from '../model/authorization/StagePermissionsFactory.js'\nimport { StageScope } from '../model/authorization/StageScope.js'\nimport { ItemLoader } from '../utils/batchQuery.js'\nimport { SchemaGetter } from '../model/SchemaGetter.js'\n\nexport class SystemResolverContextFactory {\n\tconstructor(\n\t\tprivate readonly authorizator: Authorizator<Identity>,\n\t) {}\n\n\tpublic async create(\n\t\t{ getSchema, identity, project, db }: Pick<SystemResolverContext, 'getSchema' | 'db' | 'identity' | 'project'>,\n\t): 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":[],"mappings":";;;AASO,MAAM,6BAA6B;AAAA,EACzC,YACkB,cAChB;AADgB,SAAA,eAAA;AAAA,EACf;AAAA,EAEH,MAAa,OACZ,EAAE,WAAW,UAAU,SAAS,MACC;AACjC,UAAM,0BAA0B,IAAI,wBAAwB,SAAS;AACrE,UAAM,8BAAc,IAAA;AACpB,WAAO;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,IAAI,WAAW,OAAO,uBAAuB,GAAG,MAAM,GAAI;AAC3G,gBAAM,IAAI,eAAe,WAAW,WAAW;AAAA,QAChD;AAAA,MACD;AAAA,MACA,WAAW,CAAA,kBAAiB;AAC3B,cAAM,SAAS,QAAQ,IAAI,aAAa;AACxC,YAAI,QAAQ;AACX,iBAAO;AAAA,QACR;AACA,cAAM,YAAY,cAAc,EAAE;AAClC,gBAAQ,IAAI,eAAe,SAAS;AACpC,eAAO;AAAA,MACR;AAAA,IAAA;AAAA,EAEF;AACD;"}
|
|
@@ -24,6 +24,7 @@ class MigrateMutationResolver {
|
|
|
24
24
|
}
|
|
25
25
|
async migrate(parent, args, context, info, force = false) {
|
|
26
26
|
const migrations = this.parseMigrationInput(args);
|
|
27
|
+
const schemaState = args.schemaState ?? void 0;
|
|
27
28
|
return context.db.locked(pg_lock_id, (db) => db.transaction(async (trx) => {
|
|
28
29
|
const stages = await trx.queryHandler.fetch(new StagesQuery.StagesQuery());
|
|
29
30
|
for (const stage of stages) {
|
|
@@ -36,6 +37,7 @@ class MigrateMutationResolver {
|
|
|
36
37
|
identity: context.identity,
|
|
37
38
|
stages,
|
|
38
39
|
migrationsToExecute: migrations,
|
|
40
|
+
schemaState,
|
|
39
41
|
options: {
|
|
40
42
|
ignoreOrder: force,
|
|
41
43
|
skipExecuted: true
|
|
@@ -64,8 +66,54 @@ class MigrateMutationResolver {
|
|
|
64
66
|
};
|
|
65
67
|
}));
|
|
66
68
|
}
|
|
69
|
+
async migrateFromSnapshot(parent, args, context, info) {
|
|
70
|
+
const covers = this.parseMigrations(args.snapshot.covers);
|
|
71
|
+
const schemaState = args.schemaState ?? void 0;
|
|
72
|
+
return context.db.locked(pg_lock_id, (db) => db.transaction(async (trx) => {
|
|
73
|
+
const stages = await trx.queryHandler.fetch(new StagesQuery.StagesQuery());
|
|
74
|
+
for (const stage of stages) {
|
|
75
|
+
await context.requireAccess(AuthorizationActions.AuthorizationActions.PROJECT_MIGRATE, stage.slug);
|
|
76
|
+
}
|
|
77
|
+
try {
|
|
78
|
+
await this.projectMigrator.migrateFromSnapshot({
|
|
79
|
+
db: trx,
|
|
80
|
+
project: context.project,
|
|
81
|
+
stages,
|
|
82
|
+
snapshot: {
|
|
83
|
+
formatVersion: args.snapshot.formatVersion,
|
|
84
|
+
modifications: args.snapshot.modifications
|
|
85
|
+
},
|
|
86
|
+
covers,
|
|
87
|
+
schemaState
|
|
88
|
+
});
|
|
89
|
+
} catch (e) {
|
|
90
|
+
if (e instanceof ProjectMigrator.MigrationError) {
|
|
91
|
+
await trx.client.connection.rollback();
|
|
92
|
+
const error = {
|
|
93
|
+
code: e.code,
|
|
94
|
+
migration: e.version,
|
|
95
|
+
developerMessage: e.message
|
|
96
|
+
};
|
|
97
|
+
return {
|
|
98
|
+
ok: false,
|
|
99
|
+
errors: [error],
|
|
100
|
+
error
|
|
101
|
+
};
|
|
102
|
+
} else {
|
|
103
|
+
throw e;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
ok: true,
|
|
108
|
+
errors: []
|
|
109
|
+
};
|
|
110
|
+
}));
|
|
111
|
+
}
|
|
67
112
|
parseMigrationInput(args) {
|
|
68
|
-
return args.migrations
|
|
113
|
+
return this.parseMigrations(args.migrations);
|
|
114
|
+
}
|
|
115
|
+
parseMigrations(migrations) {
|
|
116
|
+
return migrations.map((it) => {
|
|
69
117
|
if (!it.type) {
|
|
70
118
|
if (!it.modifications || !it.formatVersion) {
|
|
71
119
|
throw new graphqlUtils.UserInputError("invalid migration format");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrateMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport { MigrateResponse, MigrationType, MutationMigrateArgs } from '../../schema'\nimport { Migration } from '@contember/schema-migrations'\nimport { AuthorizationActions, MigrationError, ProjectMigrator, StagesQuery } from '../../model'\nimport { MigrationInput } from '../../model/migrations/MigrationInput'\nimport { UserInputError } from '@contember/graphql-utils'\nimport { SchemaValidatorSkippedErrors } from '@contember/schema-utils'\nimport { assertNever } from '../../utils'\n\nconst pg_lock_id = 1597474138739147\n\nexport class MigrateMutationResolver implements MutationResolver<'migrate'> {\n\tconstructor(private readonly projectMigrator: ProjectMigrator) {}\n\n\tasync migrateForce(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\treturn this.migrate(parent, args, context, info, true)\n\t}\n\n\tasync migrate(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t\tforce = false,\n\t): Promise<MigrateResponse> {\n\t\tconst migrations = this.parseMigrationInput(args)\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrate({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tidentity: context.identity,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tmigrationsToExecute: migrations,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tignoreOrder: force,\n\t\t\t\t\t\t\tskipExecuted: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tprivate parseMigrationInput(args: MutationMigrateArgs): MigrationInput[] {\n\t\treturn args.migrations.map((it): MigrationInput => {\n\t\t\tif (!it.type) {\n\t\t\t\tif (!it.modifications || !it.formatVersion) {\n\t\t\t\t\tthrow new UserInputError('invalid migration format')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tformatVersion: it.formatVersion,\n\t\t\t\t\tmodifications: it.modifications as Migration.Modification[],\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tskippedErrors: (it.skippedErrors as SchemaValidatorSkippedErrors[]) ?? undefined,\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Schema) {\n\t\t\t\tif (!it.schemaMigration) {\n\t\t\t\t\tthrow new UserInputError('schemaMigration must be defined for SCHEMA type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\t...(it.schemaMigration as Omit<Migration, 'name' | 'version'>),\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Content) {\n\t\t\t\tif (!it.contentMigration) {\n\t\t\t\t\tthrow new UserInputError('contentMigration must be defined for CONTENT type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'content',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tqueries: it.contentMigration.map(it => ({\n\t\t\t\t\t\tquery: it.query,\n\t\t\t\t\t\tstage: it.stage ?? undefined,\n\t\t\t\t\t\tvariables: it.variables ?? undefined,\n\t\t\t\t\t})),\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn assertNever(it.type)\n\t\t})\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions","MigrationError","UserInputError","MigrationType","it","assertNever"],"mappings":";;;;;;;;;;;;;;;;AAWA,MAAM,aAAa;AAEZ,MAAM,wBAA+D;AAAA,EAC3E,YAA6B,iBAAkC;AAAlC,SAAA,kBAAA;AAAA,EAAmC;AAAA,EAEhE,MAAM,aACL,QACA,MACA,SACA,MAC2B;AAC3B,WAAO,KAAK,QAAQ,QAAQ,MAAM,SAAS,MAAM,IAAI;AAAA,EACtD;AAAA,EAEA,MAAM,QACL,QACA,MACA,SACA,MACA,QAAQ,OACmB;AAC3B,UAAM,aAAa,KAAK,oBAAoB,IAAI;
|
|
1
|
+
{"version":3,"file":"MigrateMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport { MigrateResponse, MigrationType, MutationMigrateArgs, MutationMigrateFromSnapshotArgs } from '../../schema/index.js'\nimport { Migration } from '@contember/schema-migrations'\nimport { AuthorizationActions, MigrationError, ProjectMigrator, StagesQuery } from '../../model/index.js'\nimport { MigrationInput } from '../../model/migrations/MigrationInput.js'\nimport { UserInputError } from '@contember/graphql-utils'\nimport { SchemaValidatorSkippedErrors } from '@contember/schema-utils'\nimport { assertNever } from '../../utils/index.js'\n\nconst pg_lock_id = 1597474138739147\n\nexport class MigrateMutationResolver implements MutationResolver<'migrate'> {\n\tconstructor(private readonly projectMigrator: ProjectMigrator) {}\n\n\tasync migrateForce(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\treturn this.migrate(parent, args, context, info, true)\n\t}\n\n\tasync migrate(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t\tforce = false,\n\t): Promise<MigrateResponse> {\n\t\tconst migrations = this.parseMigrationInput(args)\n\t\tconst schemaState = args.schemaState ?? undefined\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrate({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tidentity: context.identity,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tmigrationsToExecute: migrations,\n\t\t\t\t\t\tschemaState,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tignoreOrder: force,\n\t\t\t\t\t\t\tskipExecuted: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tasync migrateFromSnapshot(\n\t\tparent: any,\n\t\targs: MutationMigrateFromSnapshotArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\tconst covers = this.parseMigrations(args.snapshot.covers)\n\t\tconst schemaState = args.schemaState ?? undefined\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrateFromSnapshot({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tsnapshot: {\n\t\t\t\t\t\t\tformatVersion: args.snapshot.formatVersion,\n\t\t\t\t\t\t\tmodifications: args.snapshot.modifications as Migration.Modification[],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcovers,\n\t\t\t\t\t\tschemaState,\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tprivate parseMigrationInput(args: MutationMigrateArgs): MigrationInput[] {\n\t\treturn this.parseMigrations(args.migrations)\n\t}\n\n\tprivate parseMigrations(migrations: MutationMigrateArgs['migrations']): MigrationInput[] {\n\t\treturn migrations.map((it): MigrationInput => {\n\t\t\tif (!it.type) {\n\t\t\t\tif (!it.modifications || !it.formatVersion) {\n\t\t\t\t\tthrow new UserInputError('invalid migration format')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tformatVersion: it.formatVersion,\n\t\t\t\t\tmodifications: it.modifications as Migration.Modification[],\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tskippedErrors: (it.skippedErrors as SchemaValidatorSkippedErrors[]) ?? undefined,\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Schema) {\n\t\t\t\tif (!it.schemaMigration) {\n\t\t\t\t\tthrow new UserInputError('schemaMigration must be defined for SCHEMA type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\t...(it.schemaMigration as Omit<Migration, 'name' | 'version'>),\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Content) {\n\t\t\t\tif (!it.contentMigration) {\n\t\t\t\t\tthrow new UserInputError('contentMigration must be defined for CONTENT type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'content',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tqueries: it.contentMigration.map(it => ({\n\t\t\t\t\t\tquery: it.query,\n\t\t\t\t\t\tstage: it.stage ?? undefined,\n\t\t\t\t\t\tvariables: it.variables ?? undefined,\n\t\t\t\t\t})),\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn assertNever(it.type)\n\t\t})\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions","MigrationError","UserInputError","MigrationType","it","assertNever"],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ class MigrateMutationResolver {
|
|
|
22
22
|
}
|
|
23
23
|
async migrate(parent, args, context, info, force = false) {
|
|
24
24
|
const migrations = this.parseMigrationInput(args);
|
|
25
|
+
const schemaState = args.schemaState ?? void 0;
|
|
25
26
|
return context.db.locked(pg_lock_id, (db) => db.transaction(async (trx) => {
|
|
26
27
|
const stages = await trx.queryHandler.fetch(new StagesQuery());
|
|
27
28
|
for (const stage of stages) {
|
|
@@ -34,6 +35,7 @@ class MigrateMutationResolver {
|
|
|
34
35
|
identity: context.identity,
|
|
35
36
|
stages,
|
|
36
37
|
migrationsToExecute: migrations,
|
|
38
|
+
schemaState,
|
|
37
39
|
options: {
|
|
38
40
|
ignoreOrder: force,
|
|
39
41
|
skipExecuted: true
|
|
@@ -62,8 +64,54 @@ class MigrateMutationResolver {
|
|
|
62
64
|
};
|
|
63
65
|
}));
|
|
64
66
|
}
|
|
67
|
+
async migrateFromSnapshot(parent, args, context, info) {
|
|
68
|
+
const covers = this.parseMigrations(args.snapshot.covers);
|
|
69
|
+
const schemaState = args.schemaState ?? void 0;
|
|
70
|
+
return context.db.locked(pg_lock_id, (db) => db.transaction(async (trx) => {
|
|
71
|
+
const stages = await trx.queryHandler.fetch(new StagesQuery());
|
|
72
|
+
for (const stage of stages) {
|
|
73
|
+
await context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug);
|
|
74
|
+
}
|
|
75
|
+
try {
|
|
76
|
+
await this.projectMigrator.migrateFromSnapshot({
|
|
77
|
+
db: trx,
|
|
78
|
+
project: context.project,
|
|
79
|
+
stages,
|
|
80
|
+
snapshot: {
|
|
81
|
+
formatVersion: args.snapshot.formatVersion,
|
|
82
|
+
modifications: args.snapshot.modifications
|
|
83
|
+
},
|
|
84
|
+
covers,
|
|
85
|
+
schemaState
|
|
86
|
+
});
|
|
87
|
+
} catch (e) {
|
|
88
|
+
if (e instanceof MigrationError) {
|
|
89
|
+
await trx.client.connection.rollback();
|
|
90
|
+
const error = {
|
|
91
|
+
code: e.code,
|
|
92
|
+
migration: e.version,
|
|
93
|
+
developerMessage: e.message
|
|
94
|
+
};
|
|
95
|
+
return {
|
|
96
|
+
ok: false,
|
|
97
|
+
errors: [error],
|
|
98
|
+
error
|
|
99
|
+
};
|
|
100
|
+
} else {
|
|
101
|
+
throw e;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
ok: true,
|
|
106
|
+
errors: []
|
|
107
|
+
};
|
|
108
|
+
}));
|
|
109
|
+
}
|
|
65
110
|
parseMigrationInput(args) {
|
|
66
|
-
return args.migrations
|
|
111
|
+
return this.parseMigrations(args.migrations);
|
|
112
|
+
}
|
|
113
|
+
parseMigrations(migrations) {
|
|
114
|
+
return migrations.map((it) => {
|
|
67
115
|
if (!it.type) {
|
|
68
116
|
if (!it.modifications || !it.formatVersion) {
|
|
69
117
|
throw new UserInputError("invalid migration format");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrateMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport { MigrateResponse, MigrationType, MutationMigrateArgs } from '../../schema'\nimport { Migration } from '@contember/schema-migrations'\nimport { AuthorizationActions, MigrationError, ProjectMigrator, StagesQuery } from '../../model'\nimport { MigrationInput } from '../../model/migrations/MigrationInput'\nimport { UserInputError } from '@contember/graphql-utils'\nimport { SchemaValidatorSkippedErrors } from '@contember/schema-utils'\nimport { assertNever } from '../../utils'\n\nconst pg_lock_id = 1597474138739147\n\nexport class MigrateMutationResolver implements MutationResolver<'migrate'> {\n\tconstructor(private readonly projectMigrator: ProjectMigrator) {}\n\n\tasync migrateForce(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\treturn this.migrate(parent, args, context, info, true)\n\t}\n\n\tasync migrate(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t\tforce = false,\n\t): Promise<MigrateResponse> {\n\t\tconst migrations = this.parseMigrationInput(args)\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrate({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tidentity: context.identity,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tmigrationsToExecute: migrations,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tignoreOrder: force,\n\t\t\t\t\t\t\tskipExecuted: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tprivate parseMigrationInput(args: MutationMigrateArgs): MigrationInput[] {\n\t\treturn args.migrations.map((it): MigrationInput => {\n\t\t\tif (!it.type) {\n\t\t\t\tif (!it.modifications || !it.formatVersion) {\n\t\t\t\t\tthrow new UserInputError('invalid migration format')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tformatVersion: it.formatVersion,\n\t\t\t\t\tmodifications: it.modifications as Migration.Modification[],\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tskippedErrors: (it.skippedErrors as SchemaValidatorSkippedErrors[]) ?? undefined,\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Schema) {\n\t\t\t\tif (!it.schemaMigration) {\n\t\t\t\t\tthrow new UserInputError('schemaMigration must be defined for SCHEMA type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\t...(it.schemaMigration as Omit<Migration, 'name' | 'version'>),\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Content) {\n\t\t\t\tif (!it.contentMigration) {\n\t\t\t\t\tthrow new UserInputError('contentMigration must be defined for CONTENT type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'content',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tqueries: it.contentMigration.map(it => ({\n\t\t\t\t\t\tquery: it.query,\n\t\t\t\t\t\tstage: it.stage ?? undefined,\n\t\t\t\t\t\tvariables: it.variables ?? undefined,\n\t\t\t\t\t})),\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn assertNever(it.type)\n\t\t})\n\t}\n}\n"],"names":["it"],"mappings":";;;;;;;;;;;;;;AAWA,MAAM,aAAa;AAEZ,MAAM,wBAA+D;AAAA,EAC3E,YAA6B,iBAAkC;AAAlC,SAAA,kBAAA;AAAA,EAAmC;AAAA,EAEhE,MAAM,aACL,QACA,MACA,SACA,MAC2B;AAC3B,WAAO,KAAK,QAAQ,QAAQ,MAAM,SAAS,MAAM,IAAI;AAAA,EACtD;AAAA,EAEA,MAAM,QACL,QACA,MACA,SACA,MACA,QAAQ,OACmB;AAC3B,UAAM,aAAa,KAAK,oBAAoB,IAAI;
|
|
1
|
+
{"version":3,"file":"MigrateMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport { MigrateResponse, MigrationType, MutationMigrateArgs, MutationMigrateFromSnapshotArgs } from '../../schema/index.js'\nimport { Migration } from '@contember/schema-migrations'\nimport { AuthorizationActions, MigrationError, ProjectMigrator, StagesQuery } from '../../model/index.js'\nimport { MigrationInput } from '../../model/migrations/MigrationInput.js'\nimport { UserInputError } from '@contember/graphql-utils'\nimport { SchemaValidatorSkippedErrors } from '@contember/schema-utils'\nimport { assertNever } from '../../utils/index.js'\n\nconst pg_lock_id = 1597474138739147\n\nexport class MigrateMutationResolver implements MutationResolver<'migrate'> {\n\tconstructor(private readonly projectMigrator: ProjectMigrator) {}\n\n\tasync migrateForce(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\treturn this.migrate(parent, args, context, info, true)\n\t}\n\n\tasync migrate(\n\t\tparent: any,\n\t\targs: MutationMigrateArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t\tforce = false,\n\t): Promise<MigrateResponse> {\n\t\tconst migrations = this.parseMigrationInput(args)\n\t\tconst schemaState = args.schemaState ?? undefined\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrate({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tidentity: context.identity,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tmigrationsToExecute: migrations,\n\t\t\t\t\t\tschemaState,\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tignoreOrder: force,\n\t\t\t\t\t\t\tskipExecuted: true,\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tasync migrateFromSnapshot(\n\t\tparent: any,\n\t\targs: MutationMigrateFromSnapshotArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrateResponse> {\n\t\tconst covers = this.parseMigrations(args.snapshot.covers)\n\t\tconst schemaState = args.schemaState ?? undefined\n\n\t\treturn context.db.locked(pg_lock_id, db =>\n\t\t\tdb.transaction(async trx => {\n\t\t\t\tconst stages = await trx.queryHandler.fetch(new StagesQuery())\n\t\t\t\tfor (const stage of stages) {\n\t\t\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_MIGRATE, stage.slug)\n\t\t\t\t}\n\t\t\t\ttry {\n\t\t\t\t\tawait this.projectMigrator.migrateFromSnapshot({\n\t\t\t\t\t\tdb: trx,\n\t\t\t\t\t\tproject: context.project,\n\t\t\t\t\t\tstages,\n\t\t\t\t\t\tsnapshot: {\n\t\t\t\t\t\t\tformatVersion: args.snapshot.formatVersion,\n\t\t\t\t\t\t\tmodifications: args.snapshot.modifications as Migration.Modification[],\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcovers,\n\t\t\t\t\t\tschemaState,\n\t\t\t\t\t})\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\t\tawait trx.client.connection.rollback()\n\t\t\t\t\t\tconst error = {\n\t\t\t\t\t\t\tcode: e.code,\n\t\t\t\t\t\t\tmigration: e.version,\n\t\t\t\t\t\t\tdeveloperMessage: e.message,\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tok: false,\n\t\t\t\t\t\t\terrors: [error],\n\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow e\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tok: true,\n\t\t\t\t\terrors: [],\n\t\t\t\t}\n\t\t\t}))\n\t}\n\n\tprivate parseMigrationInput(args: MutationMigrateArgs): MigrationInput[] {\n\t\treturn this.parseMigrations(args.migrations)\n\t}\n\n\tprivate parseMigrations(migrations: MutationMigrateArgs['migrations']): MigrationInput[] {\n\t\treturn migrations.map((it): MigrationInput => {\n\t\t\tif (!it.type) {\n\t\t\t\tif (!it.modifications || !it.formatVersion) {\n\t\t\t\t\tthrow new UserInputError('invalid migration format')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tformatVersion: it.formatVersion,\n\t\t\t\t\tmodifications: it.modifications as Migration.Modification[],\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tskippedErrors: (it.skippedErrors as SchemaValidatorSkippedErrors[]) ?? undefined,\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Schema) {\n\t\t\t\tif (!it.schemaMigration) {\n\t\t\t\t\tthrow new UserInputError('schemaMigration must be defined for SCHEMA type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'schema',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\t...(it.schemaMigration as Omit<Migration, 'name' | 'version'>),\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (it.type === MigrationType.Content) {\n\t\t\t\tif (!it.contentMigration) {\n\t\t\t\t\tthrow new UserInputError('contentMigration must be defined for CONTENT type')\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\ttype: 'content',\n\t\t\t\t\tname: it.name,\n\t\t\t\t\tversion: it.version,\n\t\t\t\t\tqueries: it.contentMigration.map(it => ({\n\t\t\t\t\t\tquery: it.query,\n\t\t\t\t\t\tstage: it.stage ?? undefined,\n\t\t\t\t\t\tvariables: it.variables ?? undefined,\n\t\t\t\t\t})),\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn assertNever(it.type)\n\t\t})\n\t}\n}\n"],"names":["it"],"mappings":";;;;;;;;;;;;;;AAWA,MAAM,aAAa;AAEZ,MAAM,wBAA+D;AAAA,EAC3E,YAA6B,iBAAkC;AAAlC,SAAA,kBAAA;AAAA,EAAmC;AAAA,EAEhE,MAAM,aACL,QACA,MACA,SACA,MAC2B;AAC3B,WAAO,KAAK,QAAQ,QAAQ,MAAM,SAAS,MAAM,IAAI;AAAA,EACtD;AAAA,EAEA,MAAM,QACL,QACA,MACA,SACA,MACA,QAAQ,OACmB;AAC3B,UAAM,aAAa,KAAK,oBAAoB,IAAI;AAChD,UAAM,cAAc,KAAK,eAAe;AAExC,WAAO,QAAQ,GAAG,OAAO,YAAY,QACpC,GAAG,YAAY,OAAM,QAAO;AAC3B,YAAM,SAAS,MAAM,IAAI,aAAa,MAAM,IAAI,aAAa;AAC7D,iBAAW,SAAS,QAAQ;AAC3B,cAAM,QAAQ,cAAc,qBAAqB,iBAAiB,MAAM,IAAI;AAAA,MAC7E;AACA,UAAI;AACH,cAAM,KAAK,gBAAgB,QAAQ;AAAA,UAClC,IAAI;AAAA,UACJ,SAAS,QAAQ;AAAA,UACjB,UAAU,QAAQ;AAAA,UAClB;AAAA,UACA,qBAAqB;AAAA,UACrB;AAAA,UACA,SAAS;AAAA,YACR,aAAa;AAAA,YACb,cAAc;AAAA,UAAA;AAAA,QACf,CACA;AAAA,MACF,SAAS,GAAG;AACX,YAAI,aAAa,gBAAgB;AAChC,gBAAM,IAAI,OAAO,WAAW,SAAA;AAC5B,gBAAM,QAAQ;AAAA,YACb,MAAM,EAAE;AAAA,YACR,WAAW,EAAE;AAAA,YACb,kBAAkB,EAAE;AAAA,UAAA;AAErB,iBAAO;AAAA,YACN,IAAI;AAAA,YACJ,QAAQ,CAAC,KAAK;AAAA,YACd;AAAA,UAAA;AAAA,QAEF,OAAO;AACN,gBAAM;AAAA,QACP;AAAA,MACD;AACA,aAAO;AAAA,QACN,IAAI;AAAA,QACJ,QAAQ,CAAA;AAAA,MAAC;AAAA,IAEX,CAAC,CAAC;AAAA,EACJ;AAAA,EAEA,MAAM,oBACL,QACA,MACA,SACA,MAC2B;AAC3B,UAAM,SAAS,KAAK,gBAAgB,KAAK,SAAS,MAAM;AACxD,UAAM,cAAc,KAAK,eAAe;AAExC,WAAO,QAAQ,GAAG,OAAO,YAAY,QACpC,GAAG,YAAY,OAAM,QAAO;AAC3B,YAAM,SAAS,MAAM,IAAI,aAAa,MAAM,IAAI,aAAa;AAC7D,iBAAW,SAAS,QAAQ;AAC3B,cAAM,QAAQ,cAAc,qBAAqB,iBAAiB,MAAM,IAAI;AAAA,MAC7E;AACA,UAAI;AACH,cAAM,KAAK,gBAAgB,oBAAoB;AAAA,UAC9C,IAAI;AAAA,UACJ,SAAS,QAAQ;AAAA,UACjB;AAAA,UACA,UAAU;AAAA,YACT,eAAe,KAAK,SAAS;AAAA,YAC7B,eAAe,KAAK,SAAS;AAAA,UAAA;AAAA,UAE9B;AAAA,UACA;AAAA,QAAA,CACA;AAAA,MACF,SAAS,GAAG;AACX,YAAI,aAAa,gBAAgB;AAChC,gBAAM,IAAI,OAAO,WAAW,SAAA;AAC5B,gBAAM,QAAQ;AAAA,YACb,MAAM,EAAE;AAAA,YACR,WAAW,EAAE;AAAA,YACb,kBAAkB,EAAE;AAAA,UAAA;AAErB,iBAAO;AAAA,YACN,IAAI;AAAA,YACJ,QAAQ,CAAC,KAAK;AAAA,YACd;AAAA,UAAA;AAAA,QAEF,OAAO;AACN,gBAAM;AAAA,QACP;AAAA,MACD;AACA,aAAO;AAAA,QACN,IAAI;AAAA,QACJ,QAAQ,CAAA;AAAA,MAAC;AAAA,IAEX,CAAC,CAAC;AAAA,EACJ;AAAA,EAEQ,oBAAoB,MAA6C;AACxE,WAAO,KAAK,gBAAgB,KAAK,UAAU;AAAA,EAC5C;AAAA,EAEQ,gBAAgB,YAAiE;AACxF,WAAO,WAAW,IAAI,CAAC,OAAuB;AAC7C,UAAI,CAAC,GAAG,MAAM;AACb,YAAI,CAAC,GAAG,iBAAiB,CAAC,GAAG,eAAe;AAC3C,gBAAM,IAAI,eAAe,0BAA0B;AAAA,QACpD;AACA,eAAO;AAAA,UACN,MAAM;AAAA,UACN,eAAe,GAAG;AAAA,UAClB,eAAe,GAAG;AAAA,UAClB,SAAS,GAAG;AAAA,UACZ,MAAM,GAAG;AAAA,UACT,eAAgB,GAAG,iBAAoD;AAAA,QAAA;AAAA,MAEzE;AACA,UAAI,GAAG,SAAS,cAAc,QAAQ;AACrC,YAAI,CAAC,GAAG,iBAAiB;AACxB,gBAAM,IAAI,eAAe,iDAAiD;AAAA,QAC3E;AACA,eAAO;AAAA,UACN,MAAM;AAAA,UACN,MAAM,GAAG;AAAA,UACT,SAAS,GAAG;AAAA,UACZ,GAAI,GAAG;AAAA,QAAA;AAAA,MAET;AACA,UAAI,GAAG,SAAS,cAAc,SAAS;AACtC,YAAI,CAAC,GAAG,kBAAkB;AACzB,gBAAM,IAAI,eAAe,mDAAmD;AAAA,QAC7E;AACA,eAAO;AAAA,UACN,MAAM;AAAA,UACN,MAAM,GAAG;AAAA,UACT,SAAS,GAAG;AAAA,UACZ,SAAS,GAAG,iBAAiB,IAAI,CAAAA,SAAO;AAAA,YACvC,OAAOA,IAAG;AAAA,YACV,OAAOA,IAAG,SAAS;AAAA,YACnB,WAAWA,IAAG,aAAa;AAAA,UAAA,EAC1B;AAAA,QAAA;AAAA,MAEJ;AACA,aAAO,YAAY,GAAG,IAAI;AAAA,IAC3B,CAAC;AAAA,EACF;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrationAlterMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrationAlterMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport {\n\tMigrationDeleteErrorCode,\n\tMigrationDeleteResponse,\n\tMigrationModifyErrorCode,\n\tMigrationModifyResponse,\n\tMutationMigrationDeleteArgs,\n\tMutationMigrationModifyArgs,\n} from '../../schema'\nimport { DeleteMigrationErrorCode, MigrationAlterer, UpdateMigrationErrorCode } from '../../model'\nimport { Migration } from '@contember/schema-migrations'\n\nexport class MigrationAlterMutationResolver implements MutationResolver<'migrationModify'>, MutationResolver<'migrationDelete'> {\n\tconstructor(private readonly migrationAlterer: MigrationAlterer) {}\n\n\tasync migrationModify(\n\t\tparent: any,\n\t\targs: MutationMigrationModifyArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationModifyResponse> {\n\t\tconst result = await this.migrationAlterer.modifyMigration(\n\t\t\tcontext.db,\n\t\t\targs.migration,\n\t\t\targs.modification as Partial<Migration>,\n\t\t)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[UpdateMigrationErrorCode.notFound]: MigrationModifyErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n\n\tasync migrationDelete(\n\t\tparent: any,\n\t\targs: MutationMigrationDeleteArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationDeleteResponse> {\n\t\tconst result = await this.migrationAlterer.deleteMigration(context.db, args.migration)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[DeleteMigrationErrorCode.notFound]: MigrationDeleteErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n}\n"],"names":["UpdateMigrationErrorCode","MigrationModifyErrorCode","DeleteMigrationErrorCode","MigrationDeleteErrorCode"],"mappings":";;;;;;;;;;;;;AAcO,MAAM,+BAAmH;AAAA,EAC/H,YAA6B,kBAAoC;AAApC,SAAA,mBAAA;AAAA,EAAqC;AAAA,EAElE,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB;AAAA,MAC1C,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAEN,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAACA,iBAAAA,yBAAyB,QAAQ,GAAGC,+BAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AAAA,EAEA,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB,gBAAgB,QAAQ,IAAI,KAAK,SAAS;AACrF,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAACC,iBAAAA,yBAAyB,QAAQ,GAAGC,+BAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AACD;;"}
|
|
1
|
+
{"version":3,"file":"MigrationAlterMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrationAlterMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport {\n\tMigrationDeleteErrorCode,\n\tMigrationDeleteResponse,\n\tMigrationModifyErrorCode,\n\tMigrationModifyResponse,\n\tMutationMigrationDeleteArgs,\n\tMutationMigrationModifyArgs,\n} from '../../schema/index.js'\nimport { DeleteMigrationErrorCode, MigrationAlterer, UpdateMigrationErrorCode } from '../../model/index.js'\nimport { Migration } from '@contember/schema-migrations'\n\nexport class MigrationAlterMutationResolver implements MutationResolver<'migrationModify'>, MutationResolver<'migrationDelete'> {\n\tconstructor(private readonly migrationAlterer: MigrationAlterer) {}\n\n\tasync migrationModify(\n\t\tparent: any,\n\t\targs: MutationMigrationModifyArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationModifyResponse> {\n\t\tconst result = await this.migrationAlterer.modifyMigration(\n\t\t\tcontext.db,\n\t\t\targs.migration,\n\t\t\targs.modification as Partial<Migration>,\n\t\t)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[UpdateMigrationErrorCode.notFound]: MigrationModifyErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n\n\tasync migrationDelete(\n\t\tparent: any,\n\t\targs: MutationMigrationDeleteArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationDeleteResponse> {\n\t\tconst result = await this.migrationAlterer.deleteMigration(context.db, args.migration)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[DeleteMigrationErrorCode.notFound]: MigrationDeleteErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n}\n"],"names":["UpdateMigrationErrorCode","MigrationModifyErrorCode","DeleteMigrationErrorCode","MigrationDeleteErrorCode"],"mappings":";;;;;;;;;;;;;AAcO,MAAM,+BAAmH;AAAA,EAC/H,YAA6B,kBAAoC;AAApC,SAAA,mBAAA;AAAA,EAAqC;AAAA,EAElE,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB;AAAA,MAC1C,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAEN,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAACA,iBAAAA,yBAAyB,QAAQ,GAAGC,+BAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AAAA,EAEA,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB,gBAAgB,QAAQ,IAAI,KAAK,SAAS;AACrF,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAACC,iBAAAA,yBAAyB,QAAQ,GAAGC,+BAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MigrationAlterMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrationAlterMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport {\n\tMigrationDeleteErrorCode,\n\tMigrationDeleteResponse,\n\tMigrationModifyErrorCode,\n\tMigrationModifyResponse,\n\tMutationMigrationDeleteArgs,\n\tMutationMigrationModifyArgs,\n} from '../../schema'\nimport { DeleteMigrationErrorCode, MigrationAlterer, UpdateMigrationErrorCode } from '../../model'\nimport { Migration } from '@contember/schema-migrations'\n\nexport class MigrationAlterMutationResolver implements MutationResolver<'migrationModify'>, MutationResolver<'migrationDelete'> {\n\tconstructor(private readonly migrationAlterer: MigrationAlterer) {}\n\n\tasync migrationModify(\n\t\tparent: any,\n\t\targs: MutationMigrationModifyArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationModifyResponse> {\n\t\tconst result = await this.migrationAlterer.modifyMigration(\n\t\t\tcontext.db,\n\t\t\targs.migration,\n\t\t\targs.modification as Partial<Migration>,\n\t\t)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[UpdateMigrationErrorCode.notFound]: MigrationModifyErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n\n\tasync migrationDelete(\n\t\tparent: any,\n\t\targs: MutationMigrationDeleteArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationDeleteResponse> {\n\t\tconst result = await this.migrationAlterer.deleteMigration(context.db, args.migration)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[DeleteMigrationErrorCode.notFound]: MigrationDeleteErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAcO,MAAM,+BAAmH;AAAA,EAC/H,YAA6B,kBAAoC;AAApC,SAAA,mBAAA;AAAA,EAAqC;AAAA,EAElE,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB;AAAA,MAC1C,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAEN,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAAC,yBAAyB,QAAQ,GAAG,yBAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AAAA,EAEA,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB,gBAAgB,QAAQ,IAAI,KAAK,SAAS;AACrF,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAAC,yBAAyB,QAAQ,GAAG,yBAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AACD;"}
|
|
1
|
+
{"version":3,"file":"MigrationAlterMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/MigrationAlterMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport {\n\tMigrationDeleteErrorCode,\n\tMigrationDeleteResponse,\n\tMigrationModifyErrorCode,\n\tMigrationModifyResponse,\n\tMutationMigrationDeleteArgs,\n\tMutationMigrationModifyArgs,\n} from '../../schema/index.js'\nimport { DeleteMigrationErrorCode, MigrationAlterer, UpdateMigrationErrorCode } from '../../model/index.js'\nimport { Migration } from '@contember/schema-migrations'\n\nexport class MigrationAlterMutationResolver implements MutationResolver<'migrationModify'>, MutationResolver<'migrationDelete'> {\n\tconstructor(private readonly migrationAlterer: MigrationAlterer) {}\n\n\tasync migrationModify(\n\t\tparent: any,\n\t\targs: MutationMigrationModifyArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationModifyResponse> {\n\t\tconst result = await this.migrationAlterer.modifyMigration(\n\t\t\tcontext.db,\n\t\t\targs.migration,\n\t\t\targs.modification as Partial<Migration>,\n\t\t)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[UpdateMigrationErrorCode.notFound]: MigrationModifyErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n\n\tasync migrationDelete(\n\t\tparent: any,\n\t\targs: MutationMigrationDeleteArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<MigrationDeleteResponse> {\n\t\tconst result = await this.migrationAlterer.deleteMigration(context.db, args.migration)\n\t\tif (result.ok) {\n\t\t\treturn {\n\t\t\t\tok: true,\n\t\t\t}\n\t\t}\n\t\tconst code = {\n\t\t\t[DeleteMigrationErrorCode.notFound]: MigrationDeleteErrorCode.NotFound,\n\t\t}[result.error]\n\t\treturn { ok: false, error: { code, developerMessage: result.errorMessage } }\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;AAcO,MAAM,+BAAmH;AAAA,EAC/H,YAA6B,kBAAoC;AAApC,SAAA,mBAAA;AAAA,EAAqC;AAAA,EAElE,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB;AAAA,MAC1C,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,IAAA;AAEN,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAAC,yBAAyB,QAAQ,GAAG,yBAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AAAA,EAEA,MAAM,gBACL,QACA,MACA,SACA,MACmC;AACnC,UAAM,SAAS,MAAM,KAAK,iBAAiB,gBAAgB,QAAQ,IAAI,KAAK,SAAS;AACrF,QAAI,OAAO,IAAI;AACd,aAAO;AAAA,QACN,IAAI;AAAA,MAAA;AAAA,IAEN;AACA,UAAM,OAAO;AAAA,MACZ,CAAC,yBAAyB,QAAQ,GAAG,yBAAyB;AAAA,IAAA,EAC7D,OAAO,KAAK;AACd,WAAO,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,OAAO,eAAa;AAAA,EAC1E;AACD;"}
|
|
@@ -5,7 +5,7 @@ class TruncateMutationResolver {
|
|
|
5
5
|
this.projectTruncateExecutor = projectTruncateExecutor;
|
|
6
6
|
}
|
|
7
7
|
async truncate(parent, args, context, info) {
|
|
8
|
-
await this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema());
|
|
8
|
+
await this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema(), context.identity.id);
|
|
9
9
|
return {
|
|
10
10
|
ok: true
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TruncateMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/TruncateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport { TruncateResponse } from '../../schema'\nimport { ProjectTruncateExecutor } from '../../model'\n\nexport class TruncateMutationResolver implements MutationResolver<'truncate'> {\n\tconstructor(private readonly projectTruncateExecutor: ProjectTruncateExecutor) {}\n\tasync truncate(\n\t\tparent: any,\n\t\targs: any,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<TruncateResponse> {\n\t\tawait this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema())\n\t\treturn {\n\t\t\tok: true,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;AAMO,MAAM,yBAAiE;AAAA,EAC7E,YAA6B,yBAAkD;AAAlD,SAAA,0BAAA;AAAA,EAAmD;AAAA,EAChF,MAAM,SACL,QACA,MACA,SACA,MAC4B;AAC5B,UAAM,KAAK,wBAAwB,gBAAgB,QAAQ,IAAI,QAAQ,SAAS,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"TruncateMutationResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/TruncateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport { TruncateResponse } from '../../schema/index.js'\nimport { ProjectTruncateExecutor } from '../../model/index.js'\n\nexport class TruncateMutationResolver implements MutationResolver<'truncate'> {\n\tconstructor(private readonly projectTruncateExecutor: ProjectTruncateExecutor) {}\n\tasync truncate(\n\t\tparent: any,\n\t\targs: any,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<TruncateResponse> {\n\t\tawait this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema(), context.identity.id)\n\t\treturn {\n\t\t\tok: true,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;AAMO,MAAM,yBAAiE;AAAA,EAC7E,YAA6B,yBAAkD;AAAlD,SAAA,0BAAA;AAAA,EAAmD;AAAA,EAChF,MAAM,SACL,QACA,MACA,SACA,MAC4B;AAC5B,UAAM,KAAK,wBAAwB,gBAAgB,QAAQ,IAAI,QAAQ,SAAS,MAAM,QAAQ,UAAA,GAAa,QAAQ,SAAS,EAAE;AAC9H,WAAO;AAAA,MACN,IAAI;AAAA,IAAA;AAAA,EAEN;AACD;;"}
|
|
@@ -3,7 +3,7 @@ class TruncateMutationResolver {
|
|
|
3
3
|
this.projectTruncateExecutor = projectTruncateExecutor;
|
|
4
4
|
}
|
|
5
5
|
async truncate(parent, args, context, info) {
|
|
6
|
-
await this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema());
|
|
6
|
+
await this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema(), context.identity.id);
|
|
7
7
|
return {
|
|
8
8
|
ok: true
|
|
9
9
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TruncateMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/TruncateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { MutationResolver } from '../Resolver'\nimport { TruncateResponse } from '../../schema'\nimport { ProjectTruncateExecutor } from '../../model'\n\nexport class TruncateMutationResolver implements MutationResolver<'truncate'> {\n\tconstructor(private readonly projectTruncateExecutor: ProjectTruncateExecutor) {}\n\tasync truncate(\n\t\tparent: any,\n\t\targs: any,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<TruncateResponse> {\n\t\tawait this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema())\n\t\treturn {\n\t\t\tok: true,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"AAMO,MAAM,yBAAiE;AAAA,EAC7E,YAA6B,yBAAkD;AAAlD,SAAA,0BAAA;AAAA,EAAmD;AAAA,EAChF,MAAM,SACL,QACA,MACA,SACA,MAC4B;AAC5B,UAAM,KAAK,wBAAwB,gBAAgB,QAAQ,IAAI,QAAQ,SAAS,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"TruncateMutationResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/mutation/TruncateMutationResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { MutationResolver } from '../Resolver.js'\nimport { TruncateResponse } from '../../schema/index.js'\nimport { ProjectTruncateExecutor } from '../../model/index.js'\n\nexport class TruncateMutationResolver implements MutationResolver<'truncate'> {\n\tconstructor(private readonly projectTruncateExecutor: ProjectTruncateExecutor) {}\n\tasync truncate(\n\t\tparent: any,\n\t\targs: any,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<TruncateResponse> {\n\t\tawait this.projectTruncateExecutor.truncateProject(context.db, context.project, await context.getSchema(), context.identity.id)\n\t\treturn {\n\t\t\tok: true,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"AAMO,MAAM,yBAAiE;AAAA,EAC7E,YAA6B,yBAAkD;AAAlD,SAAA,0BAAA;AAAA,EAAmD;AAAA,EAChF,MAAM,SACL,QACA,MACA,SACA,MAC4B;AAC5B,UAAM,KAAK,wBAAwB,gBAAgB,QAAQ,IAAI,QAAQ,SAAS,MAAM,QAAQ,UAAA,GAAa,QAAQ,SAAS,EAAE;AAC9H,WAAO;AAAA,MACN,IAAI;AAAA,IAAA;AAAA,EAEN;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/EventsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { EventsOrder, QueryEventsArgs, ResolversTypes } from '../../schema'\nimport { AuthorizationActions, EventResponseBuilder, EventsQuery, StageBySlugQuery } from '../../model'\nimport { UserInputError } from '@contember/graphql-utils'\n\nexport class EventsQueryResolver implements QueryResolver<'events'> {\n\tconstructor(\n\t\tprivate readonly eventResponseBuilder: EventResponseBuilder,\n\t) {\n\t}\n\n\tasync events(\n\t\tparent: any,\n\t\t{ args }: QueryEventsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ResolversTypes['Event'][]> {\n\t\treturn context.db.transaction(async db => {\n\t\t\tconst stageSlug = args?.stage ?? context.project.stages[0].slug\n\t\t\tconst stage = await db.queryHandler.fetch(new StageBySlugQuery(stageSlug))\n\t\t\tif (!stage) {\n\t\t\t\tthrow new UserInputError(`Stage ${stageSlug} not found`)\n\t\t\t}\n\t\t\tawait context.requireAccess(\n\t\t\t\tAuthorizationActions.PROJECT_HISTORY_ANY,\n\t\t\t\tstage.slug,\n\t\t\t\t'You are not allowed to view a history.',\n\t\t\t)\n\n\t\t\tconst history = await db.queryHandler.fetch(\n\t\t\t\tnew EventsQuery(\n\t\t\t\t\targs?.filter ?? {},\n\t\t\t\t\targs?.order ?? EventsOrder.AppliedAtDesc,\n\t\t\t\t\targs?.offset ?? 0,\n\t\t\t\t\tMath.min(args?.limit ?? 1000, 10000),\n\t\t\t\t),\n\t\t\t)\n\n\t\t\treturn await this.eventResponseBuilder.buildResponse(history)\n\t\t})\n\t}\n}\n"],"names":["StageBySlugQuery","UserInputError","AuthorizationActions","EventsQuery","EventsOrder"],"mappings":";;;;;;;;;;;;;;;AAOO,MAAM,oBAAuD;AAAA,EACnE,YACkB,sBAChB;AADgB,SAAA,uBAAA;AAAA,EAElB;AAAA,EAEA,MAAM,OACL,QACA,EAAE,KAAA,GACF,SACA,MACqC;AACrC,WAAO,QAAQ,GAAG,YAAY,OAAM,OAAM;AACzC,YAAM,YAAY,MAAM,SAAS,QAAQ,QAAQ,OAAO,CAAC,EAAE;AAC3D,YAAM,QAAQ,MAAM,GAAG,aAAa,MAAM,IAAIA,iBAAAA,iBAAiB,SAAS,CAAC;AACzE,UAAI,CAAC,OAAO;AACX,cAAM,IAAIC,aAAAA,eAAe,SAAS,SAAS,YAAY;AAAA,MACxD;AACA,YAAM,QAAQ;AAAA,QACbC,qBAAAA,qBAAqB;AAAA,QACrB,MAAM;AAAA,QACN;AAAA,MAAA;AAGD,YAAM,UAAU,MAAM,GAAG,aAAa;AAAA,QACrC,IAAIC,YAAAA;AAAAA,UACH,MAAM,UAAU,CAAA;AAAA,UAChB,MAAM,SAASC,MAAAA,YAAY;AAAA,UAC3B,MAAM,UAAU;AAAA,UAChB,KAAK,IAAI,MAAM,SAAS,KAAM,GAAK;AAAA,QAAA;AAAA,MACpC;AAGD,aAAO,MAAM,KAAK,qBAAqB,cAAc,OAAO;AAAA,IAC7D,CAAC;AAAA,EACF;AACD;;"}
|
|
1
|
+
{"version":3,"file":"EventsQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/EventsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { EventsOrder, QueryEventsArgs, ResolversTypes } from '../../schema/index.js'\nimport { AuthorizationActions, EventResponseBuilder, EventsQuery, StageBySlugQuery } from '../../model/index.js'\nimport { UserInputError } from '@contember/graphql-utils'\n\nexport class EventsQueryResolver implements QueryResolver<'events'> {\n\tconstructor(\n\t\tprivate readonly eventResponseBuilder: EventResponseBuilder,\n\t) {\n\t}\n\n\tasync events(\n\t\tparent: any,\n\t\t{ args }: QueryEventsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ResolversTypes['Event'][]> {\n\t\treturn context.db.transaction(async db => {\n\t\t\tconst stageSlug = args?.stage ?? context.project.stages[0].slug\n\t\t\tconst stage = await db.queryHandler.fetch(new StageBySlugQuery(stageSlug))\n\t\t\tif (!stage) {\n\t\t\t\tthrow new UserInputError(`Stage ${stageSlug} not found`)\n\t\t\t}\n\t\t\tawait context.requireAccess(\n\t\t\t\tAuthorizationActions.PROJECT_HISTORY_ANY,\n\t\t\t\tstage.slug,\n\t\t\t\t'You are not allowed to view a history.',\n\t\t\t)\n\n\t\t\tconst history = await db.queryHandler.fetch(\n\t\t\t\tnew EventsQuery(\n\t\t\t\t\targs?.filter ?? {},\n\t\t\t\t\targs?.order ?? EventsOrder.AppliedAtDesc,\n\t\t\t\t\targs?.offset ?? 0,\n\t\t\t\t\tMath.min(args?.limit ?? 1000, 10000),\n\t\t\t\t),\n\t\t\t)\n\n\t\t\treturn await this.eventResponseBuilder.buildResponse(history)\n\t\t})\n\t}\n}\n"],"names":["StageBySlugQuery","UserInputError","AuthorizationActions","EventsQuery","EventsOrder"],"mappings":";;;;;;;;;;;;;;;AAOO,MAAM,oBAAuD;AAAA,EACnE,YACkB,sBAChB;AADgB,SAAA,uBAAA;AAAA,EAElB;AAAA,EAEA,MAAM,OACL,QACA,EAAE,KAAA,GACF,SACA,MACqC;AACrC,WAAO,QAAQ,GAAG,YAAY,OAAM,OAAM;AACzC,YAAM,YAAY,MAAM,SAAS,QAAQ,QAAQ,OAAO,CAAC,EAAE;AAC3D,YAAM,QAAQ,MAAM,GAAG,aAAa,MAAM,IAAIA,iBAAAA,iBAAiB,SAAS,CAAC;AACzE,UAAI,CAAC,OAAO;AACX,cAAM,IAAIC,aAAAA,eAAe,SAAS,SAAS,YAAY;AAAA,MACxD;AACA,YAAM,QAAQ;AAAA,QACbC,qBAAAA,qBAAqB;AAAA,QACrB,MAAM;AAAA,QACN;AAAA,MAAA;AAGD,YAAM,UAAU,MAAM,GAAG,aAAa;AAAA,QACrC,IAAIC,YAAAA;AAAAA,UACH,MAAM,UAAU,CAAA;AAAA,UAChB,MAAM,SAASC,MAAAA,YAAY;AAAA,UAC3B,MAAM,UAAU;AAAA,UAChB,KAAK,IAAI,MAAM,SAAS,KAAM,GAAK;AAAA,QAAA;AAAA,MACpC;AAGD,aAAO,MAAM,KAAK,qBAAqB,cAAc,OAAO;AAAA,IAC7D,CAAC;AAAA,EACF;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventsQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/EventsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { EventsOrder, QueryEventsArgs, ResolversTypes } from '../../schema'\nimport { AuthorizationActions, EventResponseBuilder, EventsQuery, StageBySlugQuery } from '../../model'\nimport { UserInputError } from '@contember/graphql-utils'\n\nexport class EventsQueryResolver implements QueryResolver<'events'> {\n\tconstructor(\n\t\tprivate readonly eventResponseBuilder: EventResponseBuilder,\n\t) {\n\t}\n\n\tasync events(\n\t\tparent: any,\n\t\t{ args }: QueryEventsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ResolversTypes['Event'][]> {\n\t\treturn context.db.transaction(async db => {\n\t\t\tconst stageSlug = args?.stage ?? context.project.stages[0].slug\n\t\t\tconst stage = await db.queryHandler.fetch(new StageBySlugQuery(stageSlug))\n\t\t\tif (!stage) {\n\t\t\t\tthrow new UserInputError(`Stage ${stageSlug} not found`)\n\t\t\t}\n\t\t\tawait context.requireAccess(\n\t\t\t\tAuthorizationActions.PROJECT_HISTORY_ANY,\n\t\t\t\tstage.slug,\n\t\t\t\t'You are not allowed to view a history.',\n\t\t\t)\n\n\t\t\tconst history = await db.queryHandler.fetch(\n\t\t\t\tnew EventsQuery(\n\t\t\t\t\targs?.filter ?? {},\n\t\t\t\t\targs?.order ?? EventsOrder.AppliedAtDesc,\n\t\t\t\t\targs?.offset ?? 0,\n\t\t\t\t\tMath.min(args?.limit ?? 1000, 10000),\n\t\t\t\t),\n\t\t\t)\n\n\t\t\treturn await this.eventResponseBuilder.buildResponse(history)\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAOO,MAAM,oBAAuD;AAAA,EACnE,YACkB,sBAChB;AADgB,SAAA,uBAAA;AAAA,EAElB;AAAA,EAEA,MAAM,OACL,QACA,EAAE,KAAA,GACF,SACA,MACqC;AACrC,WAAO,QAAQ,GAAG,YAAY,OAAM,OAAM;AACzC,YAAM,YAAY,MAAM,SAAS,QAAQ,QAAQ,OAAO,CAAC,EAAE;AAC3D,YAAM,QAAQ,MAAM,GAAG,aAAa,MAAM,IAAI,iBAAiB,SAAS,CAAC;AACzE,UAAI,CAAC,OAAO;AACX,cAAM,IAAI,eAAe,SAAS,SAAS,YAAY;AAAA,MACxD;AACA,YAAM,QAAQ;AAAA,QACb,qBAAqB;AAAA,QACrB,MAAM;AAAA,QACN;AAAA,MAAA;AAGD,YAAM,UAAU,MAAM,GAAG,aAAa;AAAA,QACrC,IAAI;AAAA,UACH,MAAM,UAAU,CAAA;AAAA,UAChB,MAAM,SAAS,YAAY;AAAA,UAC3B,MAAM,UAAU;AAAA,UAChB,KAAK,IAAI,MAAM,SAAS,KAAM,GAAK;AAAA,QAAA;AAAA,MACpC;AAGD,aAAO,MAAM,KAAK,qBAAqB,cAAc,OAAO;AAAA,IAC7D,CAAC;AAAA,EACF;AACD;"}
|
|
1
|
+
{"version":3,"file":"EventsQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/EventsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { EventsOrder, QueryEventsArgs, ResolversTypes } from '../../schema/index.js'\nimport { AuthorizationActions, EventResponseBuilder, EventsQuery, StageBySlugQuery } from '../../model/index.js'\nimport { UserInputError } from '@contember/graphql-utils'\n\nexport class EventsQueryResolver implements QueryResolver<'events'> {\n\tconstructor(\n\t\tprivate readonly eventResponseBuilder: EventResponseBuilder,\n\t) {\n\t}\n\n\tasync events(\n\t\tparent: any,\n\t\t{ args }: QueryEventsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ResolversTypes['Event'][]> {\n\t\treturn context.db.transaction(async db => {\n\t\t\tconst stageSlug = args?.stage ?? context.project.stages[0].slug\n\t\t\tconst stage = await db.queryHandler.fetch(new StageBySlugQuery(stageSlug))\n\t\t\tif (!stage) {\n\t\t\t\tthrow new UserInputError(`Stage ${stageSlug} not found`)\n\t\t\t}\n\t\t\tawait context.requireAccess(\n\t\t\t\tAuthorizationActions.PROJECT_HISTORY_ANY,\n\t\t\t\tstage.slug,\n\t\t\t\t'You are not allowed to view a history.',\n\t\t\t)\n\n\t\t\tconst history = await db.queryHandler.fetch(\n\t\t\t\tnew EventsQuery(\n\t\t\t\t\targs?.filter ?? {},\n\t\t\t\t\targs?.order ?? EventsOrder.AppliedAtDesc,\n\t\t\t\t\targs?.offset ?? 0,\n\t\t\t\t\tMath.min(args?.limit ?? 1000, 10000),\n\t\t\t\t),\n\t\t\t)\n\n\t\t\treturn await this.eventResponseBuilder.buildResponse(history)\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAOO,MAAM,oBAAuD;AAAA,EACnE,YACkB,sBAChB;AADgB,SAAA,uBAAA;AAAA,EAElB;AAAA,EAEA,MAAM,OACL,QACA,EAAE,KAAA,GACF,SACA,MACqC;AACrC,WAAO,QAAQ,GAAG,YAAY,OAAM,OAAM;AACzC,YAAM,YAAY,MAAM,SAAS,QAAQ,QAAQ,OAAO,CAAC,EAAE;AAC3D,YAAM,QAAQ,MAAM,GAAG,aAAa,MAAM,IAAI,iBAAiB,SAAS,CAAC;AACzE,UAAI,CAAC,OAAO;AACX,cAAM,IAAI,eAAe,SAAS,SAAS,YAAY;AAAA,MACxD;AACA,YAAM,QAAQ;AAAA,QACb,qBAAqB;AAAA,QACrB,MAAM;AAAA,QACN;AAAA,MAAA;AAGD,YAAM,UAAU,MAAM,GAAG,aAAa;AAAA,QACrC,IAAI;AAAA,UACH,MAAM,UAAU,CAAA;AAAA,UAChB,MAAM,SAAS,YAAY;AAAA,UAC3B,MAAM,UAAU;AAAA,UAChB,KAAK,IAAI,MAAM,SAAS,KAAM,GAAK;AAAA,QAAA;AAAA,MACpC;AAGD,aAAO,MAAM,KAAK,qBAAqB,cAAc,OAAO;AAAA,IAC7D,CAAC;AAAA,EACF;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationsQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/ExecutedMigrationsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { ExecutedMigration, QueryExecutedMigrationsArgs } from '../../schema'\nimport { AuthorizationActions, ExecutedMigrationByVersionQuery, ExecutedMigrationsQuery, StagesQuery } from '../../model'\n\nexport class ExecutedMigrationsQueryResolver implements QueryResolver<'executedMigrations'> {\n\tasync executedMigrations(\n\t\tparent: any,\n\t\targs: QueryExecutedMigrationsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ExecutedMigration[]> {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_LIST_MIGRATIONS, stage.slug)\n\t\t}\n\n\t\tif (args.version) {\n\t\t\tconst migration = await context.db.queryHandler.fetch(new ExecutedMigrationByVersionQuery(args.version))\n\t\t\treturn migration ? [migration] : []\n\t\t}\n\t\treturn await context.db.queryHandler.fetch(new ExecutedMigrationsQuery())\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions","ExecutedMigrationByVersionQuery","ExecutedMigrationsQuery"],"mappings":";;;;;;;;;;;;;;AAMO,MAAM,gCAA+E;AAAA,EAC3F,MAAM,mBACL,QACA,MACA,SACA,MAC+B;AAC/B,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAcC,qBAAAA,qBAAqB,yBAAyB,MAAM,IAAI;AAAA,IACrF;AAEA,QAAI,KAAK,SAAS;AACjB,YAAM,YAAY,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIC,gCAAAA,gCAAgC,KAAK,OAAO,CAAC;AACvG,aAAO,YAAY,CAAC,SAAS,IAAI,CAAA;AAAA,IAClC;AACA,WAAO,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIC,wBAAAA,yBAAyB;AAAA,EACzE;AACD;;"}
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationsQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/ExecutedMigrationsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { ExecutedMigration, QueryExecutedMigrationsArgs } from '../../schema/index.js'\nimport { AuthorizationActions, ExecutedMigrationByVersionQuery, ExecutedMigrationsQuery, StagesQuery } from '../../model/index.js'\n\nexport class ExecutedMigrationsQueryResolver implements QueryResolver<'executedMigrations'> {\n\tasync executedMigrations(\n\t\tparent: any,\n\t\targs: QueryExecutedMigrationsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ExecutedMigration[]> {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_LIST_MIGRATIONS, stage.slug)\n\t\t}\n\n\t\tif (args.version) {\n\t\t\tconst migration = await context.db.queryHandler.fetch(new ExecutedMigrationByVersionQuery(args.version))\n\t\t\treturn migration ? [migration] : []\n\t\t}\n\t\treturn await context.db.queryHandler.fetch(new ExecutedMigrationsQuery())\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions","ExecutedMigrationByVersionQuery","ExecutedMigrationsQuery"],"mappings":";;;;;;;;;;;;;;AAMO,MAAM,gCAA+E;AAAA,EAC3F,MAAM,mBACL,QACA,MACA,SACA,MAC+B;AAC/B,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAcC,qBAAAA,qBAAqB,yBAAyB,MAAM,IAAI;AAAA,IACrF;AAEA,QAAI,KAAK,SAAS;AACjB,YAAM,YAAY,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIC,gCAAAA,gCAAgC,KAAK,OAAO,CAAC;AACvG,aAAO,YAAY,CAAC,SAAS,IAAI,CAAA;AAAA,IAClC;AACA,WAAO,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIC,wBAAAA,yBAAyB;AAAA,EACzE;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutedMigrationsQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/ExecutedMigrationsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { ExecutedMigration, QueryExecutedMigrationsArgs } from '../../schema'\nimport { AuthorizationActions, ExecutedMigrationByVersionQuery, ExecutedMigrationsQuery, StagesQuery } from '../../model'\n\nexport class ExecutedMigrationsQueryResolver implements QueryResolver<'executedMigrations'> {\n\tasync executedMigrations(\n\t\tparent: any,\n\t\targs: QueryExecutedMigrationsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ExecutedMigration[]> {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_LIST_MIGRATIONS, stage.slug)\n\t\t}\n\n\t\tif (args.version) {\n\t\t\tconst migration = await context.db.queryHandler.fetch(new ExecutedMigrationByVersionQuery(args.version))\n\t\t\treturn migration ? [migration] : []\n\t\t}\n\t\treturn await context.db.queryHandler.fetch(new ExecutedMigrationsQuery())\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AAMO,MAAM,gCAA+E;AAAA,EAC3F,MAAM,mBACL,QACA,MACA,SACA,MAC+B;AAC/B,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAc,qBAAqB,yBAAyB,MAAM,IAAI;AAAA,IACrF;AAEA,QAAI,KAAK,SAAS;AACjB,YAAM,YAAY,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,gCAAgC,KAAK,OAAO,CAAC;AACvG,aAAO,YAAY,CAAC,SAAS,IAAI,CAAA;AAAA,IAClC;AACA,WAAO,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,yBAAyB;AAAA,EACzE;AACD;"}
|
|
1
|
+
{"version":3,"file":"ExecutedMigrationsQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/ExecutedMigrationsQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { ExecutedMigration, QueryExecutedMigrationsArgs } from '../../schema/index.js'\nimport { AuthorizationActions, ExecutedMigrationByVersionQuery, ExecutedMigrationsQuery, StagesQuery } from '../../model/index.js'\n\nexport class ExecutedMigrationsQueryResolver implements QueryResolver<'executedMigrations'> {\n\tasync executedMigrations(\n\t\tparent: any,\n\t\targs: QueryExecutedMigrationsArgs,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t): Promise<ExecutedMigration[]> {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_LIST_MIGRATIONS, stage.slug)\n\t\t}\n\n\t\tif (args.version) {\n\t\t\tconst migration = await context.db.queryHandler.fetch(new ExecutedMigrationByVersionQuery(args.version))\n\t\t\treturn migration ? [migration] : []\n\t\t}\n\t\treturn await context.db.queryHandler.fetch(new ExecutedMigrationsQuery())\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AAMO,MAAM,gCAA+E;AAAA,EAC3F,MAAM,mBACL,QACA,MACA,SACA,MAC+B;AAC/B,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAc,qBAAqB,yBAAyB,MAAM,IAAI;AAAA,IACrF;AAEA,QAAI,KAAK,SAAS;AACjB,YAAM,YAAY,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,gCAAgC,KAAK,OAAO,CAAC;AACvG,aAAO,YAAY,CAAC,SAAS,IAAI,CAAA;AAAA,IAClC;AACA,WAAO,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,yBAAyB;AAAA,EACzE;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/SchemaQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { AuthorizationActions, StagesQuery } from '../../model'\n\nexport class SchemaQueryResolver implements QueryResolver<'schema'> {\n\tasync schema(\n\t\tparent: any,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t) {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_SHOW_SCHEMA, stage.slug)\n\t\t}\n\t\treturn context.getSchema()\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions"],"mappings":";;;;;;;;;;;;AAKO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OACL,QACA,MACA,SACA,MACC;AACD,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAcC,qBAAAA,qBAAqB,qBAAqB,MAAM,IAAI;AAAA,IACjF;AACA,WAAO,QAAQ,UAAA;AAAA,EAChB;AACD;;"}
|
|
1
|
+
{"version":3,"file":"SchemaQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/SchemaQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { AuthorizationActions, StagesQuery } from '../../model/index.js'\n\nexport class SchemaQueryResolver implements QueryResolver<'schema'> {\n\tasync schema(\n\t\tparent: any,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t) {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_SHOW_SCHEMA, stage.slug)\n\t\t}\n\t\treturn context.getSchema()\n\t}\n}\n"],"names":["StagesQuery","AuthorizationActions"],"mappings":";;;;;;;;;;;;AAKO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OACL,QACA,MACA,SACA,MACC;AACD,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAcC,qBAAAA,qBAAqB,qBAAqB,MAAM,IAAI;AAAA,IACjF;AACA,WAAO,QAAQ,UAAA;AAAA,EAChB;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/SchemaQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { AuthorizationActions, StagesQuery } from '../../model'\n\nexport class SchemaQueryResolver implements QueryResolver<'schema'> {\n\tasync schema(\n\t\tparent: any,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t) {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_SHOW_SCHEMA, stage.slug)\n\t\t}\n\t\treturn context.getSchema()\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;AAKO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OACL,QACA,MACA,SACA,MACC;AACD,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAc,qBAAqB,qBAAqB,MAAM,IAAI;AAAA,IACjF;AACA,WAAO,QAAQ,UAAA;AAAA,EAChB;AACD;"}
|
|
1
|
+
{"version":3,"file":"SchemaQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/SchemaQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { AuthorizationActions, StagesQuery } from '../../model/index.js'\n\nexport class SchemaQueryResolver implements QueryResolver<'schema'> {\n\tasync schema(\n\t\tparent: any,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t\tinfo: GraphQLResolveInfo,\n\t) {\n\t\tconst stages = await context.db.queryHandler.fetch(new StagesQuery())\n\t\tfor (const stage of stages) {\n\t\t\tawait context.requireAccess(AuthorizationActions.PROJECT_SHOW_SCHEMA, stage.slug)\n\t\t}\n\t\treturn context.getSchema()\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;AAKO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OACL,QACA,MACA,SACA,MACC;AACD,UAAM,SAAS,MAAM,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AACpE,eAAW,SAAS,QAAQ;AAC3B,YAAM,QAAQ,cAAc,qBAAqB,qBAAqB,MAAM,IAAI;AAAA,IACjF;AACA,WAAO,QAAQ,UAAA;AAAA,EAChB;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagesQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/StagesQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { Stage } from '../../schema'\nimport { StagesQuery } from '../../model'\n\nexport class StagesQueryResolver implements QueryResolver<'stages'> {\n\tasync stages(parent: any, args: any, context: SystemResolverContext, info: GraphQLResolveInfo): Promise<Stage[]> {\n\t\treturn context.db.queryHandler.fetch(new StagesQuery())\n\t}\n}\n"],"names":["StagesQuery"],"mappings":";;;;;;;;;;;;AAMO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OAAO,QAAa,MAAW,SAAgC,MAA4C;AAChH,WAAO,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AAAA,EACvD;AACD;;"}
|
|
1
|
+
{"version":3,"file":"StagesQueryResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/StagesQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { Stage } from '../../schema/index.js'\nimport { StagesQuery } from '../../model/index.js'\n\nexport class StagesQueryResolver implements QueryResolver<'stages'> {\n\tasync stages(parent: any, args: any, context: SystemResolverContext, info: GraphQLResolveInfo): Promise<Stage[]> {\n\t\treturn context.db.queryHandler.fetch(new StagesQuery())\n\t}\n}\n"],"names":["StagesQuery"],"mappings":";;;;;;;;;;;;AAMO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OAAO,QAAa,MAAW,SAAgC,MAA4C;AAChH,WAAO,QAAQ,GAAG,aAAa,MAAM,IAAIA,YAAAA,aAAa;AAAA,EACvD;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StagesQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/StagesQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { QueryResolver } from '../Resolver'\nimport { Stage } from '../../schema'\nimport { StagesQuery } from '../../model'\n\nexport class StagesQueryResolver implements QueryResolver<'stages'> {\n\tasync stages(parent: any, args: any, context: SystemResolverContext, info: GraphQLResolveInfo): Promise<Stage[]> {\n\t\treturn context.db.queryHandler.fetch(new StagesQuery())\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;AAMO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OAAO,QAAa,MAAW,SAAgC,MAA4C;AAChH,WAAO,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AAAA,EACvD;AACD;"}
|
|
1
|
+
{"version":3,"file":"StagesQueryResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/query/StagesQueryResolver.ts"],"sourcesContent":["import { GraphQLResolveInfo } from 'graphql'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { QueryResolver } from '../Resolver.js'\nimport { Stage } from '../../schema/index.js'\nimport { StagesQuery } from '../../model/index.js'\n\nexport class StagesQueryResolver implements QueryResolver<'stages'> {\n\tasync stages(parent: any, args: any, context: SystemResolverContext, info: GraphQLResolveInfo): Promise<Stage[]> {\n\t\treturn context.db.queryHandler.fetch(new StagesQuery())\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;;;AAMO,MAAM,oBAAuD;AAAA,EACnE,MAAM,OAAO,QAAa,MAAW,SAAgC,MAA4C;AAChH,WAAO,QAAQ,GAAG,aAAa,MAAM,IAAI,aAAa;AAAA,EACvD;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventOldValuesResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/EventOldValuesResolver.ts"],"sourcesContent":["import { DeleteEvent, DeleteEventResolvers, UpdateEvent, UpdateEventResolvers } from '../../schema'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { oldValuesLoaderFactory } from './OldValuesHelpers'\n\nexport class EventOldValuesResolver implements UpdateEventResolvers<SystemResolverContext>, DeleteEventResolvers<SystemResolverContext> {\n\tasync oldValues(\n\t\tparent: UpdateEvent | DeleteEvent,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t): Promise<object> {\n\t\treturn await context.getLoader(oldValuesLoaderFactory)(parent.id)\n\t}\n}\n"],"names":["oldValuesLoaderFactory"],"mappings":";;;AAIO,MAAM,uBAA2H;AAAA,EACvI,MAAM,UACL,QACA,MACA,SACkB;AAClB,WAAO,MAAM,QAAQ,UAAUA,iBAAAA,sBAAsB,EAAE,OAAO,EAAE;AAAA,EACjE;AACD;;"}
|
|
1
|
+
{"version":3,"file":"EventOldValuesResolver.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/EventOldValuesResolver.ts"],"sourcesContent":["import { DeleteEvent, DeleteEventResolvers, UpdateEvent, UpdateEventResolvers } from '../../schema/index.js'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { oldValuesLoaderFactory } from './OldValuesHelpers.js'\n\nexport class EventOldValuesResolver implements UpdateEventResolvers<SystemResolverContext>, DeleteEventResolvers<SystemResolverContext> {\n\tasync oldValues(\n\t\tparent: UpdateEvent | DeleteEvent,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t): Promise<object> {\n\t\treturn await context.getLoader(oldValuesLoaderFactory)(parent.id)\n\t}\n}\n"],"names":["oldValuesLoaderFactory"],"mappings":";;;AAIO,MAAM,uBAA2H;AAAA,EACvI,MAAM,UACL,QACA,MACA,SACkB;AAClB,WAAO,MAAM,QAAQ,UAAUA,iBAAAA,sBAAsB,EAAE,OAAO,EAAE;AAAA,EACjE;AACD;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventOldValuesResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/EventOldValuesResolver.ts"],"sourcesContent":["import { DeleteEvent, DeleteEventResolvers, UpdateEvent, UpdateEventResolvers } from '../../schema'\nimport { SystemResolverContext } from '../SystemResolverContext'\nimport { oldValuesLoaderFactory } from './OldValuesHelpers'\n\nexport class EventOldValuesResolver implements UpdateEventResolvers<SystemResolverContext>, DeleteEventResolvers<SystemResolverContext> {\n\tasync oldValues(\n\t\tparent: UpdateEvent | DeleteEvent,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t): Promise<object> {\n\t\treturn await context.getLoader(oldValuesLoaderFactory)(parent.id)\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,uBAA2H;AAAA,EACvI,MAAM,UACL,QACA,MACA,SACkB;AAClB,WAAO,MAAM,QAAQ,UAAU,sBAAsB,EAAE,OAAO,EAAE;AAAA,EACjE;AACD;"}
|
|
1
|
+
{"version":3,"file":"EventOldValuesResolver.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/EventOldValuesResolver.ts"],"sourcesContent":["import { DeleteEvent, DeleteEventResolvers, UpdateEvent, UpdateEventResolvers } from '../../schema/index.js'\nimport { SystemResolverContext } from '../SystemResolverContext.js'\nimport { oldValuesLoaderFactory } from './OldValuesHelpers.js'\n\nexport class EventOldValuesResolver implements UpdateEventResolvers<SystemResolverContext>, DeleteEventResolvers<SystemResolverContext> {\n\tasync oldValues(\n\t\tparent: UpdateEvent | DeleteEvent,\n\t\targs: unknown,\n\t\tcontext: SystemResolverContext,\n\t): Promise<object> {\n\t\treturn await context.getLoader(oldValuesLoaderFactory)(parent.id)\n\t}\n}\n"],"names":[],"mappings":";AAIO,MAAM,uBAA2H;AAAA,EACvI,MAAM,UACL,QACA,MACA,SACkB;AAClB,WAAO,MAAM,QAAQ,UAAU,sBAAsB,EAAE,OAAO,EAAE;AAAA,EACjE;AACD;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OldValuesHelpers.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/OldValuesHelpers.ts"],"sourcesContent":["import { DatabaseContext } from '../../model'\nimport { createBatchLoader } from '../../utils/batchQuery'\nimport { OldValuesQuery } from '../../model'\n\nexport const oldValuesLoaderFactory = (db: DatabaseContext) =>\n\tcreateBatchLoader<string, Record<string, object>, object>(\n\t\tasync ids => {\n\t\t\treturn db.queryHandler.fetch(new OldValuesQuery(ids))\n\t\t},\n\t\t(id, items) => items[id] ?? {},\n\t)\n"],"names":["createBatchLoader","OldValuesQuery"],"mappings":";;;;;;;;;;;;;AAIO,MAAM,yBAAyB,CAAC,OACtCA,WAAAA;AAAAA,EACC,OAAM,QAAO;AACZ,WAAO,GAAG,aAAa,MAAM,IAAIC,eAAAA,eAAe,GAAG,CAAC;AAAA,EACrD;AAAA,EACA,CAAC,IAAI,UAAU,MAAM,EAAE,KAAK,CAAA;AAC7B;;"}
|
|
1
|
+
{"version":3,"file":"OldValuesHelpers.cjs","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/OldValuesHelpers.ts"],"sourcesContent":["import { DatabaseContext } from '../../model/index.js'\nimport { createBatchLoader } from '../../utils/batchQuery.js'\nimport { OldValuesQuery } from '../../model/index.js'\n\nexport const oldValuesLoaderFactory = (db: DatabaseContext) =>\n\tcreateBatchLoader<string, Record<string, object>, object>(\n\t\tasync ids => {\n\t\t\treturn db.queryHandler.fetch(new OldValuesQuery(ids))\n\t\t},\n\t\t(id, items) => items[id] ?? {},\n\t)\n"],"names":["createBatchLoader","OldValuesQuery"],"mappings":";;;;;;;;;;;;;AAIO,MAAM,yBAAyB,CAAC,OACtCA,WAAAA;AAAAA,EACC,OAAM,QAAO;AACZ,WAAO,GAAG,aAAa,MAAM,IAAIC,eAAAA,eAAe,GAAG,CAAC;AAAA,EACrD;AAAA,EACA,CAAC,IAAI,UAAU,MAAM,EAAE,KAAK,CAAA;AAC7B;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OldValuesHelpers.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/OldValuesHelpers.ts"],"sourcesContent":["import { DatabaseContext } from '../../model'\nimport { createBatchLoader } from '../../utils/batchQuery'\nimport { OldValuesQuery } from '../../model'\n\nexport const oldValuesLoaderFactory = (db: DatabaseContext) =>\n\tcreateBatchLoader<string, Record<string, object>, object>(\n\t\tasync ids => {\n\t\t\treturn db.queryHandler.fetch(new OldValuesQuery(ids))\n\t\t},\n\t\t(id, items) => items[id] ?? {},\n\t)\n"],"names":[],"mappings":";;;;;;;;;;;AAIO,MAAM,yBAAyB,CAAC,OACtC;AAAA,EACC,OAAM,QAAO;AACZ,WAAO,GAAG,aAAa,MAAM,IAAI,eAAe,GAAG,CAAC;AAAA,EACrD;AAAA,EACA,CAAC,IAAI,UAAU,MAAM,EAAE,KAAK,CAAA;AAC7B;"}
|
|
1
|
+
{"version":3,"file":"OldValuesHelpers.js","sources":["../../../../../../packages/engine-system-api/src/resolvers/types/OldValuesHelpers.ts"],"sourcesContent":["import { DatabaseContext } from '../../model/index.js'\nimport { createBatchLoader } from '../../utils/batchQuery.js'\nimport { OldValuesQuery } from '../../model/index.js'\n\nexport const oldValuesLoaderFactory = (db: DatabaseContext) =>\n\tcreateBatchLoader<string, Record<string, object>, object>(\n\t\tasync ids => {\n\t\t\treturn db.queryHandler.fetch(new OldValuesQuery(ids))\n\t\t},\n\t\t(id, items) => items[id] ?? {},\n\t)\n"],"names":[],"mappings":";;;;;;;;;;;AAIO,MAAM,yBAAyB,CAAC,OACtC;AAAA,EACC,OAAM,QAAO;AACZ,WAAO,GAAG,aAAa,MAAM,IAAI,eAAe,GAAG,CAAC;AAAA,EACrD;AAAA,EACA,CAAC,IAAI,UAAU,MAAM,EAAE,KAAK,CAAA;AAC7B;"}
|
|
@@ -7,7 +7,7 @@ const schema = graphqlTag.gql`
|
|
|
7
7
|
|
|
8
8
|
type Mutation {
|
|
9
9
|
truncate: TruncateResponse!
|
|
10
|
-
forceMigrate(migrations: [Migration!]
|
|
10
|
+
forceMigrate(migrations: [Migration!]!, schemaState: SchemaStateInput): MigrateResponse!
|
|
11
11
|
migrationModify(migration: String!, modification: MigrationModification!): MigrationModifyResponse!
|
|
12
12
|
migrationDelete(migration: String!): MigrationDeleteResponse!
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.graphql.cjs","sources":["../../../../../packages/engine-system-api/src/schema/dev.graphql.ts"],"sourcesContent":["import { gql } from 'graphql-tag'\nimport { DocumentNode } from 'graphql'\n\nconst schema: DocumentNode = gql`\n\tschema {\n\t\tmutation: Mutation\n\t}\n\n\ttype Mutation {\n\t\ttruncate: TruncateResponse!\n\t\tforceMigrate(migrations: [Migration!]
|
|
1
|
+
{"version":3,"file":"dev.graphql.cjs","sources":["../../../../../packages/engine-system-api/src/schema/dev.graphql.ts"],"sourcesContent":["import { gql } from 'graphql-tag'\nimport { DocumentNode } from 'graphql'\n\nconst schema: DocumentNode = gql`\n\tschema {\n\t\tmutation: Mutation\n\t}\n\n\ttype Mutation {\n\t\ttruncate: TruncateResponse!\n\t\tforceMigrate(migrations: [Migration!]!, schemaState: SchemaStateInput): MigrateResponse!\n\t\tmigrationModify(migration: String!, modification: MigrationModification!): MigrationModifyResponse!\n\t\tmigrationDelete(migration: String!): MigrationDeleteResponse!\n\t}\n\n\ttype TruncateResponse {\n\t\tok: Boolean!\n\t}\n\n\tinput MigrationModification {\n\t\tversion: String\n\t\tname: String\n\t\tformatVersion: Int\n\t\tmodifications: [Json!]\n\t}\n\n\tenum MigrationModifyErrorCode {\n\t\tNOT_FOUND\n\t}\n\n\ttype MigrationModifyError {\n\t\tcode: MigrationModifyErrorCode!\n\t\tdeveloperMessage: String!\n\t}\n\n\ttype MigrationModifyResponse {\n\t\tok: Boolean!\n\t\terror: MigrationModifyError\n\t}\n\n\tenum MigrationDeleteErrorCode {\n\t\tNOT_FOUND\n\t\tINVALID_FORMAT\n\t}\n\n\ttype MigrationDeleteError {\n\t\tcode: MigrationDeleteErrorCode!\n\t\tdeveloperMessage: String!\n\t}\n\n\ttype MigrationDeleteResponse {\n\t\tok: Boolean!\n\t\terror: MigrationDeleteError\n\t}\n`\n\nexport default schema\n"],"names":["gql"],"mappings":";;AAGA,MAAM,SAAuBA,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;;"}
|
|
@@ -6,7 +6,7 @@ const schema = gql`
|
|
|
6
6
|
|
|
7
7
|
type Mutation {
|
|
8
8
|
truncate: TruncateResponse!
|
|
9
|
-
forceMigrate(migrations: [Migration!]
|
|
9
|
+
forceMigrate(migrations: [Migration!]!, schemaState: SchemaStateInput): MigrateResponse!
|
|
10
10
|
migrationModify(migration: String!, modification: MigrationModification!): MigrationModifyResponse!
|
|
11
11
|
migrationDelete(migration: String!): MigrationDeleteResponse!
|
|
12
12
|
}
|