@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/package.json
CHANGED
|
@@ -1,40 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contember/engine-server",
|
|
3
|
-
"version": "1.2
|
|
3
|
+
"version": "1.3.0-alpha.2",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"typings": "dist/src/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
|
-
"test": "vitest tests/cases",
|
|
9
8
|
"test-e2e": "vitest --no-threads tests/e2e"
|
|
10
9
|
},
|
|
11
10
|
"dependencies": {
|
|
12
|
-
"@contember/
|
|
13
|
-
"@contember/
|
|
14
|
-
"@contember/
|
|
15
|
-
"@contember/
|
|
16
|
-
"@contember/engine-content-api": "^1.2.1",
|
|
17
|
-
"@contember/engine-common": "^1.2.1",
|
|
18
|
-
"@contember/engine-http": "^1.2.1",
|
|
19
|
-
"@contember/engine-plugins": "^1.2.1",
|
|
20
|
-
"@contember/engine-s3-plugin": "^1.2.1",
|
|
21
|
-
"@contember/engine-system-api": "^1.2.1",
|
|
22
|
-
"@contember/engine-tenant-api": "^1.2.1",
|
|
23
|
-
"@contember/engine-vimeo-plugin": "^1.2.1",
|
|
24
|
-
"@contember/logger": "^1.2.1",
|
|
25
|
-
"@contember/schema": "^1.2.1",
|
|
26
|
-
"@contember/schema-migrations": "^1.2.1",
|
|
27
|
-
"@koa/cors": "^3.1.0",
|
|
28
|
-
"@sentry/node": "^7.1.1",
|
|
11
|
+
"@contember/engine-http": "^1.3.0-alpha.2",
|
|
12
|
+
"@contember/engine-plugins": "^1.3.0-alpha.2",
|
|
13
|
+
"@contember/engine-s3-plugin": "^1.3.0-alpha.2",
|
|
14
|
+
"@contember/engine-vimeo-plugin": "^1.3.0-alpha.2",
|
|
29
15
|
"graphql": "^16.5.0",
|
|
30
16
|
"heapdump": "^0.3.15",
|
|
31
|
-
"koa-bodyparser": "^4.3.0",
|
|
32
|
-
"koa-compress": "^5.0.1",
|
|
33
17
|
"pg": "^8.9.0",
|
|
34
18
|
"uuid": "^8.3.1"
|
|
35
19
|
},
|
|
36
20
|
"devDependencies": {
|
|
37
|
-
"@contember/engine-api-tester": "^1.2
|
|
21
|
+
"@contember/engine-api-tester": "^1.3.0-alpha.2",
|
|
38
22
|
"@types/koa-compress": "^4.0.1",
|
|
39
23
|
"@types/node": "^18",
|
|
40
24
|
"@types/supertest": "^2.0.8",
|
package/src/start.ts
CHANGED
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
listenOnProcessTermination,
|
|
7
7
|
serverConfigSchema,
|
|
8
8
|
TerminationJob,
|
|
9
|
-
|
|
9
|
+
getServerVersion, isDebugMode, printStartInfo, resolveServerConfig,
|
|
10
|
+
} from '@contember/engine-http'
|
|
10
11
|
import loadPlugins from './loadPlugins'
|
|
11
|
-
import { getServerVersion, isDebugMode, printStartInfo, resolveServerConfig } from './utils/serverStartup'
|
|
12
12
|
|
|
13
13
|
const logger = createDefaultLogger()
|
|
14
14
|
process.on('warning', message => {
|
|
@@ -26,7 +26,10 @@ process.on('warning', message => {
|
|
|
26
26
|
const version = getServerVersion()
|
|
27
27
|
printStartInfo({ version, isDebug }, logger)
|
|
28
28
|
const plugins = await loadPlugins()
|
|
29
|
-
const { serverConfig, projectConfigResolver, tenantConfigResolver } = await resolveServerConfig({
|
|
29
|
+
const { serverConfig, projectConfigResolver, tenantConfigResolver } = await resolveServerConfig({
|
|
30
|
+
plugins,
|
|
31
|
+
serverConfigSchema,
|
|
32
|
+
})
|
|
30
33
|
|
|
31
34
|
const sentryTransport = createSentryLoggerHandler(serverConfig.logging.sentry?.dsn)
|
|
32
35
|
if (sentryTransport !== null) {
|
|
@@ -45,11 +48,10 @@ process.on('warning', message => {
|
|
|
45
48
|
|
|
46
49
|
const initializedProjects: string[] = await container.initializer.initialize()
|
|
47
50
|
|
|
48
|
-
const
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
})
|
|
52
|
-
terminationJobs.push(() => new Promise<any>(resolve => httpServer.close(resolve)))
|
|
51
|
+
const httpServerPromise = container.application.listen()
|
|
52
|
+
terminationJobs.push(async () => await (await httpServerPromise).close())
|
|
53
|
+
logger.info(`Contember API running on http://localhost:${(serverConfig.port)}`)
|
|
54
|
+
logger.info(initializedProjects.length ? `Initialized projects: ${initializedProjects.join(', ')}` : 'No project initialized')
|
|
53
55
|
})().catch(e => {
|
|
54
56
|
logger.crit(e)
|
|
55
57
|
process.exit(1)
|
package/src/tsconfig.json
CHANGED
|
@@ -4,50 +4,9 @@
|
|
|
4
4
|
"outDir": "../dist/src"
|
|
5
5
|
},
|
|
6
6
|
"references": [
|
|
7
|
-
{
|
|
8
|
-
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
"path": "../../config-loader/src"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"path": "../../schema/src"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"path": "../../database/src"
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
"path": "../../engine-common/src"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"path": "../../engine-http/src"
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"path": "../../engine-tenant-api/src"
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
"path": "../../engine-system-api/src"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"path": "../../engine-content-api/src"
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
"path": "../../engine-plugins/src"
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"path": "../../engine-s3-plugin/src"
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
"path": "../../engine-vimeo-plugin/src"
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
"path": "../../logger/src"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"path": "../../typesafe/src"
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
"path": "../../schema-migrations/src"
|
|
51
|
-
}
|
|
7
|
+
{ "path": "../../engine-http/src" },
|
|
8
|
+
{ "path": "../../engine-plugins/src" },
|
|
9
|
+
{ "path": "../../engine-s3-plugin/src" },
|
|
10
|
+
{ "path": "../../engine-vimeo-plugin/src" }
|
|
52
11
|
]
|
|
53
12
|
}
|
package/tests/tsconfig.json
CHANGED
package/tsconfig.json
CHANGED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
/// <reference types="koa" />
|
|
2
|
-
/// <reference types="koa-bodyparser" />
|
|
3
|
-
import { SystemContainerFactory } from '@contember/engine-system-api';
|
|
4
|
-
import { TenantContainerFactory } from '@contember/engine-tenant-api';
|
|
5
|
-
import { Builder } from '@contember/dic';
|
|
6
|
-
import { ServerConfig } from './config/config';
|
|
7
|
-
import { ModificationHandlerFactory } from '@contember/schema-migrations';
|
|
8
|
-
import { Initializer } from './bootstrap';
|
|
9
|
-
import { Plugin } from '@contember/engine-plugins';
|
|
10
|
-
import { ContentApiMiddlewareFactory, ContentGraphQLContextFactory, ContentQueryHandlerFactory, ContentSchemaTransferMappingFactory, ErrorMiddlewareFactory, ExportApiMiddlewareFactory, ExportExecutor, ImportApiMiddlewareFactory, ImportExecutor, Koa, NotModifiedChecker, ProjectGroupResolver as ProjectGroupResolverInterface, Providers, SystemApiMiddlewareFactory, SystemGraphQLContextFactory, SystemGraphQLHandlerFactory, SystemSchemaTransferMappingFactory, TenantApiMiddlewareFactory, TenantGraphQLContextFactory, TenantGraphQLHandlerFactory } from '@contember/engine-http';
|
|
11
|
-
import { ProjectContainerFactoryFactory } from './project';
|
|
12
|
-
import { ProjectConfigResolver } from './config/projectConfigResolver';
|
|
13
|
-
import { TenantConfigResolver } from './config/tenantConfigResolver';
|
|
14
|
-
import { ProjectGroupContainerFactory } from './projectGroup/ProjectGroupContainer';
|
|
15
|
-
import { Logger } from '@contember/logger';
|
|
16
|
-
export interface MasterContainer {
|
|
17
|
-
initializer: Initializer;
|
|
18
|
-
koa: Koa;
|
|
19
|
-
providers: Providers;
|
|
20
|
-
}
|
|
21
|
-
export interface MasterContainerArgs {
|
|
22
|
-
debugMode: boolean;
|
|
23
|
-
serverConfig: ServerConfig;
|
|
24
|
-
projectConfigResolver: ProjectConfigResolver;
|
|
25
|
-
tenantConfigResolver: TenantConfigResolver;
|
|
26
|
-
plugins: Plugin[];
|
|
27
|
-
logger: Logger;
|
|
28
|
-
version?: string;
|
|
29
|
-
}
|
|
30
|
-
export declare class MasterContainerFactory {
|
|
31
|
-
createBuilder({ serverConfig, debugMode, plugins, projectConfigResolver, tenantConfigResolver, version, logger, }: MasterContainerArgs): Builder<{
|
|
32
|
-
serverConfig: {
|
|
33
|
-
readonly port: number;
|
|
34
|
-
readonly http: {
|
|
35
|
-
readonly requestBodySize?: string | undefined;
|
|
36
|
-
};
|
|
37
|
-
readonly logging: {
|
|
38
|
-
sentry?: {
|
|
39
|
-
dsn: string;
|
|
40
|
-
} | undefined;
|
|
41
|
-
} | {
|
|
42
|
-
readonly sentry?: {
|
|
43
|
-
readonly dsn: string;
|
|
44
|
-
} | undefined;
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
|
-
} & {
|
|
48
|
-
debugMode: boolean;
|
|
49
|
-
} & {
|
|
50
|
-
version: string | undefined;
|
|
51
|
-
} & {
|
|
52
|
-
projectConfigResolver: ProjectConfigResolver;
|
|
53
|
-
} & {
|
|
54
|
-
tenantConfigResolver: TenantConfigResolver;
|
|
55
|
-
} & {
|
|
56
|
-
plugins: Plugin<Record<string, unknown>>[];
|
|
57
|
-
} & {
|
|
58
|
-
providers: {
|
|
59
|
-
uuid: () => string;
|
|
60
|
-
now: () => Date;
|
|
61
|
-
bcrypt: (value: string) => Promise<string>;
|
|
62
|
-
bcryptCompare: (data: any, hash: string) => Promise<boolean>;
|
|
63
|
-
randomBytes: (bytes: number) => Promise<Buffer>;
|
|
64
|
-
hash: (value: import("crypto").BinaryLike, algo: string) => Buffer;
|
|
65
|
-
};
|
|
66
|
-
} & {
|
|
67
|
-
tenantContainerFactory: TenantContainerFactory;
|
|
68
|
-
} & {
|
|
69
|
-
modificationHandlerFactory: ModificationHandlerFactory;
|
|
70
|
-
} & {
|
|
71
|
-
systemContainerFactory: SystemContainerFactory;
|
|
72
|
-
} & {
|
|
73
|
-
projectContainerFactoryFactory: ProjectContainerFactoryFactory;
|
|
74
|
-
} & {
|
|
75
|
-
tenantGraphQLHandlerFactory: TenantGraphQLHandlerFactory;
|
|
76
|
-
} & {
|
|
77
|
-
systemGraphQLHandlerFactory: SystemGraphQLHandlerFactory;
|
|
78
|
-
} & {
|
|
79
|
-
logger: Logger;
|
|
80
|
-
} & {
|
|
81
|
-
projectGroupContainerFactory: ProjectGroupContainerFactory;
|
|
82
|
-
} & {
|
|
83
|
-
projectGroupContainer: import("@contember/engine-http").ProjectGroupContainer;
|
|
84
|
-
} & {
|
|
85
|
-
httpErrorMiddlewareFactory: ErrorMiddlewareFactory;
|
|
86
|
-
} & {
|
|
87
|
-
projectGroupResolver: ProjectGroupResolverInterface;
|
|
88
|
-
} & {
|
|
89
|
-
notModifiedChecker: NotModifiedChecker;
|
|
90
|
-
} & {
|
|
91
|
-
contentGraphqlContextFactory: ContentGraphQLContextFactory;
|
|
92
|
-
} & {
|
|
93
|
-
contentQueryHandlerFactory: ContentQueryHandlerFactory;
|
|
94
|
-
} & {
|
|
95
|
-
contentApiMiddlewareFactory: ContentApiMiddlewareFactory;
|
|
96
|
-
} & {
|
|
97
|
-
tenantGraphQLContextFactory: TenantGraphQLContextFactory;
|
|
98
|
-
} & {
|
|
99
|
-
tenantApiMiddlewareFactory: TenantApiMiddlewareFactory;
|
|
100
|
-
} & {
|
|
101
|
-
systemGraphQLContextFactory: SystemGraphQLContextFactory;
|
|
102
|
-
} & {
|
|
103
|
-
systemApiMiddlewareFactory: SystemApiMiddlewareFactory;
|
|
104
|
-
} & {
|
|
105
|
-
contentSchemaTransferMappingFactory: ContentSchemaTransferMappingFactory;
|
|
106
|
-
} & {
|
|
107
|
-
systemSchemaTransferMappingFactory: SystemSchemaTransferMappingFactory;
|
|
108
|
-
} & {
|
|
109
|
-
importExecutor: ImportExecutor;
|
|
110
|
-
} & {
|
|
111
|
-
exportExecutor: ExportExecutor;
|
|
112
|
-
} & {
|
|
113
|
-
importApiMiddlewareFactory: ImportApiMiddlewareFactory;
|
|
114
|
-
} & {
|
|
115
|
-
exportApiMiddlewareFactory: ExportApiMiddlewareFactory;
|
|
116
|
-
} & {
|
|
117
|
-
koaMiddlewares: import("@contember/engine-http").KoaMiddleware<any>;
|
|
118
|
-
} & {
|
|
119
|
-
koa: Koa<Koa.DefaultState, Koa.DefaultContext>;
|
|
120
|
-
} & {
|
|
121
|
-
initializer: Initializer;
|
|
122
|
-
}>;
|
|
123
|
-
create(args: MasterContainerArgs): MasterContainer;
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=MasterContainer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MasterContainer.d.ts","sourceRoot":"","sources":["../../src/MasterContainer.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAEN,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,mCAAmC,EAQnC,sBAAsB,EACtB,0BAA0B,EAC1B,cAAc,EACd,0BAA0B,EAC1B,cAAc,EACd,GAAG,EACH,kBAAkB,EAClB,oBAAoB,IAAI,6BAA6B,EACrD,SAAS,EAET,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,kCAAkC,EAClC,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAA;AAG1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAA;AAGnF,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE1C,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,WAAW,CAAA;IACxB,GAAG,EAAE,GAAG,CAAA;IACR,SAAS,EAAE,SAAS,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IACnC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,sBAAsB;IAClC,aAAa,CAAC,EACb,YAAY,EACZ,SAAS,EACT,OAAO,EACP,qBAAqB,EACrB,oBAAoB,EACpB,OAAO,EACP,MAAM,GACN,EAAE,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAgItB,MAAM,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;CAIlD"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.MasterContainerFactory = void 0;
|
|
7
|
-
const engine_system_api_1 = require("@contember/engine-system-api");
|
|
8
|
-
const engine_tenant_api_1 = require("@contember/engine-tenant-api");
|
|
9
|
-
const dic_1 = require("@contember/dic");
|
|
10
|
-
const schema_migrations_1 = require("@contember/schema-migrations");
|
|
11
|
-
const bootstrap_1 = require("./bootstrap");
|
|
12
|
-
const engine_http_1 = require("@contember/engine-http");
|
|
13
|
-
const project_1 = require("./project");
|
|
14
|
-
const koa_compress_1 = __importDefault(require("koa-compress"));
|
|
15
|
-
const koa_bodyparser_1 = __importDefault(require("koa-bodyparser"));
|
|
16
|
-
const ProjectGroupContainer_1 = require("./projectGroup/ProjectGroupContainer");
|
|
17
|
-
const cors_1 = __importDefault(require("@koa/cors"));
|
|
18
|
-
const ProjectGroupResolver_1 = require("./projectGroup/ProjectGroupResolver");
|
|
19
|
-
class MasterContainerFactory {
|
|
20
|
-
createBuilder({ serverConfig, debugMode, plugins, projectConfigResolver, tenantConfigResolver, version, logger, }) {
|
|
21
|
-
return new dic_1.Builder({})
|
|
22
|
-
.addService('serverConfig', () => serverConfig)
|
|
23
|
-
.addService('debugMode', () => debugMode)
|
|
24
|
-
.addService('version', () => version)
|
|
25
|
-
.addService('projectConfigResolver', () => projectConfigResolver)
|
|
26
|
-
.addService('tenantConfigResolver', () => tenantConfigResolver)
|
|
27
|
-
.addService('plugins', () => plugins)
|
|
28
|
-
.addService('providers', () => (0, engine_http_1.createProviders)())
|
|
29
|
-
.addService('tenantContainerFactory', ({ providers }) => new engine_tenant_api_1.TenantContainerFactory(providers))
|
|
30
|
-
.addService('modificationHandlerFactory', () => new schema_migrations_1.ModificationHandlerFactory(schema_migrations_1.ModificationHandlerFactory.defaultFactoryMap))
|
|
31
|
-
.addService('systemContainerFactory', ({ providers, modificationHandlerFactory }) => new engine_system_api_1.SystemContainerFactory(providers, modificationHandlerFactory))
|
|
32
|
-
.addService('projectContainerFactoryFactory', ({ debugMode, plugins, providers }) => new project_1.ProjectContainerFactoryFactory(debugMode, plugins, providers))
|
|
33
|
-
.addService('tenantGraphQLHandlerFactory', () => new engine_http_1.TenantGraphQLHandlerFactory())
|
|
34
|
-
.addService('systemGraphQLHandlerFactory', ({ debugMode }) => new engine_http_1.SystemGraphQLHandlerFactory(debugMode))
|
|
35
|
-
.addService('logger', () => logger)
|
|
36
|
-
.addService('projectGroupContainerFactory', ({ debugMode, providers, systemContainerFactory, tenantContainerFactory, projectContainerFactoryFactory, projectConfigResolver, tenantGraphQLHandlerFactory, systemGraphQLHandlerFactory, logger }) => new ProjectGroupContainer_1.ProjectGroupContainerFactory(debugMode, providers, systemContainerFactory, tenantContainerFactory, projectContainerFactoryFactory, projectConfigResolver, tenantGraphQLHandlerFactory, systemGraphQLHandlerFactory, logger))
|
|
37
|
-
.addService('projectGroupContainer', ({ tenantConfigResolver, projectGroupContainerFactory }) => projectGroupContainerFactory.create({ slug: undefined, config: tenantConfigResolver(undefined, {}) }))
|
|
38
|
-
.addService('httpErrorMiddlewareFactory', ({ debugMode }) => new engine_http_1.ErrorMiddlewareFactory(debugMode))
|
|
39
|
-
.addService('projectGroupResolver', ({ projectGroupContainer }) => new ProjectGroupResolver_1.ProjectGroupResolver(projectGroupContainer))
|
|
40
|
-
.addService('notModifiedChecker', () => new engine_http_1.NotModifiedChecker())
|
|
41
|
-
.addService('contentGraphqlContextFactory', ({ providers }) => new engine_http_1.ContentGraphQLContextFactory(providers))
|
|
42
|
-
.addService('contentQueryHandlerFactory', ({ debugMode }) => new engine_http_1.ContentQueryHandlerFactory(debugMode))
|
|
43
|
-
.addService('contentApiMiddlewareFactory', ({ projectGroupResolver, notModifiedChecker, contentGraphqlContextFactory, contentQueryHandlerFactory }) => new engine_http_1.ContentApiMiddlewareFactory(projectGroupResolver, notModifiedChecker, contentGraphqlContextFactory, contentQueryHandlerFactory))
|
|
44
|
-
.addService('tenantGraphQLContextFactory', () => new engine_http_1.TenantGraphQLContextFactory())
|
|
45
|
-
.addService('tenantApiMiddlewareFactory', ({ debugMode, projectGroupResolver, tenantGraphQLContextFactory }) => new engine_http_1.TenantApiMiddlewareFactory(debugMode, projectGroupResolver, tenantGraphQLContextFactory))
|
|
46
|
-
.addService('systemGraphQLContextFactory', () => new engine_http_1.SystemGraphQLContextFactory())
|
|
47
|
-
.addService('systemApiMiddlewareFactory', ({ debugMode, projectGroupResolver, systemGraphQLContextFactory }) => new engine_http_1.SystemApiMiddlewareFactory(debugMode, projectGroupResolver, systemGraphQLContextFactory))
|
|
48
|
-
.addService('contentSchemaTransferMappingFactory', () => new engine_http_1.ContentSchemaTransferMappingFactory())
|
|
49
|
-
.addService('systemSchemaTransferMappingFactory', () => new engine_http_1.SystemSchemaTransferMappingFactory())
|
|
50
|
-
.addService('importExecutor', ({ contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory }) => new engine_http_1.ImportExecutor(contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory))
|
|
51
|
-
.addService('exportExecutor', ({ contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory }) => new engine_http_1.ExportExecutor(contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory))
|
|
52
|
-
.addService('importApiMiddlewareFactory', ({ projectGroupResolver, importExecutor }) => new engine_http_1.ImportApiMiddlewareFactory(projectGroupResolver, importExecutor))
|
|
53
|
-
.addService('exportApiMiddlewareFactory', ({ projectGroupResolver, exportExecutor }) => new engine_http_1.ExportApiMiddlewareFactory(projectGroupResolver, exportExecutor))
|
|
54
|
-
.addService('koaMiddlewares', ({ contentApiMiddlewareFactory, tenantApiMiddlewareFactory, systemApiMiddlewareFactory, importApiMiddlewareFactory, exportApiMiddlewareFactory, httpErrorMiddlewareFactory, debugMode, version, serverConfig, logger }) => (0, engine_http_1.compose)([
|
|
55
|
-
(0, koa_compress_1.default)({
|
|
56
|
-
br: false,
|
|
57
|
-
}),
|
|
58
|
-
(0, koa_bodyparser_1.default)({
|
|
59
|
-
jsonLimit: serverConfig.http.requestBodySize || '1mb',
|
|
60
|
-
}),
|
|
61
|
-
(0, engine_http_1.createPoweredByHeaderMiddleware)(debugMode, version !== null && version !== void 0 ? version : 'unknown'),
|
|
62
|
-
(0, engine_http_1.createLoggerMiddleware)(logger),
|
|
63
|
-
(0, engine_http_1.createTimerMiddleware)({ debugMode }),
|
|
64
|
-
httpErrorMiddlewareFactory.create(),
|
|
65
|
-
(0, engine_http_1.route)('/playground$', (0, engine_http_1.createPlaygroundMiddleware)()),
|
|
66
|
-
(0, engine_http_1.createHomepageMiddleware)(),
|
|
67
|
-
(0, cors_1.default)(),
|
|
68
|
-
(0, engine_http_1.route)('/content/:projectSlug/:stageSlug$', (0, engine_http_1.compose)([
|
|
69
|
-
(0, engine_http_1.createModuleInfoMiddleware)('content'),
|
|
70
|
-
contentApiMiddlewareFactory.create(),
|
|
71
|
-
])),
|
|
72
|
-
(0, engine_http_1.route)('/tenant$', (0, engine_http_1.compose)([
|
|
73
|
-
(0, engine_http_1.createModuleInfoMiddleware)('tenant'),
|
|
74
|
-
tenantApiMiddlewareFactory.create(),
|
|
75
|
-
])),
|
|
76
|
-
(0, engine_http_1.route)('/system/:projectSlug$', (0, engine_http_1.compose)([
|
|
77
|
-
(0, engine_http_1.createModuleInfoMiddleware)('system'),
|
|
78
|
-
systemApiMiddlewareFactory.create(),
|
|
79
|
-
])),
|
|
80
|
-
(0, engine_http_1.route)('/import$', (0, engine_http_1.compose)([
|
|
81
|
-
(0, engine_http_1.createModuleInfoMiddleware)('transfer'),
|
|
82
|
-
importApiMiddlewareFactory.create(),
|
|
83
|
-
])),
|
|
84
|
-
(0, engine_http_1.route)('/export$', (0, engine_http_1.compose)([
|
|
85
|
-
(0, engine_http_1.createModuleInfoMiddleware)('transfer'),
|
|
86
|
-
exportApiMiddlewareFactory.create(),
|
|
87
|
-
])),
|
|
88
|
-
]))
|
|
89
|
-
.addService('koa', ({ koaMiddlewares }) => {
|
|
90
|
-
const app = new engine_http_1.Koa();
|
|
91
|
-
app.use(koaMiddlewares);
|
|
92
|
-
return app;
|
|
93
|
-
})
|
|
94
|
-
.addService('initializer', ({ projectGroupContainer }) => new bootstrap_1.Initializer(projectGroupContainer));
|
|
95
|
-
}
|
|
96
|
-
create(args) {
|
|
97
|
-
const container = this.createBuilder(args).build();
|
|
98
|
-
return container.pick('initializer', 'koa', 'providers');
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
exports.MasterContainerFactory = MasterContainerFactory;
|
|
102
|
-
//# sourceMappingURL=MasterContainer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MasterContainer.js","sourceRoot":"","sources":["../../src/MasterContainer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ProjectGroupContainer } from '@contember/engine-http';
|
|
2
|
-
export declare class Initializer {
|
|
3
|
-
private readonly projectGroupContainer;
|
|
4
|
-
constructor(projectGroupContainer: ProjectGroupContainer);
|
|
5
|
-
initialize(): Promise<string[]>;
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=Initializer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Initializer.d.ts","sourceRoot":"","sources":["../../../src/bootstrap/Initializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,qBAAa,WAAW;IAEtB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,qBAAqB;IAGjD,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAmB5C"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Initializer = void 0;
|
|
4
|
-
class Initializer {
|
|
5
|
-
constructor(projectGroupContainer) {
|
|
6
|
-
this.projectGroupContainer = projectGroupContainer;
|
|
7
|
-
}
|
|
8
|
-
async initialize() {
|
|
9
|
-
const groupContainer = await this.projectGroupContainer;
|
|
10
|
-
const tenantMigrationsLogger = groupContainer.logger.child();
|
|
11
|
-
const tenantContainer = groupContainer.tenantContainer;
|
|
12
|
-
await tenantContainer.migrationsRunner.run(tenantMigrationsLogger);
|
|
13
|
-
const projects = [];
|
|
14
|
-
const tenantProjects = await tenantContainer.projectManager.getProjects(tenantContainer.databaseContext);
|
|
15
|
-
for (const { slug: projectSlug } of tenantProjects) {
|
|
16
|
-
const projectContainer = await groupContainer.projectContainerResolver.getProjectContainer(projectSlug, { alias: false });
|
|
17
|
-
if (!projectContainer) {
|
|
18
|
-
throw new Error();
|
|
19
|
-
}
|
|
20
|
-
const project = projectContainer.project;
|
|
21
|
-
projects.push(project.slug);
|
|
22
|
-
}
|
|
23
|
-
return projects;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.Initializer = Initializer;
|
|
27
|
-
//# sourceMappingURL=Initializer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Initializer.js","sourceRoot":"","sources":["../../../src/bootstrap/Initializer.ts"],"names":[],"mappings":";;;AAEA,MAAa,WAAW;IACvB,YACkB,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;IAC3D,CAAC;IAEG,KAAK,CAAC,UAAU;QACtB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAA;QACvD,MAAM,sBAAsB,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QAC5D,MAAM,eAAe,GAAG,cAAc,CAAC,eAAe,CAAA;QACtD,MAAM,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;QAElE,MAAM,QAAQ,GAAa,EAAE,CAAA;QAE7B,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,cAAc,CAAC,WAAW,CAAC,eAAe,CAAC,eAAe,CAAC,CAAA;QACxG,KAAK,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,cAAc,EAAE;YACnD,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;YACzH,IAAI,CAAC,gBAAgB,EAAE;gBACtB,MAAM,IAAI,KAAK,EAAE,CAAA;aACjB;YACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAA;YACxC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;SAC3B;QACD,OAAO,QAAQ,CAAA;IAChB,CAAC;CACD;AAxBD,kCAwBC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bootstrap/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
|
@@ -1,18 +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("./Initializer"), exports);
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bootstrap/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ConfigProcessor } from '@contember/engine-plugins';
|
|
2
|
-
import { serverConfigSchema as defaultServerConfigSchema, tenantConfigSchema } from './configSchema';
|
|
3
|
-
import { ProjectConfigResolver } from './projectConfigResolver';
|
|
4
|
-
import { TenantConfigResolver } from './tenantConfigResolver';
|
|
5
|
-
import { Type } from '@contember/typesafe';
|
|
6
|
-
export declare type ServerConfig = ReturnType<typeof defaultServerConfigSchema>;
|
|
7
|
-
export declare type TenantConfig = ReturnType<typeof tenantConfigSchema>;
|
|
8
|
-
export declare type ConfigSource = {
|
|
9
|
-
data: string;
|
|
10
|
-
type: 'file' | 'json' | 'yaml';
|
|
11
|
-
};
|
|
12
|
-
export declare function readConfig<T extends ServerConfig>(configSources?: ConfigSource[], configProcessors?: ConfigProcessor[], serverConfigSchema?: Type<T>): Promise<{
|
|
13
|
-
serverConfig: T;
|
|
14
|
-
projectConfigResolver: ProjectConfigResolver;
|
|
15
|
-
tenantConfigResolver: TenantConfigResolver;
|
|
16
|
-
}>;
|
|
17
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,kBAAkB,IAAI,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEpG,OAAO,EAA+B,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAC5F,OAAO,EAA8B,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AACzF,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AAE1C,oBAAY,YAAY,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAA;AACvE,oBAAY,YAAY,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAEhE,oBAAY,YAAY,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;CAAE,CAAA;AAI3E,wBAAsB,UAAU,CAAC,CAAC,SAAS,YAAY,EACtD,aAAa,GAAE,YAAY,EAAO,EAClC,gBAAgB,GAAE,eAAe,EAAO,EACxC,kBAAkB,GAAE,IAAI,CAAC,CAAC,CAAwC,GAChE,OAAO,CAAC;IACV,YAAY,EAAE,CAAC,CAAA;IACf,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,oBAAoB,EAAE,oBAAoB,CAAA;CAC1C,CAAC,CA4BD"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.readConfig = void 0;
|
|
4
|
-
const config_loader_1 = require("@contember/config-loader");
|
|
5
|
-
const configSchema_1 = require("./configSchema");
|
|
6
|
-
const configTemplate_1 = require("./configTemplate");
|
|
7
|
-
const projectConfigResolver_1 = require("./projectConfigResolver");
|
|
8
|
-
const tenantConfigResolver_1 = require("./tenantConfigResolver");
|
|
9
|
-
async function readConfig(configSources = [], configProcessors = [], serverConfigSchema = configSchema_1.serverConfigSchema) {
|
|
10
|
-
const loader = new config_loader_1.ConfigLoader();
|
|
11
|
-
const configs = await Promise.all(configSources.map(it => (it.type === 'file' ? loader.load(it.data) : loader.loadString(it.data, it.type))));
|
|
12
|
-
const env = {
|
|
13
|
-
...configProcessors.reduce((acc, curr) => { var _a; return ({ ...acc, ...(((_a = curr.getDefaultEnv) === null || _a === void 0 ? void 0 : _a.call(curr)) || {}) }); }, {
|
|
14
|
-
DEFAULT_DB_PORT: '5432',
|
|
15
|
-
}),
|
|
16
|
-
...Object.fromEntries(Object.entries(process.env).filter((it) => it[1] !== undefined)),
|
|
17
|
-
};
|
|
18
|
-
const template = configProcessors.reduce((tpl, processor) => { var _a; return ((_a = processor.prepareConfigTemplate) === null || _a === void 0 ? void 0 : _a.call(processor, tpl, { env })) || tpl; }, configTemplate_1.configTemplate);
|
|
19
|
-
const rawConfig = config_loader_1.Merger.merge(template, ...configs);
|
|
20
|
-
const parametersResolver = (0, config_loader_1.createObjectParametersResolver)({ env });
|
|
21
|
-
const config = (0, config_loader_1.resolveParameters)(rawConfig.server, parametersResolver);
|
|
22
|
-
const serverConfig = serverConfigSchema(config);
|
|
23
|
-
return {
|
|
24
|
-
serverConfig,
|
|
25
|
-
projectConfigResolver: (0, projectConfigResolver_1.createProjectConfigResolver)(env, rawConfig, configProcessors),
|
|
26
|
-
tenantConfigResolver: (0, tenantConfigResolver_1.createTenantConfigResolver)(env, rawConfig.tenant),
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
exports.readConfig = readConfig;
|
|
30
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config/config.ts"],"names":[],"mappings":";;;AAAA,4DAAkH;AAElH,iDAAoG;AACpG,qDAAiD;AACjD,mEAA4F;AAC5F,iEAAyF;AAUlF,KAAK,UAAU,UAAU,CAC/B,gBAAgC,EAAE,EAClC,mBAAsC,EAAE,EACxC,qBAA8B,iCAAoC;IAMlE,MAAM,MAAM,GAAG,IAAI,4BAAY,EAAE,CAAA;IACjC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAC1G,CAAA;IACD,MAAM,GAAG,GAAQ;QAChB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,WAAC,OAAA,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,CAAA,MAAA,IAAI,CAAC,aAAa,oDAAI,KAAI,EAAE,CAAC,EAAE,CAAC,CAAA,EAAA,EAAE;YAC1F,eAAe,EAAE,MAAM;SACvB,CAAC;QACF,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAA0B,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;KAC9G,CAAA;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CACvC,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,SAAS,CAAC,qBAAqB,0DAAG,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,KAAI,GAAG,CAAA,EAAA,EAC1E,+BAAc,CACd,CAAA;IAED,MAAM,SAAS,GAAG,sBAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAA;IAEpD,MAAM,kBAAkB,GAAG,IAAA,8CAA8B,EAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAClE,MAAM,MAAM,GAAG,IAAA,iCAAiB,EAAC,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IAEtE,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC/C,OAAO;QACN,YAAY;QACZ,qBAAqB,EAAE,IAAA,mDAA2B,EAAC,GAAG,EAAE,SAAS,EAAE,gBAAgB,CAAC;QACpF,oBAAoB,EAAE,IAAA,iDAA0B,EAAC,GAAG,EAAE,SAAS,CAAC,MAAM,CAAC;KACvE,CAAA;AACF,CAAC;AApCD,gCAoCC"}
|