@contember/engine-server 1.2.0-alpha.2 → 1.2.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@contember/engine-server",
3
- "version": "1.2.0-alpha.2",
3
+ "version": "1.2.0-alpha.3",
4
4
  "license": "Apache-2.0",
5
5
  "main": "dist/src/index.js",
6
6
  "typings": "dist/src/index.d.ts",
@@ -8,27 +8,27 @@
8
8
  "test-e2e": "vitest --no-threads tests/e2e"
9
9
  },
10
10
  "dependencies": {
11
- "@contember/authorization": "^1.2.0-alpha.2",
12
- "@contember/config-loader": "^1.2.0-alpha.2",
13
- "@contember/database": "^1.2.0-alpha.2",
14
- "@contember/database-migrations": "^1.2.0-alpha.2",
15
- "@contember/dic": "^1.2.0-alpha.2",
16
- "@contember/typesafe": "^1.2.0-alpha.2",
17
- "@contember/engine-content-api": "^1.2.0-alpha.2",
18
- "@contember/engine-http": "^1.2.0-alpha.2",
19
- "@contember/engine-plugins": "^1.2.0-alpha.2",
20
- "@contember/engine-s3-plugin": "^1.2.0-alpha.2",
21
- "@contember/engine-system-api": "^1.2.0-alpha.2",
22
- "@contember/engine-tenant-api": "^1.2.0-alpha.2",
23
- "@contember/engine-vimeo-plugin": "^1.2.0-alpha.2",
24
- "@contember/queryable": "^1.2.0-alpha.2",
25
- "@contember/schema": "^1.2.0-alpha.2",
26
- "@contember/schema-definition": "^1.2.0-alpha.2",
27
- "@contember/schema-migrations": "^1.2.0-alpha.2",
28
- "@contember/schema-utils": "^1.2.0-alpha.2",
11
+ "@contember/authorization": "^1.2.0-alpha.3",
12
+ "@contember/config-loader": "^1.2.0-alpha.3",
13
+ "@contember/database": "^1.2.0-alpha.3",
14
+ "@contember/database-migrations": "^1.2.0-alpha.3",
15
+ "@contember/dic": "^1.2.0-alpha.3",
16
+ "@contember/typesafe": "^1.2.0-alpha.3",
17
+ "@contember/engine-content-api": "^1.2.0-alpha.3",
18
+ "@contember/engine-http": "^1.2.0-alpha.3",
19
+ "@contember/engine-plugins": "^1.2.0-alpha.3",
20
+ "@contember/engine-s3-plugin": "^1.2.0-alpha.3",
21
+ "@contember/engine-system-api": "^1.2.0-alpha.3",
22
+ "@contember/engine-tenant-api": "^1.2.0-alpha.3",
23
+ "@contember/engine-vimeo-plugin": "^1.2.0-alpha.3",
24
+ "@contember/queryable": "^1.2.0-alpha.3",
25
+ "@contember/schema": "^1.2.0-alpha.3",
26
+ "@contember/schema-definition": "^1.2.0-alpha.3",
27
+ "@contember/schema-migrations": "^1.2.0-alpha.3",
28
+ "@contember/schema-utils": "^1.2.0-alpha.3",
29
29
  "@koa/cors": "^3.1.0",
30
- "@sentry/node": "^6.8.0",
31
- "graphql": "^15.4.0",
30
+ "@sentry/node": "^7.1.1",
31
+ "graphql": "^16.5.0",
32
32
  "heapdump": "^0.3.15",
33
33
  "koa-bodyparser": "^4.3.0",
34
34
  "koa-compress": "^5.0.1",
@@ -37,9 +37,9 @@
37
37
  "uuid": "^8.3.1"
38
38
  },
39
39
  "devDependencies": {
40
- "@contember/engine-api-tester": "^1.2.0-alpha.2",
40
+ "@contember/engine-api-tester": "^1.2.0-alpha.3",
41
41
  "@types/koa-compress": "^4.0.1",
42
- "@types/node": "^17.0.5",
42
+ "@types/node": "^16",
43
43
  "@types/supertest": "^2.0.8",
44
44
  "supertest": "^6.0.1"
45
45
  }
@@ -11,6 +11,7 @@ import {
11
11
  ContentApiMiddlewareFactory,
12
12
  ContentGraphQLContextFactory,
13
13
  ContentQueryHandlerFactory,
14
+ ContentSchemaTransferMappingFactory,
14
15
  createHomepageMiddleware,
15
16
  createModuleInfoMiddleware,
16
17
  createPlaygroundMiddleware,
@@ -18,6 +19,10 @@ import {
18
19
  createProviders,
19
20
  createTimerMiddleware,
20
21
  ErrorMiddlewareFactory,
22
+ ExportApiMiddlewareFactory,
23
+ ExportExecutor,
24
+ ImportApiMiddlewareFactory,
25
+ ImportExecutor,
21
26
  Koa,
22
27
  NotModifiedChecker,
23
28
  Providers,
@@ -25,6 +30,7 @@ import {
25
30
  SystemApiMiddlewareFactory,
26
31
  SystemGraphQLContextFactory,
27
32
  SystemGraphQLHandlerFactory,
33
+ SystemSchemaTransferMappingFactory,
28
34
  TenantApiMiddlewareFactory,
29
35
  TenantGraphQLContextFactory,
30
36
  TenantGraphQLHandlerFactory,
@@ -37,7 +43,8 @@ import { TenantConfigResolver } from './config/tenantConfigResolver'
37
43
  import { ProjectGroupContainerFactory } from './projectGroup/ProjectGroupContainer'
38
44
  import corsMiddleware from '@koa/cors'
39
45
  import { ProjectGroupResolver } from './projectGroup/ProjectGroupResolver'
40
- import { ProjectGroupContainer, ProjectGroupResolver as ProjectGroupResolverInterface } from '@contember/engine-http'
46
+ import { ProjectGroupResolver as ProjectGroupResolverInterface } from '@contember/engine-http'
47
+ import { Logger } from '@contember/engine-common'
41
48
 
42
49
  export interface MasterContainer {
43
50
  initializer: Initializer
@@ -114,7 +121,22 @@ export class MasterContainerFactory {
114
121
  new SystemGraphQLContextFactory())
115
122
  .addService('systemApiMiddlewareFactory', ({ debugMode, projectGroupResolver, systemGraphQLContextFactory }) =>
116
123
  new SystemApiMiddlewareFactory(debugMode, projectGroupResolver, systemGraphQLContextFactory))
117
- .addService('koaMiddlewares', ({ contentApiMiddlewareFactory, tenantApiMiddlewareFactory, systemApiMiddlewareFactory, httpErrorMiddlewareFactory, debugMode, version, serverConfig }) =>
124
+ .addService('logger', () =>
125
+ // eslint-disable-next-line no-console
126
+ new Logger(console.log))
127
+ .addService('contentSchemaTransferMappingFactory', () =>
128
+ new ContentSchemaTransferMappingFactory())
129
+ .addService('systemSchemaTransferMappingFactory', () =>
130
+ new SystemSchemaTransferMappingFactory())
131
+ .addService('importExecutor', ({ contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory, logger }) =>
132
+ new ImportExecutor(contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory, logger))
133
+ .addService('exportExecutor', ({ contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory }) =>
134
+ new ExportExecutor(contentSchemaTransferMappingFactory, systemSchemaTransferMappingFactory))
135
+ .addService('importApiMiddlewareFactory', ({ projectGroupResolver, importExecutor }) =>
136
+ new ImportApiMiddlewareFactory(projectGroupResolver, importExecutor))
137
+ .addService('exportApiMiddlewareFactory', ({ projectGroupResolver, exportExecutor }) =>
138
+ new ExportApiMiddlewareFactory(projectGroupResolver, exportExecutor))
139
+ .addService('koaMiddlewares', ({ contentApiMiddlewareFactory, tenantApiMiddlewareFactory, systemApiMiddlewareFactory, importApiMiddlewareFactory, exportApiMiddlewareFactory, httpErrorMiddlewareFactory, debugMode, version, serverConfig }) =>
118
140
  compose([
119
141
  koaCompress({
120
142
  br: false,
@@ -149,6 +171,20 @@ export class MasterContainerFactory {
149
171
  systemApiMiddlewareFactory.create(),
150
172
  ]),
151
173
  ),
174
+ route(
175
+ '/import$',
176
+ compose([
177
+ createModuleInfoMiddleware('transfer'),
178
+ importApiMiddlewareFactory.create(),
179
+ ]),
180
+ ),
181
+ route(
182
+ '/export$',
183
+ compose([
184
+ createModuleInfoMiddleware('transfer'),
185
+ exportApiMiddlewareFactory.create(),
186
+ ]),
187
+ ),
152
188
  ]))
153
189
  .addService('koa', ({ koaMiddlewares }) => {
154
190
  const app = new Koa()
@@ -28,7 +28,7 @@ export const logSentryError = (error: any, context: SentryErrorContext) => {
28
28
  scope.setTag('project', context.project)
29
29
  }
30
30
  scope.setTag('module', context.module)
31
- scope.setLevel(Sentry.Severity.Error)
31
+ scope.setLevel('error')
32
32
  scope.setUser({
33
33
  id: context.user,
34
34
  })