@contember/engine-system-api 1.1.0-alpha.0 → 1.1.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/SystemContainer.d.ts +16 -21
- package/dist/src/SystemContainer.d.ts.map +1 -1
- package/dist/src/SystemContainer.js +14 -9
- package/dist/src/SystemContainer.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/migrations/2020-03-27-130000-project-migrations.d.ts +4 -0
- package/dist/src/migrations/2020-03-27-130000-project-migrations.d.ts.map +1 -0
- package/{migrations → dist/src/migrations}/2020-03-27-130000-project-migrations.js +2 -2
- package/dist/src/migrations/2020-03-27-130000-project-migrations.js.map +1 -0
- package/dist/src/migrations/2020-05-06-150000-composed-primary.d.ts +4 -0
- package/dist/src/migrations/2020-05-06-150000-composed-primary.d.ts.map +1 -0
- package/{migrations → dist/src/migrations}/2020-05-06-150000-composed-primary.js +13 -13
- package/dist/src/migrations/2020-05-06-150000-composed-primary.js.map +1 -0
- package/dist/src/migrations/2020-06-01-103000-event-trigger-perf.d.ts +4 -0
- package/dist/src/migrations/2020-06-01-103000-event-trigger-perf.d.ts.map +1 -0
- package/{migrations → dist/src/migrations}/2020-06-01-103000-event-trigger-perf.js +9 -8
- package/dist/src/migrations/2020-06-01-103000-event-trigger-perf.js.map +1 -0
- package/dist/src/migrations/2021-05-07-155800-event-log-rework.d.ts +4 -0
- package/dist/src/migrations/2021-05-07-155800-event-log-rework.d.ts.map +1 -0
- package/{migrations → dist/src/migrations}/2021-05-07-155800-event-log-rework.js +34 -33
- package/dist/src/migrations/2021-05-07-155800-event-log-rework.js.map +1 -0
- package/dist/src/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts +4 -0
- package/dist/src/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts.map +1 -0
- package/{migrations → dist/src/migrations}/2021-05-19-1232000-event-log-fix-constraint.js +4 -3
- package/dist/src/migrations/2021-05-19-1232000-event-log-fix-constraint.js.map +1 -0
- package/dist/src/migrations/index.d.ts +3 -0
- package/dist/src/migrations/index.d.ts.map +1 -0
- package/dist/src/{model/dependencies/content → migrations}/index.js +2 -1
- package/dist/src/migrations/index.js.map +1 -0
- package/dist/src/migrations/runner.d.ts +3 -0
- package/dist/src/migrations/runner.d.ts.map +1 -0
- package/{migrations/index.js → dist/src/migrations/runner.js} +5 -3
- package/dist/src/migrations/runner.js.map +1 -0
- package/dist/src/migrations/types.d.ts +7 -0
- package/dist/src/migrations/types.d.ts.map +1 -0
- package/dist/src/{migrations.js → migrations/types.js} +1 -1
- package/dist/src/migrations/types.js.map +1 -0
- package/dist/src/model/ProjectInitializer.d.ts.map +1 -1
- package/dist/src/model/ProjectInitializer.js +11 -13
- package/dist/src/model/ProjectInitializer.js.map +1 -1
- package/dist/src/model/ProjectTruncateExecutor.d.ts.map +1 -1
- package/dist/src/model/ProjectTruncateExecutor.js +4 -3
- package/dist/src/model/ProjectTruncateExecutor.js.map +1 -1
- package/dist/src/model/commands/stages/CreateStageCommand.d.ts +8 -0
- package/dist/src/model/commands/stages/CreateStageCommand.d.ts.map +1 -0
- package/dist/src/model/commands/stages/{CreateOrUpdateStageCommand.js → CreateStageCommand.js} +9 -10
- package/dist/src/model/commands/stages/CreateStageCommand.js.map +1 -0
- package/dist/src/model/commands/stages/index.d.ts +1 -1
- package/dist/src/model/commands/stages/index.d.ts.map +1 -1
- package/dist/src/model/commands/stages/index.js +1 -1
- package/dist/src/model/commands/stages/index.js.map +1 -1
- package/dist/src/model/database/DatabaseContext.d.ts +1 -1
- package/dist/src/model/database/DatabaseContext.d.ts.map +1 -1
- package/dist/src/model/database/DatabaseContext.js +4 -8
- package/dist/src/model/database/DatabaseContext.js.map +1 -1
- package/dist/src/model/dependencies/index.d.ts +0 -1
- package/dist/src/model/dependencies/index.d.ts.map +1 -1
- package/dist/src/model/dependencies/index.js +0 -1
- package/dist/src/model/dependencies/index.js.map +1 -1
- package/dist/src/model/dependencies/tenant/IdentityFetcher.d.ts +1 -2
- package/dist/src/model/dependencies/tenant/IdentityFetcher.d.ts.map +1 -1
- package/dist/src/model/dtos/Stage.d.ts +2 -4
- package/dist/src/model/dtos/Stage.d.ts.map +1 -1
- package/dist/src/model/events/EventResponseBuilder.d.ts +1 -2
- package/dist/src/model/events/EventResponseBuilder.d.ts.map +1 -1
- package/dist/src/model/events/EventResponseBuilder.js +2 -2
- package/dist/src/model/events/EventResponseBuilder.js.map +1 -1
- package/dist/src/model/migrations/ProjectMigrator.d.ts +2 -2
- package/dist/src/model/migrations/ProjectMigrator.d.ts.map +1 -1
- package/dist/src/model/migrations/ProjectMigrator.js +6 -7
- package/dist/src/model/migrations/ProjectMigrator.js.map +1 -1
- package/dist/src/model/migrations/index.d.ts +0 -1
- package/dist/src/model/migrations/index.d.ts.map +1 -1
- package/dist/src/model/migrations/index.js +0 -1
- package/dist/src/model/migrations/index.js.map +1 -1
- package/dist/src/model/queries/stages/StageBySlugQuery.d.ts +2 -2
- package/dist/src/model/queries/stages/StageBySlugQuery.d.ts.map +1 -1
- package/dist/src/model/queries/stages/StageBySlugQuery.js.map +1 -1
- package/dist/src/model/queries/stages/StageQueryFactory.d.ts +2 -2
- package/dist/src/model/queries/stages/StageQueryFactory.d.ts.map +1 -1
- package/dist/src/model/queries/stages/StageQueryFactory.js +2 -1
- package/dist/src/model/queries/stages/StageQueryFactory.js.map +1 -1
- package/dist/src/model/queries/stages/StagesQuery.d.ts +1 -1
- package/dist/src/model/queries/stages/StagesQuery.d.ts.map +1 -1
- package/dist/src/model/queries/stages/StagesQuery.js +2 -5
- package/dist/src/model/queries/stages/StagesQuery.js.map +1 -1
- package/dist/src/model/stages/StageCreator.d.ts.map +1 -1
- package/dist/src/model/stages/StageCreator.js +3 -2
- package/dist/src/model/stages/StageCreator.js.map +1 -1
- package/dist/src/resolvers/{ResolverContext.d.ts → SystemResolverContext.d.ts} +5 -8
- package/dist/src/resolvers/SystemResolverContext.d.ts.map +1 -0
- package/dist/src/resolvers/{ResolverContext.js → SystemResolverContext.js} +5 -6
- package/dist/src/resolvers/{ResolverContext.js.map → SystemResolverContext.js.map} +1 -1
- package/dist/src/resolvers/index.d.ts +1 -1
- package/dist/src/resolvers/index.d.ts.map +1 -1
- package/dist/src/resolvers/index.js +1 -1
- package/dist/src/resolvers/index.js.map +1 -1
- package/dist/src/resolvers/mutation/MigrateMutationResolver.d.ts +3 -3
- package/dist/src/resolvers/mutation/MigrateMutationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/mutation/MigrateMutationResolver.js +5 -4
- package/dist/src/resolvers/mutation/MigrateMutationResolver.js.map +1 -1
- package/dist/src/resolvers/mutation/MigrationAlterMutationResolver.d.ts +3 -3
- package/dist/src/resolvers/mutation/MigrationAlterMutationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/mutation/MigrationAlterMutationResolver.js.map +1 -1
- package/dist/src/resolvers/mutation/TruncateMutationResolver.d.ts +2 -2
- package/dist/src/resolvers/mutation/TruncateMutationResolver.d.ts.map +1 -1
- package/dist/src/resolvers/mutation/TruncateMutationResolver.js.map +1 -1
- package/dist/src/resolvers/query/EventsQueryResolver.d.ts +2 -2
- package/dist/src/resolvers/query/EventsQueryResolver.d.ts.map +1 -1
- package/dist/src/resolvers/query/EventsQueryResolver.js +1 -1
- package/dist/src/resolvers/query/EventsQueryResolver.js.map +1 -1
- package/dist/src/resolvers/query/ExecutedMigrationsQueryResolver.d.ts +2 -2
- package/dist/src/resolvers/query/ExecutedMigrationsQueryResolver.d.ts.map +1 -1
- package/dist/src/resolvers/query/ExecutedMigrationsQueryResolver.js.map +1 -1
- package/dist/src/resolvers/query/StagesQueryResolver.d.ts +2 -2
- package/dist/src/resolvers/query/StagesQueryResolver.d.ts.map +1 -1
- package/dist/src/resolvers/query/StagesQueryResolver.js.map +1 -1
- package/dist/src/resolvers/types/EventOldValuesResolver.d.ts +3 -3
- package/dist/src/resolvers/types/EventOldValuesResolver.d.ts.map +1 -1
- package/dist/src/resolvers/types/EventOldValuesResolver.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/src/types.d.ts +1 -0
- package/dist/src/types.d.ts.map +1 -1
- package/{migrations → dist/tests/cases/migrations}/2020-05-06-150000-composed-primary.test.d.ts +0 -0
- package/dist/tests/cases/migrations/2020-05-06-150000-composed-primary.test.d.ts.map +1 -0
- package/{migrations → dist/tests/cases/migrations}/2020-05-06-150000-composed-primary.test.js +12 -12
- package/dist/tests/cases/migrations/2020-05-06-150000-composed-primary.test.js.map +1 -0
- package/{migrations → dist/tests/cases/migrations}/2020-06-01-103000-event-trigger-perf.test.d.ts +0 -0
- package/dist/tests/cases/migrations/2020-06-01-103000-event-trigger-perf.test.d.ts.map +1 -0
- package/{migrations → dist/tests/cases/migrations}/2020-06-01-103000-event-trigger-perf.test.js +7 -7
- package/dist/tests/cases/migrations/2020-06-01-103000-event-trigger-perf.test.js.map +1 -0
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +15 -15
- package/src/SystemContainer.ts +21 -27
- package/src/index.ts +1 -0
- package/{migrations → src/migrations}/2018-08-04-102200-init.sql +9 -9
- package/{migrations → src/migrations}/2018-08-05-130501-trigger-event-function.sql +9 -9
- package/{migrations → src/migrations}/2019-01-14-143432-event-trx-id.sql +4 -4
- package/{migrations → src/migrations}/2019-02-04-154500-event-rebase.sql +6 -6
- package/{migrations → src/migrations}/2019-03-18-104147-event-run-migration-struct.sql +1 -1
- package/{migrations → src/migrations}/2019-07-29-103000-trigger-event-function-fix.sql +6 -6
- package/{migrations → src/migrations}/2019-11-28-100000-missing-setting-fallback.sql +2 -2
- package/{migrations → src/migrations}/2020-03-27-130000-project-migrations.ts +3 -4
- package/{migrations → src/migrations}/2020-05-06-150000-composed-primary.ts +13 -13
- package/{migrations → src/migrations}/2020-06-01-103000-event-trigger-perf.ts +9 -8
- package/{migrations → src/migrations}/2021-03-23-110000-timestamp-fix.sql +2 -2
- package/{migrations → src/migrations}/2021-05-07-155800-event-log-rework.ts +34 -33
- package/{migrations → src/migrations}/2021-05-19-1232000-event-log-fix-constraint.ts +4 -3
- package/src/migrations/2021-12-21-155500-events-up.sql +6 -0
- package/src/migrations/2022-02-08-132600-fn-search-path.sql +7 -0
- package/src/migrations/2022-02-08-140500-drop-deadcode.sql +2 -0
- package/src/migrations/2022-02-08-144400-dynamic-stage-schema.sql +41 -0
- package/src/migrations/index.ts +2 -0
- package/{migrations/index.ts → src/migrations/runner.ts} +2 -2
- package/src/migrations/types.ts +7 -0
- package/src/model/ProjectInitializer.ts +13 -14
- package/src/model/ProjectTruncateExecutor.ts +5 -4
- package/src/model/commands/stages/{CreateOrUpdateStageCommand.ts → CreateStageCommand.ts} +8 -11
- package/src/model/commands/stages/index.ts +1 -1
- package/src/model/database/DatabaseContext.ts +3 -8
- package/src/model/dependencies/index.ts +0 -1
- package/src/model/dependencies/tenant/IdentityFetcher.ts +1 -1
- package/src/model/dtos/Stage.ts +2 -5
- package/src/model/events/EventResponseBuilder.ts +2 -3
- package/src/model/migrations/ProjectMigrator.ts +10 -9
- package/src/model/migrations/index.ts +0 -1
- package/src/model/queries/stages/StageBySlugQuery.ts +2 -2
- package/src/model/queries/stages/StageQueryFactory.ts +3 -2
- package/src/model/queries/stages/StagesQuery.ts +4 -7
- package/src/model/stages/StageCreator.ts +4 -3
- package/src/resolvers/{ResolverContext.ts → SystemResolverContext.ts} +4 -9
- package/src/resolvers/index.ts +1 -1
- package/src/resolvers/mutation/MigrateMutationResolver.ts +9 -8
- package/src/resolvers/mutation/MigrationAlterMutationResolver.ts +3 -3
- package/src/resolvers/mutation/TruncateMutationResolver.ts +2 -2
- package/src/resolvers/query/EventsQueryResolver.ts +3 -3
- package/src/resolvers/query/ExecutedMigrationsQueryResolver.ts +2 -2
- package/src/resolvers/query/StagesQueryResolver.ts +2 -2
- package/src/resolvers/types/EventOldValuesResolver.ts +3 -3
- package/src/types.ts +1 -0
- package/{migrations → tests/cases/migrations}/2020-05-06-150000-composed-primary.test.ts +11 -12
- package/{migrations → tests/cases/migrations}/2020-06-01-103000-event-trigger-perf.test.ts +6 -7
- package/tests/tsconfig.json +0 -3
- package/tsconfig.json +0 -3
- package/dist/src/migrations.d.ts +0 -10
- package/dist/src/migrations.d.ts.map +0 -1
- package/dist/src/migrations.js.map +0 -1
- package/dist/src/model/commands/stages/CreateOrUpdateStageCommand.d.ts +0 -8
- package/dist/src/model/commands/stages/CreateOrUpdateStageCommand.d.ts.map +0 -1
- package/dist/src/model/commands/stages/CreateOrUpdateStageCommand.js.map +0 -1
- package/dist/src/model/dependencies/content/EntitiesSelector.d.ts +0 -28
- package/dist/src/model/dependencies/content/EntitiesSelector.d.ts.map +0 -1
- package/dist/src/model/dependencies/content/EntitiesSelector.js +0 -3
- package/dist/src/model/dependencies/content/EntitiesSelector.js.map +0 -1
- package/dist/src/model/dependencies/content/index.d.ts +0 -2
- package/dist/src/model/dependencies/content/index.d.ts.map +0 -1
- package/dist/src/model/dependencies/content/index.js.map +0 -1
- package/dist/src/model/migrations/MigrationExecutor.d.ts +0 -10
- package/dist/src/model/migrations/MigrationExecutor.d.ts.map +0 -1
- package/dist/src/model/migrations/MigrationExecutor.js +0 -25
- package/dist/src/model/migrations/MigrationExecutor.js.map +0 -1
- package/dist/src/resolvers/ResolverContext.d.ts.map +0 -1
- package/migrations/2020-03-27-130000-project-migrations.d.ts +0 -4
- package/migrations/2020-03-27-130000-project-migrations.d.ts.map +0 -1
- package/migrations/2020-05-06-150000-composed-primary.d.ts +0 -4
- package/migrations/2020-05-06-150000-composed-primary.d.ts.map +0 -1
- package/migrations/2020-05-06-150000-composed-primary.test.d.ts.map +0 -1
- package/migrations/2020-06-01-103000-event-trigger-perf.d.ts +0 -4
- package/migrations/2020-06-01-103000-event-trigger-perf.d.ts.map +0 -1
- package/migrations/2020-06-01-103000-event-trigger-perf.test.d.ts.map +0 -1
- package/migrations/2021-05-07-155800-event-log-rework.d.ts +0 -4
- package/migrations/2021-05-07-155800-event-log-rework.d.ts.map +0 -1
- package/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts +0 -4
- package/migrations/2021-05-19-1232000-event-log-fix-constraint.d.ts.map +0 -1
- package/migrations/2021-12-21-155500-events-up.sql +0 -6
- package/migrations/index.d.ts +0 -3
- package/migrations/index.d.ts.map +0 -1
- package/migrations/tsconfig.json +0 -15
- package/migrations/tsconfig.tsbuildinfo +0 -1
- package/src/migrations.ts +0 -10
- package/src/model/dependencies/content/EntitiesSelector.ts +0 -32
- package/src/model/dependencies/content/index.ts +0 -1
- package/src/model/migrations/MigrationExecutor.ts +0 -33
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const model_1 = require("../model");
|
|
4
4
|
const recreateTrigger = (builder, tableName) => {
|
|
5
5
|
builder.dropTrigger(tableName, 'log_event_trx', { ifExists: true });
|
|
6
6
|
builder.dropTrigger(tableName, 'log_event_statement', { ifExists: true });
|
|
@@ -19,8 +19,8 @@ const recreateTrigger = (builder, tableName) => {
|
|
|
19
19
|
};
|
|
20
20
|
async function default_1(builder, args) {
|
|
21
21
|
const schema = await args.schemaResolver();
|
|
22
|
-
const junctionTables = (0,
|
|
23
|
-
const schemas = args.project.stages.map(
|
|
22
|
+
const junctionTables = (0, model_1.getJunctionTables)(schema.model);
|
|
23
|
+
const schemas = args.project.stages.map(it => `stage_${it.slug}`);
|
|
24
24
|
for (const table of junctionTables) {
|
|
25
25
|
for (const schema of schemas) {
|
|
26
26
|
recreateTrigger(builder, { name: table.tableName, schema });
|
|
@@ -33,3 +33,4 @@ async function default_1(builder, args) {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
exports.default = default_1;
|
|
36
|
+
//# sourceMappingURL=2021-05-19-1232000-event-log-fix-constraint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"2021-05-19-1232000-event-log-fix-constraint.js","sourceRoot":"","sources":["../../../src/migrations/2021-05-19-1232000-event-log-fix-constraint.ts"],"names":[],"mappings":";;AAEA,oCAA4C;AAE5C,MAAM,eAAe,GAAG,CAAC,OAAyB,EAAE,SAAe,EAAE,EAAE;IACtE,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACnE,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IACzE,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,eAAe,EAAE;QACjD,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACzC,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE;YACT,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,sBAAsB;SAC5B;KACD,CAAC,CAAA;AACH,CAAC,CAAA;AAEc,KAAK,oBAAW,OAAyB,EAAE,IAAyB;IAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;IAC1C,MAAM,cAAc,GAAG,IAAA,yBAAiB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;IAEjE,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;QACnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,eAAe,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;SAC3D;KACD;IACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;QAC1D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC7B,eAAe,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,CAAA;SAC5D;KACD;AACF,CAAC;AAfD,4BAeC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA"}
|
|
@@ -10,5 +10,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./runner"), exports);
|
|
14
|
+
__exportStar(require("./types"), exports);
|
|
14
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/migrations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwB;AACxB,0CAAuB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/migrations/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAO1E,eAAO,MAAM,mBAAmB,QAAO,QAAQ,SAAS,EAAE,CAQzD,CAAA"}
|
|
@@ -3,13 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getSystemMigrations = void 0;
|
|
6
7
|
const database_migrations_1 = require("@contember/database-migrations");
|
|
7
8
|
const _2020_03_27_130000_project_migrations_1 = __importDefault(require("./2020-03-27-130000-project-migrations"));
|
|
8
9
|
const _2020_05_06_150000_composed_primary_1 = __importDefault(require("./2020-05-06-150000-composed-primary"));
|
|
9
10
|
const _2020_06_01_103000_event_trigger_perf_1 = __importDefault(require("./2020-06-01-103000-event-trigger-perf"));
|
|
10
11
|
const _2021_05_07_155800_event_log_rework_1 = __importDefault(require("./2021-05-07-155800-event-log-rework"));
|
|
11
12
|
const _2021_05_19_1232000_event_log_fix_constraint_1 = __importDefault(require("./2021-05-19-1232000-event-log-fix-constraint"));
|
|
12
|
-
|
|
13
|
+
const getSystemMigrations = () => {
|
|
13
14
|
return (0, database_migrations_1.loadMigrations)(process.env.CONTEMBER_SYSTEM_MIGRATIONS_DIR || __dirname, [
|
|
14
15
|
new database_migrations_1.Migration('2020-03-27-130000-project-migrations', _2020_03_27_130000_project_migrations_1.default),
|
|
15
16
|
new database_migrations_1.Migration('2020-05-06-150000-composed-primary', _2020_05_06_150000_composed_primary_1.default),
|
|
@@ -17,5 +18,6 @@ function default_1() {
|
|
|
17
18
|
new database_migrations_1.Migration('2021-05-07-155800-event-log-rework', _2021_05_07_155800_event_log_rework_1.default),
|
|
18
19
|
new database_migrations_1.Migration('2021-05-19-1232000-event-log-fix-constraint', _2021_05_19_1232000_event_log_fix_constraint_1.default),
|
|
19
20
|
]);
|
|
20
|
-
}
|
|
21
|
-
exports.
|
|
21
|
+
};
|
|
22
|
+
exports.getSystemMigrations = getSystemMigrations;
|
|
23
|
+
//# sourceMappingURL=runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/migrations/runner.ts"],"names":[],"mappings":";;;;;;AAAA,wEAA0E;AAC1E,mHAAsE;AACtE,+GAAkE;AAClE,mHAAqE;AACrE,+GAAiE;AACjE,iIAAiF;AAE1E,MAAM,mBAAmB,GAAG,GAAyB,EAAE;IAC7D,OAAO,IAAA,oCAAc,EAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,SAAS,EAAE;QAC/E,IAAI,+BAAS,CAAC,sCAAsC,EAAE,+CAAiB,CAAC;QACxE,IAAI,+BAAS,CAAC,oCAAoC,EAAE,6CAAe,CAAC;QACpE,IAAI,+BAAS,CAAC,sCAAsC,EAAE,+CAAgB,CAAC;QACvE,IAAI,+BAAS,CAAC,oCAAoC,EAAE,6CAAc,CAAC;QACnE,IAAI,+BAAS,CAAC,6CAA6C,EAAE,sDAAqB,CAAC;KACnF,CAAC,CAAA;AACH,CAAC,CAAA;AARY,QAAA,mBAAmB,uBAQ/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/migrations/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,MAAM,WAAW,mBAAmB;IACnC,cAAc,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACrC,OAAO,EAAE,aAAa,CAAA;CACtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/migrations/types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectInitializer.d.ts","sourceRoot":"","sources":["../../../src/model/ProjectInitializer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProjectInitializer.d.ts","sourceRoot":"","sources":["../../../src/model/ProjectInitializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAmB,sBAAsB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oBAAoB,CAAA;AACpE,OAAO,EAGN,mBAAmB,EAGnB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAGxD,qBAAa,kBAAkB;IAE7B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,+BAA+B;IAChD,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAHpB,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,YAAY,EAC1B,+BAA+B,EAAE,+BAA+B,EAChE,oBAAoB,EAAE,oBAAoB;IAG/C,UAAU,CACtB,sBAAsB,EAAE,sBAAsB,EAC9C,OAAO,EAAE,aAAa,GAAG;QAAE,EAAE,CAAC,EAAE,mBAAmB,CAAA;KAAE,EACrD,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,SAAS,EAAE;YA+BX,UAAU;CA0BxB"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ProjectInitializer = void 0;
|
|
4
|
-
const helpers_1 = require("./helpers");
|
|
5
4
|
const database_1 = require("@contember/database");
|
|
6
|
-
const
|
|
5
|
+
const queries_1 = require("./queries");
|
|
7
6
|
class ProjectInitializer {
|
|
8
7
|
constructor(projectMigrator, stageCreator, systemDbMigrationsRunnerFactory, schemaVersionBuilder) {
|
|
9
8
|
this.projectMigrator = projectMigrator;
|
|
@@ -12,24 +11,22 @@ class ProjectInitializer {
|
|
|
12
11
|
this.schemaVersionBuilder = schemaVersionBuilder;
|
|
13
12
|
}
|
|
14
13
|
async initialize(databaseContextFactory, project, logger, migrations) {
|
|
15
|
-
const dbContext = databaseContextFactory.create(
|
|
14
|
+
const dbContext = databaseContextFactory.create();
|
|
16
15
|
if (project.db) {
|
|
17
16
|
// todo: use dbContext
|
|
18
17
|
logger.group(`Executing system schema migration`);
|
|
19
|
-
await (0,
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
const singleConnection = new database_1.SingleConnection(pgClient, {}, new database_1.EventManager(), true);
|
|
18
|
+
await (0, database_1.createDatabaseIfNotExists)(project.db, logger.write.bind(logger));
|
|
19
|
+
const singleConnection = new database_1.SingleConnection(project.db, {});
|
|
20
|
+
const systemSchema = dbContext.client.schema;
|
|
23
21
|
const dbContextMigrations = databaseContextFactory
|
|
24
|
-
.withClient(singleConnection.createClient(
|
|
25
|
-
.create(
|
|
22
|
+
.withClient(singleConnection.createClient(systemSchema, { module: 'system' }))
|
|
23
|
+
.create();
|
|
26
24
|
const schemaResolver = () => this.schemaVersionBuilder.buildSchema(dbContextMigrations);
|
|
27
|
-
await this.systemDbMigrationsRunnerFactory(
|
|
25
|
+
await this.systemDbMigrationsRunnerFactory(singleConnection, systemSchema).migrate(logger.write.bind(logger), {
|
|
28
26
|
schemaResolver,
|
|
29
27
|
project,
|
|
30
|
-
queryHandler: dbContextMigrations.queryHandler,
|
|
31
28
|
});
|
|
32
|
-
await
|
|
29
|
+
await singleConnection.end();
|
|
33
30
|
logger.groupEnd();
|
|
34
31
|
}
|
|
35
32
|
return await (0, database_1.retryTransaction)(() => dbContext.transaction(async (trx) => {
|
|
@@ -50,7 +47,8 @@ class ProjectInitializer {
|
|
|
50
47
|
logger.groupEnd();
|
|
51
48
|
if (migrations) {
|
|
52
49
|
logger.group(`Executing project migrations`);
|
|
53
|
-
await
|
|
50
|
+
const stages = await db.queryHandler.fetch(new queries_1.StagesQuery());
|
|
51
|
+
await this.projectMigrator.migrate(db, stages, migrations, logger.write.bind(logger));
|
|
54
52
|
logger.groupEnd();
|
|
55
53
|
}
|
|
56
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectInitializer.js","sourceRoot":"","sources":["../../../src/model/ProjectInitializer.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ProjectInitializer.js","sourceRoot":"","sources":["../../../src/model/ProjectInitializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectTruncateExecutor.d.ts","sourceRoot":"","sources":["../../../src/model/ProjectTruncateExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"ProjectTruncateExecutor.d.ts","sourceRoot":"","sources":["../../../src/model/ProjectTruncateExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAI1C,qBAAa,uBAAuB;IACtB,eAAe,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM;CAexF"}
|
|
@@ -4,6 +4,7 @@ exports.ProjectTruncateExecutor = void 0;
|
|
|
4
4
|
const commands_1 = require("./commands");
|
|
5
5
|
const helpers_1 = require("./helpers");
|
|
6
6
|
const database_1 = require("@contember/database");
|
|
7
|
+
const queries_1 = require("./queries");
|
|
7
8
|
class ProjectTruncateExecutor {
|
|
8
9
|
async truncateProject(db, project, schema) {
|
|
9
10
|
await db.transaction(async (trx) => {
|
|
@@ -11,9 +12,9 @@ class ProjectTruncateExecutor {
|
|
|
11
12
|
const tableNames = Object.values(schema.model.entities).filter(it => !it.view).map(it => it.tableName);
|
|
12
13
|
const junctionTableNames = (0, helpers_1.getJunctionTables)(schema.model).map(it => it.tableName);
|
|
13
14
|
const allTableNames = [...tableNames, ...junctionTableNames];
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const wrappedNames = allTableNames.map(it => `${(0, database_1.wrapIdentifier)(
|
|
15
|
+
const stages = await db.queryHandler.fetch(new queries_1.StagesQuery());
|
|
16
|
+
for (const stage of stages) {
|
|
17
|
+
const wrappedNames = allTableNames.map(it => `${(0, database_1.wrapIdentifier)(stage.schema)}.${(0, database_1.wrapIdentifier)(it)}`);
|
|
17
18
|
await trx.client.query(`TRUNCATE ${wrappedNames}`);
|
|
18
19
|
}
|
|
19
20
|
await trx.client.query('SET CONSTRAINTS ALL IMMEDIATE');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectTruncateExecutor.js","sourceRoot":"","sources":["../../../src/model/ProjectTruncateExecutor.ts"],"names":[],"mappings":";;;AAEA,yCAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"ProjectTruncateExecutor.js","sourceRoot":"","sources":["../../../src/model/ProjectTruncateExecutor.ts"],"names":[],"mappings":";;;AAEA,yCAAkD;AAClD,uCAA6C;AAE7C,kDAAoD;AACpD,uCAAuC;AAEvC,MAAa,uBAAuB;IAC5B,KAAK,CAAC,eAAe,CAAC,EAAmB,EAAE,OAAsB,EAAE,MAAc;QACvF,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAChC,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;YACtD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAA;YACtG,MAAM,kBAAkB,GAAG,IAAA,2BAAiB,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAA;YAClF,MAAM,aAAa,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,kBAAkB,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,qBAAW,EAAE,CAAC,CAAA;YAC7D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC3B,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAA,yBAAc,EAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAA,yBAAc,EAAC,EAAE,CAAC,EAAE,CAAC,CAAA;gBACrG,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,YAAY,EAAE,CAAC,CAAA;aAClD;YACD,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAA;YACvD,MAAM,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,gCAAqB,EAAE,CAAC,CAAA;QAC1D,CAAC,CAAC,CAAA;IACH,CAAC;CACD;AAhBD,0DAgBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { StageConfig } from '../../../types';
|
|
2
|
+
import { Command } from '../Command';
|
|
3
|
+
export declare class CreateStageCommand implements Command<void> {
|
|
4
|
+
private readonly stage;
|
|
5
|
+
constructor(stage: StageConfig);
|
|
6
|
+
execute({ db, providers }: Command.Args): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=CreateStageCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateStageCommand.d.ts","sourceRoot":"","sources":["../../../../../src/model/commands/stages/CreateStageCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAGpC,qBAAa,kBAAmB,YAAW,OAAO,CAAC,IAAI,CAAC;IAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,WAAW;IAElC,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAcpE"}
|
package/dist/src/model/commands/stages/{CreateOrUpdateStageCommand.js → CreateStageCommand.js}
RENAMED
|
@@ -1,27 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.CreateStageCommand = void 0;
|
|
4
4
|
const database_1 = require("@contember/database");
|
|
5
5
|
const helpers_1 = require("../../helpers");
|
|
6
|
-
class
|
|
6
|
+
class CreateStageCommand {
|
|
7
7
|
constructor(stage) {
|
|
8
8
|
this.stage = stage;
|
|
9
9
|
}
|
|
10
10
|
async execute({ db, providers }) {
|
|
11
|
-
|
|
11
|
+
var _a;
|
|
12
|
+
const schemaName = (_a = this.stage.schema) !== null && _a !== void 0 ? _a : (0, helpers_1.formatSchemaName)(this.stage);
|
|
13
|
+
await database_1.InsertBuilder.create()
|
|
12
14
|
.into('stage')
|
|
13
15
|
.values({
|
|
14
16
|
id: providers.uuid(),
|
|
15
17
|
name: this.stage.name,
|
|
16
18
|
slug: this.stage.slug,
|
|
17
|
-
|
|
18
|
-
.onConflict(database_1.ConflictActionType.update, ['slug'], {
|
|
19
|
-
name: this.stage.name,
|
|
19
|
+
schema: schemaName,
|
|
20
20
|
})
|
|
21
21
|
.execute(db);
|
|
22
|
-
await db.query('CREATE SCHEMA IF NOT EXISTS ' + (0, database_1.wrapIdentifier)(
|
|
23
|
-
return result > 0;
|
|
22
|
+
await db.query('CREATE SCHEMA IF NOT EXISTS ' + (0, database_1.wrapIdentifier)(schemaName));
|
|
24
23
|
}
|
|
25
24
|
}
|
|
26
|
-
exports.
|
|
27
|
-
//# sourceMappingURL=
|
|
25
|
+
exports.CreateStageCommand = CreateStageCommand;
|
|
26
|
+
//# sourceMappingURL=CreateStageCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateStageCommand.js","sourceRoot":"","sources":["../../../../../src/model/commands/stages/CreateStageCommand.ts"],"names":[],"mappings":";;;AAAA,kDAAmE;AAGnE,2CAAgD;AAEhD,MAAa,kBAAkB;IAC9B,YAA6B,KAAkB;QAAlB,UAAK,GAAL,KAAK,CAAa;IAAG,CAAC;IAE5C,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,SAAS,EAAgB;;QACnD,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,KAAK,CAAC,MAAM,mCAAI,IAAA,0BAAgB,EAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpE,MAAM,wBAAa,CAAC,MAAM,EAAE;aAC1B,IAAI,CAAC,OAAO,CAAC;aACb,MAAM,CAAC;YACP,EAAE,EAAE,SAAS,CAAC,IAAI,EAAE;YACpB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,MAAM,EAAE,UAAU;SAClB,CAAC;aACD,OAAO,CAAC,EAAE,CAAC,CAAA;QAEb,MAAM,EAAE,CAAC,KAAK,CAAC,8BAA8B,GAAG,IAAA,yBAAc,EAAC,UAAU,CAAC,CAAC,CAAA;IAC5E,CAAC;CACD;AAjBD,gDAiBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/model/commands/stages/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/model/commands/stages/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA"}
|
|
@@ -10,6 +10,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./CreateStageCommand"), exports);
|
|
14
14
|
__exportStar(require("./TruncateStagesCommand"), exports);
|
|
15
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/model/commands/stages/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/model/commands/stages/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAoC;AACpC,0DAAuC"}
|
|
@@ -12,7 +12,7 @@ export declare class DatabaseContextFactory {
|
|
|
12
12
|
private readonly client;
|
|
13
13
|
private readonly providers;
|
|
14
14
|
constructor(client: Client, providers: UuidProvider);
|
|
15
|
-
create(
|
|
15
|
+
create(): DatabaseContext;
|
|
16
16
|
withClient(client: Client): DatabaseContextFactory;
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=DatabaseContext.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseContext.d.ts","sourceRoot":"","sources":["../../../../src/model/database/DatabaseContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"DatabaseContext.d.ts","sourceRoot":"","sources":["../../../../src/model/database/DatabaseContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,MAAM,WAAW,eAAe,CAAC,cAAc,SAAS,UAAU,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc;IAC5G,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,CAAA;IAC9B,YAAY,EAAE,YAAY,CAAC,iBAAiB,CAAC,CAAA;IAC7C,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,eAAe,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IACvG,UAAU,EAAE,UAAU,CAAA;CACtB;AAED,qBAAa,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAU,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAA1C,MAAM,EAAE,MAAM,EAAmB,SAAS,EAAE,YAAY;IAE9E,MAAM,IAAI,eAAe;IAIzB,UAAU,CAAC,MAAM,EAAE,MAAM;CAGhC"}
|
|
@@ -3,29 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DatabaseContextFactory = void 0;
|
|
4
4
|
const database_1 = require("@contember/database");
|
|
5
5
|
const commands_1 = require("../commands");
|
|
6
|
-
const helpers_1 = require("../helpers");
|
|
7
6
|
class DatabaseContextFactory {
|
|
8
7
|
constructor(client, providers) {
|
|
9
8
|
this.client = client;
|
|
10
9
|
this.providers = providers;
|
|
11
10
|
}
|
|
12
|
-
create(
|
|
13
|
-
return createDatabaseContext(this.client,
|
|
11
|
+
create() {
|
|
12
|
+
return createDatabaseContext(this.client, this.providers);
|
|
14
13
|
}
|
|
15
14
|
withClient(client) {
|
|
16
15
|
return new DatabaseContextFactory(client, this.providers);
|
|
17
16
|
}
|
|
18
17
|
}
|
|
19
18
|
exports.DatabaseContextFactory = DatabaseContextFactory;
|
|
20
|
-
const createDatabaseContext = (client,
|
|
19
|
+
const createDatabaseContext = (client, providers) => ({
|
|
21
20
|
client,
|
|
22
21
|
queryHandler: client.createQueryHandler(),
|
|
23
22
|
transaction: cb => client.transaction(async (client) => {
|
|
24
23
|
await client.query(database_1.Connection.REPEATABLE_READ);
|
|
25
|
-
|
|
26
|
-
await (0, helpers_1.setupSystemVariables)(client, identityId, providers);
|
|
27
|
-
}
|
|
28
|
-
return cb(createDatabaseContext(client, undefined, providers));
|
|
24
|
+
return cb(createDatabaseContext(client, providers));
|
|
29
25
|
}),
|
|
30
26
|
commandBus: new commands_1.CommandBus(client, providers),
|
|
31
27
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatabaseContext.js","sourceRoot":"","sources":["../../../../src/model/database/DatabaseContext.ts"],"names":[],"mappings":";;;AAAA,kDAA2E;AAG3E,0CAAwC;
|
|
1
|
+
{"version":3,"file":"DatabaseContext.js","sourceRoot":"","sources":["../../../../src/model/database/DatabaseContext.ts"],"names":[],"mappings":";;;AAAA,kDAA2E;AAG3E,0CAAwC;AASxC,MAAa,sBAAsB;IAClC,YAA6B,MAAc,EAAmB,SAAuB;QAAxD,WAAM,GAAN,MAAM,CAAQ;QAAmB,cAAS,GAAT,SAAS,CAAc;IAAG,CAAC;IAElF,MAAM;QACZ,OAAO,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC1D,CAAC;IAEM,UAAU,CAAC,MAAc;QAC/B,OAAO,IAAI,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;IAC1D,CAAC;CACD;AAVD,wDAUC;AAED,MAAM,qBAAqB,GAAG,CAC7B,MAA8B,EAC9B,SAAuB,EACW,EAAE,CAAC,CAAC;IACtC,MAAM;IACN,YAAY,EAAE,MAAM,CAAC,kBAAkB,EAAE;IACzC,WAAW,EAAE,EAAE,CAAC,EAAE,CACjB,MAAM,CAAC,WAAW,CAAC,KAAK,EAAC,MAAM,EAAC,EAAE;QACjC,MAAM,MAAM,CAAC,KAAK,CAAC,qBAAU,CAAC,eAAe,CAAC,CAAA;QAC9C,OAAO,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IACpD,CAAC,CAAC;IACH,UAAU,EAAE,IAAI,qBAAU,CAAC,MAAM,EAAE,SAAS,CAAC;CAC7C,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/dependencies/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/model/dependencies/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA"}
|
|
@@ -10,6 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./content"), exports);
|
|
14
13
|
__exportStar(require("./tenant"), exports);
|
|
15
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/model/dependencies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/model/dependencies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { Client } from '@contember/database';
|
|
2
1
|
export interface IdentityFetcher {
|
|
3
|
-
fetchIdentities(
|
|
2
|
+
fetchIdentities(ids: string[]): Promise<TenantIdentity[]>;
|
|
4
3
|
}
|
|
5
4
|
export declare type TenantIdentity = PersonIdentity | ApiKeyIdentity;
|
|
6
5
|
export interface PersonIdentity {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityFetcher.d.ts","sourceRoot":"","sources":["../../../../../src/model/dependencies/tenant/IdentityFetcher.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IdentityFetcher.d.ts","sourceRoot":"","sources":["../../../../../src/model/dependencies/tenant/IdentityFetcher.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC/B,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;CACzD;AAED,oBAAY,cAAc,GAAG,cAAc,GAAG,cAAc,CAAA;AAE5D,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE;QAChB,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;KACZ,CAAA;CACD;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC5B"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
export interface Stage {
|
|
2
|
+
readonly id: string;
|
|
2
3
|
readonly name: string;
|
|
3
4
|
readonly slug: string;
|
|
5
|
+
readonly schema: string;
|
|
4
6
|
}
|
|
5
|
-
export interface StageWithId extends Stage {
|
|
6
|
-
readonly id: string;
|
|
7
|
-
}
|
|
8
|
-
export declare type StageWithoutEvent = Pick<Stage, Exclude<keyof Stage, 'event_id'>>;
|
|
9
7
|
//# sourceMappingURL=Stage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Stage.d.ts","sourceRoot":"","sources":["../../../../src/model/dtos/Stage.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"Stage.d.ts","sourceRoot":"","sources":["../../../../src/model/dtos/Stage.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACvB"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { AnyEvent } from '@contember/engine-common';
|
|
2
2
|
import { CreateEvent, DeleteEvent, UpdateEvent } from '../../schema';
|
|
3
3
|
import { IdentityFetcher } from '../dependencies';
|
|
4
|
-
import { Client } from '@contember/database';
|
|
5
4
|
export declare class EventResponseBuilder {
|
|
6
5
|
private readonly identityFetcher;
|
|
7
6
|
constructor(identityFetcher: IdentityFetcher);
|
|
8
|
-
buildResponse(
|
|
7
|
+
buildResponse(events: AnyEvent[]): Promise<(CreateEvent | DeleteEvent | UpdateEvent)[]>;
|
|
9
8
|
private formatDescription;
|
|
10
9
|
}
|
|
11
10
|
//# sourceMappingURL=EventResponseBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventResponseBuilder.d.ts","sourceRoot":"","sources":["../../../../src/model/events/EventResponseBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAA6B,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/F,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"EventResponseBuilder.d.ts","sourceRoot":"","sources":["../../../../src/model/events/EventResponseBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,WAAW,EAA6B,WAAW,EAAE,MAAM,cAAc,CAAA;AAE/F,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAIjD,qBAAa,oBAAoB;IACpB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,eAAe;IAEhD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,EAAE,CAAC;IAiCpG,OAAO,CAAC,iBAAiB;CAYzB"}
|
|
@@ -10,14 +10,14 @@ class EventResponseBuilder {
|
|
|
10
10
|
constructor(identityFetcher) {
|
|
11
11
|
this.identityFetcher = identityFetcher;
|
|
12
12
|
}
|
|
13
|
-
async buildResponse(
|
|
13
|
+
async buildResponse(events) {
|
|
14
14
|
const apiEventTypeMapping = {
|
|
15
15
|
[engine_common_1.EventType.create]: schema_1.EventType.Create,
|
|
16
16
|
[engine_common_1.EventType.update]: schema_1.EventType.Update,
|
|
17
17
|
[engine_common_1.EventType.delete]: schema_1.EventType.Delete,
|
|
18
18
|
};
|
|
19
19
|
const identityIds = events.map(it => it.identityId).filter((it, index, ids) => ids.indexOf(it) === index);
|
|
20
|
-
const identities = await this.identityFetcher.fetchIdentities(
|
|
20
|
+
const identities = await this.identityFetcher.fetchIdentities(identityIds);
|
|
21
21
|
const identitiesMap = Object.fromEntries(identities.map(it => [it.identityId, it]));
|
|
22
22
|
return events.map(it => {
|
|
23
23
|
const commonData = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventResponseBuilder.js","sourceRoot":"","sources":["../../../../src/model/events/EventResponseBuilder.ts"],"names":[],"mappings":";;;AAAA,4DAA8D;AAC9D,yCAA+F;AAC/F,uCAAyC;AAEzC,mDAAgD;AAChD,+DAAoH;
|
|
1
|
+
{"version":3,"file":"EventResponseBuilder.js","sourceRoot":"","sources":["../../../../src/model/events/EventResponseBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { Migration, MigrationDescriber } from '@contember/schema-migrations';
|
|
2
|
+
import { Stage } from '../dtos';
|
|
2
3
|
import { DatabaseContext } from '../database';
|
|
3
4
|
import { ExecutedMigrationsResolver } from './ExecutedMigrationsResolver';
|
|
4
5
|
import { MigrateErrorCode } from '../../schema';
|
|
5
|
-
import { ProjectConfig } from '../../types';
|
|
6
6
|
import { SchemaVersionBuilder } from './SchemaVersionBuilder';
|
|
7
7
|
export declare class ProjectMigrator {
|
|
8
8
|
private readonly migrationDescriber;
|
|
9
9
|
private readonly schemaVersionBuilder;
|
|
10
10
|
private readonly executedMigrationsResolver;
|
|
11
11
|
constructor(migrationDescriber: MigrationDescriber, schemaVersionBuilder: SchemaVersionBuilder, executedMigrationsResolver: ExecutedMigrationsResolver);
|
|
12
|
-
migrate(db: DatabaseContext,
|
|
12
|
+
migrate(db: DatabaseContext, stages: Stage[], migrationsToExecute: readonly Migration[], logger: (message: string) => void, ignoreOrder?: boolean): Promise<void>;
|
|
13
13
|
private validateMigrations;
|
|
14
14
|
private applyModification;
|
|
15
15
|
private executeOnStage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectMigrator.d.ts","sourceRoot":"","sources":["../../../../src/model/migrations/ProjectMigrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"ProjectMigrator.d.ts","sourceRoot":"","sources":["../../../../src/model/migrations/ProjectMigrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAK5E,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,qBAAa,eAAe;IAE1B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,0BAA0B;gBAF1B,kBAAkB,EAAE,kBAAkB,EACtC,oBAAoB,EAAE,oBAAoB,EAC1C,0BAA0B,EAAE,0BAA0B;IAG3D,OAAO,CACnB,EAAE,EAAE,eAAe,EACnB,MAAM,EAAE,KAAK,EAAE,EACf,mBAAmB,EAAE,SAAS,SAAS,EAAE,EACzC,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,EACjC,WAAW,GAAE,OAAe;YAgCf,kBAAkB;YA+BlB,iBAAiB;YAoBjB,cAAc;CAa5B;AAED,8BAAsB,cAAe,SAAQ,KAAK;aAGrB,OAAO,EAAE,MAAM;aAAkB,cAAc,EAAE,MAAM;IAFnF,SAAgB,IAAI,EAAE,gBAAgB,CAAA;gBAEV,OAAO,EAAE,MAAM,EAAkB,cAAc,EAAE,MAAM;CAGnF;AAED,qBAAa,8BAA+B,SAAQ,cAAc;IACjE,IAAI,mBAAoC;CACxC;AAED,qBAAa,6BAA8B,SAAQ,cAAc;IAChE,IAAI,mBAAmC;CACvC;AAED,qBAAa,oBAAqB,SAAQ,cAAc;IACvD,IAAI,mBAAmC;CACvC;AAED,qBAAa,kBAAmB,SAAQ,cAAc;IACrD,IAAI,mBAAiC;CACrC"}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InvalidSchemaError = exports.MigrationFailedError = exports.AlreadyExecutedMigrationError = exports.MustFollowLatestMigrationError = exports.MigrationError = exports.ProjectMigrator = void 0;
|
|
4
4
|
const database_1 = require("@contember/database");
|
|
5
|
-
const helpers_1 = require("../helpers");
|
|
6
5
|
const commands_1 = require("../commands");
|
|
7
6
|
const schema_1 = require("../../schema");
|
|
8
7
|
class ProjectMigrator {
|
|
@@ -11,7 +10,7 @@ class ProjectMigrator {
|
|
|
11
10
|
this.schemaVersionBuilder = schemaVersionBuilder;
|
|
12
11
|
this.executedMigrationsResolver = executedMigrationsResolver;
|
|
13
12
|
}
|
|
14
|
-
async migrate(db,
|
|
13
|
+
async migrate(db, stages, migrationsToExecute, logger, ignoreOrder = false) {
|
|
15
14
|
if (migrationsToExecute.length === 0) {
|
|
16
15
|
return;
|
|
17
16
|
}
|
|
@@ -22,7 +21,7 @@ class ProjectMigrator {
|
|
|
22
21
|
logger(`Executing migration ${migration.name}...`);
|
|
23
22
|
const formatVersion = migration.formatVersion;
|
|
24
23
|
for (const modification of migration.modifications) {
|
|
25
|
-
[schema] = await this.applyModification(db.client,
|
|
24
|
+
[schema] = await this.applyModification(db.client, stages, schema, modification, formatVersion, migration.version, db.client.schema);
|
|
26
25
|
}
|
|
27
26
|
await db.commandBus.execute(new commands_1.SaveMigrationCommand(migration));
|
|
28
27
|
logger(`Done`);
|
|
@@ -38,7 +37,7 @@ class ProjectMigrator {
|
|
|
38
37
|
if (migration.version < version && !ignoreOrder) {
|
|
39
38
|
throw new MustFollowLatestMigrationError(migration.version, `Must follow latest executed migration ${version}`);
|
|
40
39
|
}
|
|
41
|
-
const described = await this.migrationDescriber.describeModifications(schema, migration);
|
|
40
|
+
const described = await this.migrationDescriber.describeModifications(schema, migration, 'system'); // system schema name not important here
|
|
42
41
|
if (described.length === 0) {
|
|
43
42
|
continue;
|
|
44
43
|
}
|
|
@@ -50,15 +49,15 @@ class ProjectMigrator {
|
|
|
50
49
|
}
|
|
51
50
|
}
|
|
52
51
|
}
|
|
53
|
-
async applyModification(db, stages, schema, modification, formatVersion, migrationVersion) {
|
|
54
|
-
const { sql, schema: newSchema, handler, } = await this.migrationDescriber.describeModification(schema, modification, formatVersion);
|
|
52
|
+
async applyModification(db, stages, schema, modification, formatVersion, migrationVersion, systemSchema) {
|
|
53
|
+
const { sql, schema: newSchema, handler, } = await this.migrationDescriber.describeModification(schema, modification, { systemSchema, formatVersion });
|
|
55
54
|
for (const stage of stages) {
|
|
56
55
|
await this.executeOnStage(db, stage, sql, migrationVersion);
|
|
57
56
|
}
|
|
58
57
|
return [newSchema];
|
|
59
58
|
}
|
|
60
59
|
async executeOnStage(db, stage, sql, migrationVersion) {
|
|
61
|
-
await db.query('SET search_path TO ' + (0, database_1.wrapIdentifier)(
|
|
60
|
+
await db.query('SET search_path TO ' + (0, database_1.wrapIdentifier)(stage.schema));
|
|
62
61
|
try {
|
|
63
62
|
await db.query(sql);
|
|
64
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectMigrator.js","sourceRoot":"","sources":["../../../../src/model/migrations/ProjectMigrator.ts"],"names":[],"mappings":";;;AACA,kDAAwE;
|
|
1
|
+
{"version":3,"file":"ProjectMigrator.js","sourceRoot":"","sources":["../../../../src/model/migrations/ProjectMigrator.ts"],"names":[],"mappings":"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"}
|