@contember/engine-server 1.2.1 → 1.3.0-alpha.2
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/start.js +16 -15
- package/dist/src/start.js.map +1 -1
- package/dist/src/tsconfig.tsbuildinfo +1 -1
- package/dist/tests/e2e/assume-identity.test.js.map +1 -1
- package/dist/tests/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -22
- package/src/start.ts +10 -8
- package/src/tsconfig.json +4 -45
- package/tests/e2e/assume-identity.test.ts +0 -1
- package/tests/tsconfig.json +2 -6
- package/tsconfig.json +2 -6
- package/dist/src/MasterContainer.d.ts +0 -125
- package/dist/src/MasterContainer.d.ts.map +0 -1
- package/dist/src/MasterContainer.js +0 -102
- package/dist/src/MasterContainer.js.map +0 -1
- package/dist/src/bootstrap/Initializer.d.ts +0 -7
- package/dist/src/bootstrap/Initializer.d.ts.map +0 -1
- package/dist/src/bootstrap/Initializer.js +0 -27
- package/dist/src/bootstrap/Initializer.js.map +0 -1
- package/dist/src/bootstrap/index.d.ts +0 -2
- package/dist/src/bootstrap/index.d.ts.map +0 -1
- package/dist/src/bootstrap/index.js +0 -18
- package/dist/src/bootstrap/index.js.map +0 -1
- package/dist/src/config/config.d.ts +0 -17
- package/dist/src/config/config.d.ts.map +0 -1
- package/dist/src/config/config.js +0 -30
- package/dist/src/config/config.js.map +0 -1
- package/dist/src/config/configSchema.d.ts +0 -201
- package/dist/src/config/configSchema.d.ts.map +0 -1
- package/dist/src/config/configSchema.js +0 -119
- package/dist/src/config/configSchema.js.map +0 -1
- package/dist/src/config/configTemplate.d.ts +0 -2
- package/dist/src/config/configTemplate.d.ts.map +0 -1
- package/dist/src/config/configTemplate.js +0 -90
- package/dist/src/config/configTemplate.js.map +0 -1
- package/dist/src/config/projectConfigResolver.d.ts +0 -8
- package/dist/src/config/projectConfigResolver.d.ts.map +0 -1
- package/dist/src/config/projectConfigResolver.js +0 -91
- package/dist/src/config/projectConfigResolver.js.map +0 -1
- package/dist/src/config/tenantConfigResolver.d.ts +0 -8
- package/dist/src/config/tenantConfigResolver.d.ts.map +0 -1
- package/dist/src/config/tenantConfigResolver.js +0 -31
- package/dist/src/config/tenantConfigResolver.js.map +0 -1
- package/dist/src/index.d.ts +0 -13
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -33
- package/dist/src/index.js.map +0 -1
- package/dist/src/project/ProjectContainer.d.ts +0 -58
- package/dist/src/project/ProjectContainer.d.ts.map +0 -1
- package/dist/src/project/ProjectContainer.js +0 -66
- package/dist/src/project/ProjectContainer.js.map +0 -1
- package/dist/src/project/ProjectContainerResolver.d.ts +0 -24
- package/dist/src/project/ProjectContainerResolver.d.ts.map +0 -1
- package/dist/src/project/ProjectContainerResolver.js +0 -75
- package/dist/src/project/ProjectContainerResolver.js.map +0 -1
- package/dist/src/project/ProjectContainerStore.d.ts +0 -18
- package/dist/src/project/ProjectContainerStore.d.ts.map +0 -1
- package/dist/src/project/ProjectContainerStore.js +0 -30
- package/dist/src/project/ProjectContainerStore.js.map +0 -1
- package/dist/src/project/ProjectInitializer.d.ts +0 -14
- package/dist/src/project/ProjectInitializer.d.ts.map +0 -1
- package/dist/src/project/ProjectInitializer.js +0 -28
- package/dist/src/project/ProjectInitializer.js.map +0 -1
- package/dist/src/project/ProjectSchemaResolver.d.ts +0 -14
- package/dist/src/project/ProjectSchemaResolver.d.ts.map +0 -1
- package/dist/src/project/ProjectSchemaResolver.js +0 -30
- package/dist/src/project/ProjectSchemaResolver.js.map +0 -1
- package/dist/src/project/index.d.ts +0 -5
- package/dist/src/project/index.d.ts.map +0 -1
- package/dist/src/project/index.js +0 -21
- package/dist/src/project/index.js.map +0 -1
- package/dist/src/projectGroup/ProjectGroupContainer.d.ts +0 -26
- package/dist/src/projectGroup/ProjectGroupContainer.d.ts.map +0 -1
- package/dist/src/projectGroup/ProjectGroupContainer.js +0 -70
- package/dist/src/projectGroup/ProjectGroupContainer.js.map +0 -1
- package/dist/src/projectGroup/ProjectGroupResolver.d.ts +0 -7
- package/dist/src/projectGroup/ProjectGroupResolver.d.ts.map +0 -1
- package/dist/src/projectGroup/ProjectGroupResolver.js +0 -13
- package/dist/src/projectGroup/ProjectGroupResolver.js.map +0 -1
- package/dist/src/utils/index.d.ts +0 -3
- package/dist/src/utils/index.d.ts.map +0 -1
- package/dist/src/utils/index.js +0 -19
- package/dist/src/utils/index.js.map +0 -1
- package/dist/src/utils/sentry.d.ts +0 -10
- package/dist/src/utils/sentry.d.ts.map +0 -1
- package/dist/src/utils/sentry.js +0 -80
- package/dist/src/utils/sentry.js.map +0 -1
- package/dist/src/utils/serverStartup.d.ts +0 -33
- package/dist/src/utils/serverStartup.d.ts.map +0 -1
- package/dist/src/utils/serverStartup.js +0 -79
- package/dist/src/utils/serverStartup.js.map +0 -1
- package/dist/src/utils/serverTermination.d.ts +0 -13
- package/dist/src/utils/serverTermination.d.ts.map +0 -1
- package/dist/src/utils/serverTermination.js +0 -24
- package/dist/src/utils/serverTermination.js.map +0 -1
- package/dist/src/utils/strings.d.ts +0 -2
- package/dist/src/utils/strings.d.ts.map +0 -1
- package/dist/src/utils/strings.js +0 -6
- package/dist/src/utils/strings.js.map +0 -1
- package/dist/tests/cases/configResolver.test.d.ts +0 -2
- package/dist/tests/cases/configResolver.test.d.ts.map +0 -1
- package/dist/tests/cases/configResolver.test.js +0 -67
- package/dist/tests/cases/configResolver.test.js.map +0 -1
- package/src/MasterContainer.ts +0 -206
- package/src/bootstrap/Initializer.ts +0 -27
- package/src/bootstrap/index.ts +0 -1
- package/src/config/config.ts +0 -56
- package/src/config/configSchema.ts +0 -135
- package/src/config/configTemplate.ts +0 -86
- package/src/config/projectConfigResolver.ts +0 -86
- package/src/config/tenantConfigResolver.ts +0 -41
- package/src/index.ts +0 -23
- package/src/project/ProjectContainer.ts +0 -95
- package/src/project/ProjectContainerResolver.ts +0 -87
- package/src/project/ProjectContainerStore.ts +0 -33
- package/src/project/ProjectInitializer.ts +0 -28
- package/src/project/ProjectSchemaResolver.ts +0 -33
- package/src/project/index.ts +0 -4
- package/src/projectGroup/ProjectGroupContainer.ts +0 -134
- package/src/projectGroup/ProjectGroupResolver.ts +0 -12
- package/src/utils/index.ts +0 -2
- package/src/utils/sentry.ts +0 -56
- package/src/utils/serverStartup.ts +0 -78
- package/src/utils/serverTermination.ts +0 -19
- package/src/utils/strings.ts +0 -1
- package/tests/cases/configResolver.test.ts +0 -67
package/dist/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,uDAA+E;AAE/E,4CAA4C;AAY3C,2FAZQ,mBAAU,OAYR;AAXX,wDAA0D;AAYzD,mGAZQ,iCAAkB,OAYR;AAVnB,gFAAmF;AAYlF,6GAZQ,oDAA4B,OAYR;AAV7B,wDAAqC;AACrC,4DAAyC;AACzC,iDAA8B;AAC9B,oDAAiC;AAU1B,MAAM,eAAe,GAAG,CAAC,IAAyB,EAAE,EAAE;IAC5D,OAAO,IAAI,wCAAsB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AACjD,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Builder } from '@contember/dic';
|
|
2
|
-
import { Connection } from '@contember/database';
|
|
3
|
-
import { DatabaseContextFactory, SchemaVersionBuilder } from '@contember/engine-system-api';
|
|
4
|
-
import { GraphQlSchemaBuilderFactory, PermissionsByIdentityFactory } from '@contember/engine-content-api';
|
|
5
|
-
import { Plugin } from '@contember/engine-plugins';
|
|
6
|
-
import { ContentSchemaResolver, GraphQlSchemaFactory, ProjectConfig, ProjectContainer, Providers } from '@contember/engine-http';
|
|
7
|
-
import { Logger } from '@contember/logger';
|
|
8
|
-
export declare class ProjectContainerFactoryFactory {
|
|
9
|
-
private readonly debug;
|
|
10
|
-
private readonly plugins;
|
|
11
|
-
private readonly providers;
|
|
12
|
-
constructor(debug: boolean, plugins: Plugin[], providers: Providers);
|
|
13
|
-
create(schemaVersionBuilder: SchemaVersionBuilder, logger: Logger): ProjectContainerFactory;
|
|
14
|
-
}
|
|
15
|
-
interface ProjectContainerFactoryArgs {
|
|
16
|
-
project: ProjectConfig;
|
|
17
|
-
}
|
|
18
|
-
export declare class ProjectContainerFactory {
|
|
19
|
-
private readonly debug;
|
|
20
|
-
private readonly plugins;
|
|
21
|
-
private readonly schemaVersionBuilder;
|
|
22
|
-
private readonly providers;
|
|
23
|
-
private readonly logger;
|
|
24
|
-
constructor(debug: boolean, plugins: Plugin[], schemaVersionBuilder: SchemaVersionBuilder, providers: Providers, logger: Logger);
|
|
25
|
-
createContainer(args: ProjectContainerFactoryArgs): ProjectContainer;
|
|
26
|
-
protected createBuilder({ project }: ProjectContainerFactoryArgs): Builder<{
|
|
27
|
-
providers: {
|
|
28
|
-
uuid: () => string;
|
|
29
|
-
now: () => Date;
|
|
30
|
-
bcrypt: (value: string) => Promise<string>;
|
|
31
|
-
bcryptCompare: (data: any, hash: string) => Promise<boolean>;
|
|
32
|
-
randomBytes: (bytes: number) => Promise<Buffer>;
|
|
33
|
-
hash: (value: import("crypto").BinaryLike, algo: string) => Buffer;
|
|
34
|
-
};
|
|
35
|
-
} & {
|
|
36
|
-
schemaVersionBuilder: SchemaVersionBuilder;
|
|
37
|
-
} & {
|
|
38
|
-
logger: Logger;
|
|
39
|
-
} & {
|
|
40
|
-
project: ProjectConfig;
|
|
41
|
-
} & {
|
|
42
|
-
connection: Connection;
|
|
43
|
-
} & {
|
|
44
|
-
readConnection: Connection;
|
|
45
|
-
} & {
|
|
46
|
-
graphQlSchemaBuilderFactory: GraphQlSchemaBuilderFactory;
|
|
47
|
-
} & {
|
|
48
|
-
permissionsByIdentityFactory: PermissionsByIdentityFactory;
|
|
49
|
-
} & {
|
|
50
|
-
graphQlSchemaFactory: GraphQlSchemaFactory;
|
|
51
|
-
} & {
|
|
52
|
-
contentSchemaResolver: ContentSchemaResolver;
|
|
53
|
-
} & {
|
|
54
|
-
systemDatabaseContextFactory: DatabaseContextFactory;
|
|
55
|
-
}>;
|
|
56
|
-
}
|
|
57
|
-
export {};
|
|
58
|
-
//# sourceMappingURL=ProjectContainer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainer.d.ts","sourceRoot":"","sources":["../../../src/project/ProjectContainer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAC3F,OAAO,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAA;AACzG,OAAO,EAA4B,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAC5E,OAAO,EACN,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,qBAAa,8BAA8B;IAEzC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,SAAS;IAItC,MAAM,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,uBAAuB;CAG3F;AAED,UAAU,2BAA2B;IACpC,OAAO,EAAE,aAAa,CAAA;CACtB;AAED,qBAAa,uBAAuB;IAElC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAJN,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,MAAM,EAAE,EACjB,oBAAoB,EAAE,oBAAoB,EAC1C,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM;IAGzB,eAAe,CAAC,IAAI,EAAE,2BAA2B,GAAG,gBAAgB;IAc3E,SAAS,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwChE"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectContainerFactory = exports.ProjectContainerFactoryFactory = void 0;
|
|
4
|
-
const dic_1 = require("@contember/dic");
|
|
5
|
-
const database_1 = require("@contember/database");
|
|
6
|
-
const engine_system_api_1 = require("@contember/engine-system-api");
|
|
7
|
-
const engine_content_api_1 = require("@contember/engine-content-api");
|
|
8
|
-
const engine_http_1 = require("@contember/engine-http");
|
|
9
|
-
class ProjectContainerFactoryFactory {
|
|
10
|
-
constructor(debug, plugins, providers) {
|
|
11
|
-
this.debug = debug;
|
|
12
|
-
this.plugins = plugins;
|
|
13
|
-
this.providers = providers;
|
|
14
|
-
}
|
|
15
|
-
create(schemaVersionBuilder, logger) {
|
|
16
|
-
return new ProjectContainerFactory(this.debug, this.plugins, schemaVersionBuilder, this.providers, logger);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.ProjectContainerFactoryFactory = ProjectContainerFactoryFactory;
|
|
20
|
-
class ProjectContainerFactory {
|
|
21
|
-
constructor(debug, plugins, schemaVersionBuilder, providers, logger) {
|
|
22
|
-
this.debug = debug;
|
|
23
|
-
this.plugins = plugins;
|
|
24
|
-
this.schemaVersionBuilder = schemaVersionBuilder;
|
|
25
|
-
this.providers = providers;
|
|
26
|
-
this.logger = logger;
|
|
27
|
-
}
|
|
28
|
-
createContainer(args) {
|
|
29
|
-
return this.createBuilder(args)
|
|
30
|
-
.build()
|
|
31
|
-
.pick('project', 'connection', 'readConnection', 'systemDatabaseContextFactory', 'contentSchemaResolver', 'graphQlSchemaFactory', 'logger');
|
|
32
|
-
}
|
|
33
|
-
createBuilder({ project }) {
|
|
34
|
-
return new dic_1.Builder({})
|
|
35
|
-
.addService('providers', () => this.providers)
|
|
36
|
-
.addService('schemaVersionBuilder', () => this.schemaVersionBuilder)
|
|
37
|
-
.addService('logger', () => this.logger.child({ project: project.slug }))
|
|
38
|
-
.addService('project', () => project)
|
|
39
|
-
.addService('connection', ({ project, logger }) => database_1.Connection.create(project.db, err => logger.error(err)))
|
|
40
|
-
.addService('readConnection', ({ project, logger, connection }) => {
|
|
41
|
-
if (!project.db.read) {
|
|
42
|
-
return connection;
|
|
43
|
-
}
|
|
44
|
-
return database_1.Connection.create({
|
|
45
|
-
...project.db,
|
|
46
|
-
...project.db.read,
|
|
47
|
-
pool: {
|
|
48
|
-
...project.db.pool,
|
|
49
|
-
...project.db.read.pool,
|
|
50
|
-
},
|
|
51
|
-
}, err => logger.error(err));
|
|
52
|
-
})
|
|
53
|
-
.addService('graphQlSchemaBuilderFactory', () => new engine_content_api_1.GraphQlSchemaBuilderFactory())
|
|
54
|
-
.addService('permissionsByIdentityFactory', ({}) => new engine_content_api_1.PermissionsByIdentityFactory())
|
|
55
|
-
.addService('graphQlSchemaFactory', ({ project, permissionsByIdentityFactory, graphQlSchemaBuilderFactory, providers }) => {
|
|
56
|
-
const contributors = this.plugins
|
|
57
|
-
.map(it => (it.getSchemaContributor ? it.getSchemaContributor({ project, providers }) : null))
|
|
58
|
-
.filter((it) => !!it);
|
|
59
|
-
return new engine_http_1.GraphQlSchemaFactory(graphQlSchemaBuilderFactory, permissionsByIdentityFactory, contributors);
|
|
60
|
-
})
|
|
61
|
-
.addService('contentSchemaResolver', ({ schemaVersionBuilder }) => new engine_http_1.ContentSchemaResolver(schemaVersionBuilder))
|
|
62
|
-
.addService('systemDatabaseContextFactory', ({ connection, providers, project }) => { var _a; return new engine_system_api_1.DatabaseContextFactory(connection.createClient((_a = project.db.systemSchema) !== null && _a !== void 0 ? _a : 'system', { module: 'system' }), providers); });
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
exports.ProjectContainerFactory = ProjectContainerFactory;
|
|
66
|
-
//# sourceMappingURL=ProjectContainer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainer.js","sourceRoot":"","sources":["../../../src/project/ProjectContainer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { ProjectContainerFactory } from './ProjectContainer';
|
|
2
|
-
import { ProjectContainer } from '@contember/engine-http';
|
|
3
|
-
import { DatabaseContext, ProjectManager, ProjectWithSecrets } from '@contember/engine-tenant-api';
|
|
4
|
-
import { ProjectInitializer as SystemProjectInitializer } from '@contember/engine-system-api';
|
|
5
|
-
import { ProjectConfigResolver } from '../config/projectConfigResolver';
|
|
6
|
-
import { TenantConfig } from '../config/config';
|
|
7
|
-
import { Logger } from '@contember/logger';
|
|
8
|
-
export declare class ProjectContainerResolver {
|
|
9
|
-
private readonly projectContainerFactory;
|
|
10
|
-
private readonly projectConfigResolver;
|
|
11
|
-
private readonly projectManager;
|
|
12
|
-
private readonly systemProjectInitializer;
|
|
13
|
-
private readonly tenantDatabase;
|
|
14
|
-
private readonly tenantConfig;
|
|
15
|
-
private projectContainers;
|
|
16
|
-
readonly onCreate: ((container: ProjectContainer) => void | (() => void))[];
|
|
17
|
-
constructor(projectContainerFactory: ProjectContainerFactory, projectConfigResolver: ProjectConfigResolver, projectManager: ProjectManager, systemProjectInitializer: SystemProjectInitializer, tenantDatabase: DatabaseContext, tenantConfig: TenantConfig);
|
|
18
|
-
getProjectContainer(slug: string, { alias }?: {
|
|
19
|
-
alias?: boolean;
|
|
20
|
-
}): Promise<ProjectContainer | undefined>;
|
|
21
|
-
createProjectContainer(project: ProjectWithSecrets, logger?: Logger): Promise<ProjectContainer>;
|
|
22
|
-
destroyContainer(slug: string): Promise<void>;
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=ProjectContainerResolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainerResolver.d.ts","sourceRoot":"","sources":["../../../src/project/ProjectContainerResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAClG,OAAO,EAAE,kBAAkB,IAAI,wBAAwB,EAAE,MAAM,8BAA8B,CAAA;AAE7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,qBAAa,wBAAwB;IAMnC,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,wBAAwB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAV9B,OAAO,CAAC,iBAAiB,CAA8B;IAEvD,SAAgB,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,gBAAgB,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAK;gBAGrE,uBAAuB,EAAE,uBAAuB,EAChD,qBAAqB,EAAE,qBAAqB,EAC5C,cAAc,EAAE,cAAc,EAC9B,wBAAwB,EAAE,wBAAwB,EAClD,cAAc,EAAE,eAAe,EAC/B,YAAY,EAAE,YAAY;IAI/B,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAa,EAAE,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IA4BrH,sBAAsB,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAoB/F,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAc1D"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectContainerResolver = void 0;
|
|
4
|
-
const ProjectContainerStore_1 = require("./ProjectContainerStore");
|
|
5
|
-
class ProjectContainerResolver {
|
|
6
|
-
constructor(projectContainerFactory, projectConfigResolver, projectManager, systemProjectInitializer, tenantDatabase, tenantConfig) {
|
|
7
|
-
this.projectContainerFactory = projectContainerFactory;
|
|
8
|
-
this.projectConfigResolver = projectConfigResolver;
|
|
9
|
-
this.projectManager = projectManager;
|
|
10
|
-
this.systemProjectInitializer = systemProjectInitializer;
|
|
11
|
-
this.tenantDatabase = tenantDatabase;
|
|
12
|
-
this.tenantConfig = tenantConfig;
|
|
13
|
-
this.projectContainers = new ProjectContainerStore_1.ProjectContainerStore();
|
|
14
|
-
this.onCreate = [];
|
|
15
|
-
}
|
|
16
|
-
async getProjectContainer(slug, { alias = false } = {}) {
|
|
17
|
-
const realSlug = this.projectContainers.resolveAlias(slug);
|
|
18
|
-
if (realSlug) {
|
|
19
|
-
slug = realSlug;
|
|
20
|
-
}
|
|
21
|
-
const existing = this.projectContainers.getContainer(slug);
|
|
22
|
-
if (existing) {
|
|
23
|
-
const existingAwaited = await existing;
|
|
24
|
-
const state = await this.projectManager.getProjectState(this.tenantDatabase, slug, existingAwaited.timestamp);
|
|
25
|
-
if (state === 'valid') {
|
|
26
|
-
return (await existingAwaited).container;
|
|
27
|
-
}
|
|
28
|
-
await this.destroyContainer(slug);
|
|
29
|
-
if (state === 'not_found') {
|
|
30
|
-
return undefined;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
const project = await this.projectManager.getProjectWithSecretsBySlug(this.tenantDatabase, slug, alias);
|
|
34
|
-
if (!project) {
|
|
35
|
-
return undefined;
|
|
36
|
-
}
|
|
37
|
-
const container = await this.createProjectContainer(project);
|
|
38
|
-
if (slug !== project.slug) {
|
|
39
|
-
this.projectContainers.setAlias(project.slug, slug);
|
|
40
|
-
}
|
|
41
|
-
return container;
|
|
42
|
-
}
|
|
43
|
-
async createProjectContainer(project, logger) {
|
|
44
|
-
const projectConfig = this.projectConfigResolver(project.slug, project.config, project.secrets, this.tenantConfig);
|
|
45
|
-
return (await this.projectContainers.fetchContainer(project.slug, async (slug) => {
|
|
46
|
-
const projectContainer = this.projectContainerFactory.createContainer({
|
|
47
|
-
project: projectConfig,
|
|
48
|
-
});
|
|
49
|
-
await this.systemProjectInitializer.initialize(projectContainer.systemDatabaseContextFactory, projectContainer.project, logger !== null && logger !== void 0 ? logger : projectContainer.logger);
|
|
50
|
-
const cleanups = this.onCreate.map(it => it(projectContainer) || (() => null));
|
|
51
|
-
return {
|
|
52
|
-
container: projectContainer,
|
|
53
|
-
cleanups,
|
|
54
|
-
timestamp: project.updatedAt,
|
|
55
|
-
};
|
|
56
|
-
})).container;
|
|
57
|
-
}
|
|
58
|
-
async destroyContainer(slug) {
|
|
59
|
-
var _a;
|
|
60
|
-
const existing = this.projectContainers.getContainer(slug);
|
|
61
|
-
if (existing) {
|
|
62
|
-
const existingAwaited = await existing;
|
|
63
|
-
existingAwaited.cleanups.forEach(it => it());
|
|
64
|
-
(_a = existingAwaited.container.project.alias) === null || _a === void 0 ? void 0 : _a.forEach(it => this.projectContainers.removeAlias(it));
|
|
65
|
-
this.projectContainers.removeContainer(slug);
|
|
66
|
-
}
|
|
67
|
-
process.nextTick(() => {
|
|
68
|
-
if (global.gc) {
|
|
69
|
-
global.gc();
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
exports.ProjectContainerResolver = ProjectContainerResolver;
|
|
75
|
-
//# sourceMappingURL=ProjectContainerResolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainerResolver.js","sourceRoot":"","sources":["../../../src/project/ProjectContainerResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { ProjectContainer } from '@contember/engine-http';
|
|
2
|
-
declare type ContainerWithMeta = {
|
|
3
|
-
container: ProjectContainer;
|
|
4
|
-
cleanups: (() => void)[];
|
|
5
|
-
timestamp: Date;
|
|
6
|
-
};
|
|
7
|
-
export declare class ProjectContainerStore {
|
|
8
|
-
private containers;
|
|
9
|
-
private aliasMapping;
|
|
10
|
-
resolveAlias(slug: string): string | undefined;
|
|
11
|
-
setAlias(slug: string, alias: string): void;
|
|
12
|
-
removeAlias(alias: string): void;
|
|
13
|
-
getContainer(slug: string): Promise<ContainerWithMeta> | undefined;
|
|
14
|
-
fetchContainer(slug: string, factory: (slug: string) => Promise<ContainerWithMeta>): Promise<ContainerWithMeta>;
|
|
15
|
-
removeContainer(slug: string): void;
|
|
16
|
-
}
|
|
17
|
-
export {};
|
|
18
|
-
//# sourceMappingURL=ProjectContainerStore.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainerStore.d.ts","sourceRoot":"","sources":["../../../src/project/ProjectContainerStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,aAAK,iBAAiB,GAAG;IAAE,SAAS,EAAE,gBAAgB,CAAC;IAAC,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;IAAC,SAAS,EAAE,IAAI,CAAA;CAAE,CAAA;AAEnG,qBAAa,qBAAqB;IACjC,OAAO,CAAC,UAAU,CAA8C;IAChE,OAAO,CAAC,YAAY,CAA4B;IAEzC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI9C,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3C,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAI5D,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIrH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAG1C"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectContainerStore = void 0;
|
|
4
|
-
const engine_common_1 = require("@contember/engine-common");
|
|
5
|
-
class ProjectContainerStore {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.containers = new engine_common_1.PromiseMap();
|
|
8
|
-
this.aliasMapping = new Map();
|
|
9
|
-
}
|
|
10
|
-
resolveAlias(slug) {
|
|
11
|
-
return this.aliasMapping.get(slug);
|
|
12
|
-
}
|
|
13
|
-
setAlias(slug, alias) {
|
|
14
|
-
this.aliasMapping.set(alias, slug);
|
|
15
|
-
}
|
|
16
|
-
removeAlias(alias) {
|
|
17
|
-
this.aliasMapping.delete(alias);
|
|
18
|
-
}
|
|
19
|
-
getContainer(slug) {
|
|
20
|
-
return this.containers.get(slug);
|
|
21
|
-
}
|
|
22
|
-
async fetchContainer(slug, factory) {
|
|
23
|
-
return await this.containers.fetch(slug, factory);
|
|
24
|
-
}
|
|
25
|
-
removeContainer(slug) {
|
|
26
|
-
this.containers.delete(slug);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.ProjectContainerStore = ProjectContainerStore;
|
|
30
|
-
//# sourceMappingURL=ProjectContainerStore.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectContainerStore.js","sourceRoot":"","sources":["../../../src/project/ProjectContainerStore.ts"],"names":[],"mappings":";;;AACA,4DAAqD;AAIrD,MAAa,qBAAqB;IAAlC;QACS,eAAU,GAAG,IAAI,0BAAU,EAA6B,CAAA;QACxD,iBAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;IAyBjD,CAAC;IAvBO,YAAY,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnC,CAAC;IAEM,QAAQ,CAAC,IAAY,EAAE,KAAa;QAC1C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAEM,WAAW,CAAC,KAAa;QAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;IAEM,YAAY,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,OAAqD;QAC9F,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAEM,eAAe,CAAC,IAAY;QAClC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC;CACD;AA3BD,sDA2BC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ProjectInitializer as ProjectInitializerInterface, ProjectWithSecrets } from '@contember/engine-tenant-api';
|
|
2
|
-
import { ProjectContainerResolver } from './ProjectContainerResolver';
|
|
3
|
-
import { Logger } from '@contember/logger';
|
|
4
|
-
export declare class ProjectInitializer implements ProjectInitializerInterface {
|
|
5
|
-
private readonly projectContainerResolver;
|
|
6
|
-
constructor(projectContainerResolver: ProjectContainerResolver);
|
|
7
|
-
initializeProject(project: ProjectWithSecrets, logger: Logger): Promise<void>;
|
|
8
|
-
}
|
|
9
|
-
export declare class ProjectInitializerProxy implements ProjectInitializerInterface {
|
|
10
|
-
private initializer;
|
|
11
|
-
setInitializer(initializer: ProjectInitializerInterface): void;
|
|
12
|
-
initializeProject(project: ProjectWithSecrets, logger: Logger): Promise<void>;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=ProjectInitializer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectInitializer.d.ts","sourceRoot":"","sources":["../../../src/project/ProjectInitializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,IAAI,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACpH,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAA;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,qBAAa,kBAAmB,YAAW,2BAA2B;IAEpE,OAAO,CAAC,QAAQ,CAAC,wBAAwB;gBAAxB,wBAAwB,EAAE,wBAAwB;IAG9D,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM;CAGnE;AAED,qBAAa,uBAAwB,YAAW,2BAA2B;IAC1E,OAAO,CAAC,WAAW,CAAqD;IAExE,cAAc,CAAC,WAAW,EAAE,2BAA2B,GAAG,IAAI;IAI9D,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM;CAM7D"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectInitializerProxy = exports.ProjectInitializer = void 0;
|
|
4
|
-
class ProjectInitializer {
|
|
5
|
-
constructor(projectContainerResolver) {
|
|
6
|
-
this.projectContainerResolver = projectContainerResolver;
|
|
7
|
-
}
|
|
8
|
-
async initializeProject(project, logger) {
|
|
9
|
-
await this.projectContainerResolver.createProjectContainer(project);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
exports.ProjectInitializer = ProjectInitializer;
|
|
13
|
-
class ProjectInitializerProxy {
|
|
14
|
-
constructor() {
|
|
15
|
-
this.initializer = undefined;
|
|
16
|
-
}
|
|
17
|
-
setInitializer(initializer) {
|
|
18
|
-
this.initializer = initializer;
|
|
19
|
-
}
|
|
20
|
-
initializeProject(project, logger) {
|
|
21
|
-
if (!this.initializer) {
|
|
22
|
-
throw new Error('Initializer is not set');
|
|
23
|
-
}
|
|
24
|
-
return this.initializer.initializeProject(project, logger);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
exports.ProjectInitializerProxy = ProjectInitializerProxy;
|
|
28
|
-
//# sourceMappingURL=ProjectInitializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectInitializer.js","sourceRoot":"","sources":["../../../src/project/ProjectInitializer.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IAC9B,YACkB,wBAAkD;QAAlD,6BAAwB,GAAxB,wBAAwB,CAA0B;IACjE,CAAC;IAEJ,KAAK,CAAC,iBAAiB,CAAC,OAA2B,EAAE,MAAc;QAClE,MAAM,IAAI,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAA;IACpE,CAAC;CACD;AARD,gDAQC;AAED,MAAa,uBAAuB;IAApC;QACS,gBAAW,GAA4C,SAAS,CAAA;IAYzE,CAAC;IAVA,cAAc,CAAC,WAAwC;QACtD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC/B,CAAC;IAED,iBAAiB,CAAC,OAA2B,EAAE,MAAc;QAC5D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;SACzC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC3D,CAAC;CACD;AAbD,0DAaC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ProjectSchemaResolver as ProjectSchemaResolverInterface } from '@contember/engine-tenant-api';
|
|
2
|
-
import { ProjectContainerResolver } from '@contember/engine-http';
|
|
3
|
-
import { Schema } from '@contember/schema';
|
|
4
|
-
export declare class ProjectSchemaResolver implements ProjectSchemaResolverInterface {
|
|
5
|
-
private readonly projectContainerResolver;
|
|
6
|
-
constructor(projectContainerResolver: ProjectContainerResolver);
|
|
7
|
-
getSchema(slug: string): Promise<import("@contember/engine-system-api").VersionedSchema | undefined>;
|
|
8
|
-
}
|
|
9
|
-
export declare class ProjectSchemaResolverProxy implements ProjectSchemaResolverInterface {
|
|
10
|
-
private resolver;
|
|
11
|
-
setResolver(resolver: ProjectSchemaResolver): void;
|
|
12
|
-
getSchema(projectSlug: string): Promise<Schema | undefined>;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=ProjectSchemaResolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectSchemaResolver.d.ts","sourceRoot":"","sources":["../../../src/project/ProjectSchemaResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,8BAA8B,EAAE,MAAM,8BAA8B,CAAA;AACtG,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,qBAAa,qBAAsB,YAAW,8BAA8B;IAE1E,OAAO,CAAC,QAAQ,CAAC,wBAAwB;gBAAxB,wBAAwB,EAAE,wBAAwB;IAG9D,SAAS,CAAC,IAAI,EAAE,MAAM;CAQ5B;AAED,qBAAa,0BAA2B,YAAW,8BAA8B;IAChF,OAAO,CAAC,QAAQ,CAAmC;IAEnD,WAAW,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIlD,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CAM3D"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectSchemaResolverProxy = exports.ProjectSchemaResolver = void 0;
|
|
4
|
-
class ProjectSchemaResolver {
|
|
5
|
-
constructor(projectContainerResolver) {
|
|
6
|
-
this.projectContainerResolver = projectContainerResolver;
|
|
7
|
-
}
|
|
8
|
-
async getSchema(slug) {
|
|
9
|
-
const container = await this.projectContainerResolver.getProjectContainer(slug);
|
|
10
|
-
if (!container) {
|
|
11
|
-
return undefined;
|
|
12
|
-
}
|
|
13
|
-
const db = container.systemDatabaseContextFactory.create();
|
|
14
|
-
return container.contentSchemaResolver.getSchema(db);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
exports.ProjectSchemaResolver = ProjectSchemaResolver;
|
|
18
|
-
class ProjectSchemaResolverProxy {
|
|
19
|
-
setResolver(resolver) {
|
|
20
|
-
this.resolver = resolver;
|
|
21
|
-
}
|
|
22
|
-
getSchema(projectSlug) {
|
|
23
|
-
if (!this.resolver) {
|
|
24
|
-
throw new Error('Resolved is not set');
|
|
25
|
-
}
|
|
26
|
-
return this.resolver.getSchema(projectSlug);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.ProjectSchemaResolverProxy = ProjectSchemaResolverProxy;
|
|
30
|
-
//# sourceMappingURL=ProjectSchemaResolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectSchemaResolver.js","sourceRoot":"","sources":["../../../src/project/ProjectSchemaResolver.ts"],"names":[],"mappings":";;;AAIA,MAAa,qBAAqB;IACjC,YACkB,wBAAkD;QAAlD,6BAAwB,GAAxB,wBAAwB,CAA0B;IACjE,CAAC;IAEJ,KAAK,CAAC,SAAS,CAAC,IAAY;QAC3B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAC/E,IAAI,CAAC,SAAS,EAAE;YACf,OAAO,SAAS,CAAA;SAChB;QACD,MAAM,EAAE,GAAG,SAAS,CAAC,4BAA4B,CAAC,MAAM,EAAE,CAAA;QAC1D,OAAO,SAAS,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;IACrD,CAAC;CACD;AAbD,sDAaC;AAED,MAAa,0BAA0B;IAGtC,WAAW,CAAC,QAA+B;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACzB,CAAC;IAED,SAAS,CAAC,WAAmB;QAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACtC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IAC5C,CAAC;CACD;AAbD,gEAaC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/project/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./ProjectInitializer"), exports);
|
|
18
|
-
__exportStar(require("./ProjectSchemaResolver"), exports);
|
|
19
|
-
__exportStar(require("./ProjectContainer"), exports);
|
|
20
|
-
__exportStar(require("./ProjectContainerResolver"), exports);
|
|
21
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/project/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAoC;AACpC,0DAAuC;AACvC,qDAAkC;AAClC,6DAA0C"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { TenantContainerFactory } from '@contember/engine-tenant-api';
|
|
2
|
-
import { TenantConfig } from '../config/config';
|
|
3
|
-
import { ProjectGroupContainer, Providers, SystemGraphQLHandlerFactory, TenantGraphQLHandlerFactory } from '@contember/engine-http';
|
|
4
|
-
import { ProjectContainerFactoryFactory } from '../project';
|
|
5
|
-
import { SystemContainerFactory } from '@contember/engine-system-api';
|
|
6
|
-
import { ProjectConfigResolver } from '../config/projectConfigResolver';
|
|
7
|
-
import { Logger } from '@contember/logger';
|
|
8
|
-
interface ProjectGroupContainerFactoryArgs {
|
|
9
|
-
config: TenantConfig;
|
|
10
|
-
slug: string | undefined;
|
|
11
|
-
}
|
|
12
|
-
export declare class ProjectGroupContainerFactory {
|
|
13
|
-
private readonly debug;
|
|
14
|
-
private readonly providers;
|
|
15
|
-
private readonly systemContainerFactory;
|
|
16
|
-
private readonly tenantContainerFactory;
|
|
17
|
-
private readonly projectContainerFactoryFactory;
|
|
18
|
-
private readonly projectConfigResolver;
|
|
19
|
-
private readonly tenantGraphQLHandlerFactory;
|
|
20
|
-
private readonly systemGraphQLHandlerFactory;
|
|
21
|
-
private readonly logger;
|
|
22
|
-
constructor(debug: boolean, providers: Providers, systemContainerFactory: SystemContainerFactory, tenantContainerFactory: TenantContainerFactory, projectContainerFactoryFactory: ProjectContainerFactoryFactory, projectConfigResolver: ProjectConfigResolver, tenantGraphQLHandlerFactory: TenantGraphQLHandlerFactory, systemGraphQLHandlerFactory: SystemGraphQLHandlerFactory, logger: Logger);
|
|
23
|
-
create({ config, slug }: ProjectGroupContainerFactoryArgs): ProjectGroupContainer;
|
|
24
|
-
}
|
|
25
|
-
export {};
|
|
26
|
-
//# sourceMappingURL=ProjectGroupContainer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectGroupContainer.d.ts","sourceRoot":"","sources":["../../../src/projectGroup/ProjectGroupContainer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAGN,qBAAqB,EAGrB,SAAS,EACT,2BAA2B,EAC3B,2BAA2B,EAC3B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACN,8BAA8B,EAM9B,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,UAAU,gCAAgC;IAEzC,MAAM,EAAE,YAAY,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;CACxB;AAED,qBAAa,4BAA4B;IAEvC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IACvC,OAAO,CAAC,QAAQ,CAAC,8BAA8B;IAC/C,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,2BAA2B;IAC5C,OAAO,CAAC,QAAQ,CAAC,2BAA2B;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM;gBARN,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,sBAAsB,EAC9C,sBAAsB,EAAE,sBAAsB,EAC9C,8BAA8B,EAAE,8BAA8B,EAC9D,qBAAqB,EAAE,qBAAqB,EAC5C,2BAA2B,EAAE,2BAA2B,EACxD,2BAA2B,EAAE,2BAA2B,EACxD,MAAM,EAAE,MAAM;IAGzB,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,gCAAgC,GAAG,qBAAqB;CAuFxF"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectGroupContainerFactory = void 0;
|
|
4
|
-
const dic_1 = require("@contember/dic");
|
|
5
|
-
const database_1 = require("@contember/database");
|
|
6
|
-
const engine_http_1 = require("@contember/engine-http");
|
|
7
|
-
const project_1 = require("../project");
|
|
8
|
-
const node_crypto_1 = require("node:crypto");
|
|
9
|
-
class ProjectGroupContainerFactory {
|
|
10
|
-
constructor(debug, providers, systemContainerFactory, tenantContainerFactory, projectContainerFactoryFactory, projectConfigResolver, tenantGraphQLHandlerFactory, systemGraphQLHandlerFactory, logger) {
|
|
11
|
-
this.debug = debug;
|
|
12
|
-
this.providers = providers;
|
|
13
|
-
this.systemContainerFactory = systemContainerFactory;
|
|
14
|
-
this.tenantContainerFactory = tenantContainerFactory;
|
|
15
|
-
this.projectContainerFactoryFactory = projectContainerFactoryFactory;
|
|
16
|
-
this.projectConfigResolver = projectConfigResolver;
|
|
17
|
-
this.tenantGraphQLHandlerFactory = tenantGraphQLHandlerFactory;
|
|
18
|
-
this.systemGraphQLHandlerFactory = systemGraphQLHandlerFactory;
|
|
19
|
-
this.logger = logger;
|
|
20
|
-
}
|
|
21
|
-
create({ config, slug }) {
|
|
22
|
-
return new dic_1.Builder({})
|
|
23
|
-
.addService('slug', () => slug)
|
|
24
|
-
.addService('logger', ({ slug }) => this.logger.child({ projectGroup: slug }))
|
|
25
|
-
.addService('providers', () => this.providers)
|
|
26
|
-
.addService('tenantDbCredentials', () => config.db)
|
|
27
|
-
.addService('tenantConnection', ({ tenantDbCredentials, logger }) => database_1.Connection.create(tenantDbCredentials, err => logger.error(err)))
|
|
28
|
-
.addService('projectSchemaResolver', () => new project_1.ProjectSchemaResolverProxy())
|
|
29
|
-
.addService('projectInitializer', () => new project_1.ProjectInitializerProxy())
|
|
30
|
-
.addService('tenantContainer', ({ tenantConnection, tenantDbCredentials, projectSchemaResolver, projectInitializer }) => {
|
|
31
|
-
const encryptionKey = config.secrets.encryptionKey
|
|
32
|
-
? (0, node_crypto_1.createSecretKey)(Buffer.from(config.secrets.encryptionKey, 'hex'))
|
|
33
|
-
: undefined;
|
|
34
|
-
const cryptoWrapper = new engine_http_1.CryptoWrapper(encryptionKey);
|
|
35
|
-
return this.tenantContainerFactory.create({
|
|
36
|
-
connection: tenantConnection,
|
|
37
|
-
dbCredentials: tenantDbCredentials,
|
|
38
|
-
mailOptions: config.mailer,
|
|
39
|
-
tenantCredentials: config.credentials,
|
|
40
|
-
projectInitializer,
|
|
41
|
-
projectSchemaResolver,
|
|
42
|
-
cryptoProviders: {
|
|
43
|
-
decrypt: cryptoWrapper.decrypt.bind(cryptoWrapper),
|
|
44
|
-
encrypt: cryptoWrapper.encrypt.bind(cryptoWrapper),
|
|
45
|
-
},
|
|
46
|
-
});
|
|
47
|
-
})
|
|
48
|
-
.addService('tenantDatabase', ({ tenantContainer }) => tenantContainer.databaseContext)
|
|
49
|
-
.addService('identityFetcher', ({ tenantContainer: { identityFetcher } }) => identityFetcher)
|
|
50
|
-
.addService('systemContainer', ({ identityFetcher }) => this.systemContainerFactory.create({ identityFetcher }))
|
|
51
|
-
.addService('schemaVersionBuilder', ({ systemContainer }) => systemContainer.schemaVersionBuilder)
|
|
52
|
-
.addService('projectContainerFactory', ({ schemaVersionBuilder, logger }) => this.projectContainerFactoryFactory.create(schemaVersionBuilder, logger))
|
|
53
|
-
.addService('tenantProjectManager', ({ tenantContainer }) => tenantContainer.projectManager)
|
|
54
|
-
.addService('projectContainerResolver', ({ projectContainerFactory, tenantProjectManager, systemContainer, tenantContainer }) => new project_1.ProjectContainerResolver(projectContainerFactory, this.projectConfigResolver, tenantProjectManager, systemContainer.projectInitializer, tenantContainer.databaseContext, config))
|
|
55
|
-
.setupService('projectSchemaResolver', (it, { projectContainerResolver }) => {
|
|
56
|
-
it.setResolver(new project_1.ProjectSchemaResolver(projectContainerResolver));
|
|
57
|
-
})
|
|
58
|
-
.setupService('projectInitializer', (it, { projectContainerResolver }) => {
|
|
59
|
-
it.setInitializer(new project_1.ProjectInitializer(projectContainerResolver));
|
|
60
|
-
})
|
|
61
|
-
.addService('tenantGraphQLHandler', ({ tenantContainer }) => this.tenantGraphQLHandlerFactory.create(tenantContainer.resolvers))
|
|
62
|
-
.addService('systemGraphQLHandler', ({ systemContainer }) => this.systemGraphQLHandlerFactory.create(systemContainer.systemResolversFactory))
|
|
63
|
-
.addService('authenticator', ({ tenantDatabase, tenantContainer }) => new engine_http_1.Authenticator(tenantDatabase, tenantContainer.apiKeyManager))
|
|
64
|
-
.addService('projectMembershipResolver', ({ tenantContainer }) => new engine_http_1.ProjectMembershipResolver(this.debug, new engine_http_1.ProjectMembershipFetcher(tenantContainer.projectMemberManager, tenantContainer.databaseContext)))
|
|
65
|
-
.build()
|
|
66
|
-
.pick('projectContainerResolver', 'projectSchemaResolver', 'projectInitializer', 'systemContainer', 'systemGraphQLHandler', 'tenantContainer', 'tenantDatabase', 'authenticator', 'projectMembershipResolver', 'tenantGraphQLHandler', 'slug', 'logger');
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
exports.ProjectGroupContainerFactory = ProjectGroupContainerFactory;
|
|
70
|
-
//# sourceMappingURL=ProjectGroupContainer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectGroupContainer.js","sourceRoot":"","sources":["../../../src/projectGroup/ProjectGroupContainer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ProjectGroupContainer, ProjectGroupResolver as ProjectGroupResolverInterface } from '@contember/engine-http';
|
|
2
|
-
export declare class ProjectGroupResolver implements ProjectGroupResolverInterface {
|
|
3
|
-
private readonly projectGroupContainer;
|
|
4
|
-
constructor(projectGroupContainer: ProjectGroupContainer);
|
|
5
|
-
resolveContainer(): Promise<ProjectGroupContainer>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=ProjectGroupResolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectGroupResolver.d.ts","sourceRoot":"","sources":["../../../src/projectGroup/ProjectGroupResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,IAAI,6BAA6B,EAAE,MAAM,wBAAwB,CAAA;AAErH,qBAAa,oBAAqB,YAAW,6BAA6B;IAExE,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,qBAAqB;IAI9D,gBAAgB,IAAI,OAAO,CAAC,qBAAqB,CAAC;CAGlD"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ProjectGroupResolver = void 0;
|
|
4
|
-
class ProjectGroupResolver {
|
|
5
|
-
constructor(projectGroupContainer) {
|
|
6
|
-
this.projectGroupContainer = projectGroupContainer;
|
|
7
|
-
}
|
|
8
|
-
resolveContainer() {
|
|
9
|
-
return Promise.resolve(this.projectGroupContainer);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
exports.ProjectGroupResolver = ProjectGroupResolver;
|
|
13
|
-
//# sourceMappingURL=ProjectGroupResolver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectGroupResolver.js","sourceRoot":"","sources":["../../../src/projectGroup/ProjectGroupResolver.ts"],"names":[],"mappings":";;;AAEA,MAAa,oBAAoB;IAChC,YACkB,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;IAE9D,CAAC;IAED,gBAAgB;QACf,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;IACnD,CAAC;CACD;AATD,oDASC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA"}
|