@revisium/endpoint 1.0.0 → 1.1.0

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.
@@ -2,9 +2,22 @@
2
2
  import { AsyncLocalStorage } from 'async_hooks';
3
3
  import { GraphQLObjectType, GraphQLSchema } from 'graphql/type';
4
4
  import { ProxyCoreApiService } from '../../../endpoint-microservice/core-api/proxy-core-api.service';
5
- import { Converter, ConverterContextType } from '../../../endpoint-microservice/shared/converter';
5
+ import { Converter, ConverterContextType, ConverterTable } from '../../../endpoint-microservice/shared/converter';
6
+ interface CacheNode {
7
+ table: ConverterTable;
8
+ node: GraphQLObjectType;
9
+ fieldName: {
10
+ singular: string;
11
+ plural: string;
12
+ };
13
+ typeNames: {
14
+ singular: string;
15
+ plural: string;
16
+ };
17
+ }
6
18
  interface GraphQLSchemaConverterContext extends ConverterContextType {
7
19
  pageInfo: GraphQLObjectType;
20
+ nodes: Record<string, CacheNode>;
8
21
  }
9
22
  export declare class GraphQLSchemaConverter implements Converter<GraphQLSchema> {
10
23
  private readonly asyncLocalStorage;
@@ -13,15 +26,27 @@ export declare class GraphQLSchemaConverter implements Converter<GraphQLSchema>
13
26
  constructor(asyncLocalStorage: AsyncLocalStorage<GraphQLSchemaConverterContext>, proxyCoreApi: ProxyCoreApiService);
14
27
  convert(context: ConverterContextType): Promise<GraphQLSchema>;
15
28
  private createSchema;
29
+ private createServiceField;
16
30
  private createQueryFields;
31
+ private getValidTables;
32
+ private buildNodesCache;
33
+ private createFieldsFromNodes;
34
+ private generateFieldAndTypeNames;
35
+ private getItemResolver;
36
+ private createItemField;
17
37
  private createListField;
18
38
  private getListResolver;
19
39
  private getListConnection;
20
40
  private getListArgs;
21
41
  private getEdgeType;
22
42
  private getNodeType;
23
- private getSchema;
43
+ private mapSchemaTypeToGraphQL;
24
44
  private getObjectSchema;
45
+ private getSchemaConfig;
46
+ private tryGettingForeignKeyFieldConfig;
47
+ private tryGettingForeignKeyArrayFieldConfig;
48
+ private getFieldResolver;
49
+ private getFieldArrayItemResolver;
25
50
  private get projectName();
26
51
  private toGraphQLError;
27
52
  private get context();
@@ -21,6 +21,8 @@ const constants_1 = require("./constants");
21
21
  const types_1 = require("./types");
22
22
  const utils_1 = require("./utils");
23
23
  const stringUtils_1 = require("../../shared/utils/stringUtils");
24
+ const DATA_KEY = 'data';
25
+ const ITEMS_POSTFIX = 'Items';
24
26
  let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConverter {
25
27
  constructor(asyncLocalStorage, proxyCoreApi) {
26
28
  this.asyncLocalStorage = asyncLocalStorage;
@@ -31,6 +33,7 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
31
33
  const graphQLSchemaConverterContext = {
32
34
  ...context,
33
35
  pageInfo: (0, types_1.getPageInfoType)((0, utils_1.getProjectName)(context.projectName)),
36
+ nodes: {},
34
37
  };
35
38
  return this.asyncLocalStorage.run(graphQLSchemaConverterContext, async () => {
36
39
  const schema = await this.createSchema();
@@ -44,43 +47,106 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
44
47
  name: 'Query',
45
48
  fields: {
46
49
  ...this.createQueryFields(),
47
- _service: {
48
- type: types_1.ServiceType,
49
- resolve: () => {
50
- if (!cachedSdl) {
51
- cachedSdl = (0, utilities_1.printSchema)(schema);
52
- }
53
- return { sdl: cachedSdl };
54
- },
55
- },
50
+ _service: this.createServiceField(() => {
51
+ if (!cachedSdl) {
52
+ cachedSdl = (0, utilities_1.printSchema)(schema);
53
+ }
54
+ return { sdl: cachedSdl };
55
+ }),
56
56
  },
57
57
  }),
58
58
  });
59
59
  return schema;
60
60
  }
61
+ createServiceField(resolver) {
62
+ return {
63
+ type: types_1.ServiceType,
64
+ resolve: resolver,
65
+ };
66
+ }
61
67
  createQueryFields() {
62
- const ids = this.context.tables.map((table) => table.id);
63
- return this.context.tables
64
- .filter((table) => !(0, utils_1.isEmptyObject)(table.schema))
65
- .reduce((fields, table) => {
66
- const safeName = (0, stringUtils_1.hasDuplicateKeyCaseInsensitive)(ids, table.id)
67
- ? (0, utils_1.getSafetyName)(table.id, 'INVALID_TABLE_NAME')
68
- : (0, utils_1.getSafetyName)(table.id.toLowerCase(), 'INVALID_TABLE_NAME');
69
- const pluralName = (0, stringUtils_1.pluralize)(safeName);
70
- const capitalizedSafeName = (0, stringUtils_1.hasDuplicateKeyCaseInsensitive)(ids, table.id)
71
- ? safeName
72
- : (0, stringUtils_1.capitalize)(safeName);
73
- const pluralCapitalizedSafeName = (0, stringUtils_1.pluralize)(capitalizedSafeName);
74
- fields[pluralName] = this.createListField(table, capitalizedSafeName, pluralCapitalizedSafeName);
68
+ const tables = this.getValidTables();
69
+ const tableIds = tables.map((table) => table.id);
70
+ this.buildNodesCache(tables, tableIds);
71
+ return this.createFieldsFromNodes();
72
+ }
73
+ getValidTables() {
74
+ return this.context.tables.filter((table) => !(0, utils_1.isEmptyObject)(table.schema));
75
+ }
76
+ buildNodesCache(tables, tableIds) {
77
+ this.context.nodes = tables.reduce((nodes, table) => {
78
+ const { fieldName, typeNames } = this.generateFieldAndTypeNames(table.id, tableIds);
79
+ const options = {
80
+ table,
81
+ safetyTableId: typeNames.singular,
82
+ pluralSafetyTableId: typeNames.plural,
83
+ };
84
+ const node = this.getNodeType(options);
85
+ nodes[table.id] = {
86
+ table,
87
+ node,
88
+ fieldName,
89
+ typeNames,
90
+ };
91
+ return nodes;
92
+ }, {});
93
+ }
94
+ createFieldsFromNodes() {
95
+ return Object.values(this.context.nodes).reduce((fields, { table, node, fieldName, typeNames }) => {
96
+ const options = {
97
+ table,
98
+ safetyTableId: typeNames.singular,
99
+ pluralSafetyTableId: typeNames.plural,
100
+ };
101
+ fields[fieldName.singular] = this.createItemField(options, node);
102
+ fields[fieldName.plural] = this.createListField(options, node);
75
103
  return fields;
76
104
  }, {});
77
105
  }
78
- createListField(table, safetyTableId, pluralSafetyTableId) {
79
- const ConnectionType = this.getListConnection(table, safetyTableId, pluralSafetyTableId);
106
+ generateFieldAndTypeNames(tableId, allTableIds) {
107
+ const hasDuplicate = (0, stringUtils_1.hasDuplicateKeyCaseInsensitive)(allTableIds, tableId);
108
+ const safeName = hasDuplicate
109
+ ? (0, utils_1.getSafetyName)(tableId, 'INVALID_TABLE_NAME')
110
+ : (0, utils_1.getSafetyName)(tableId.toLowerCase(), 'INVALID_TABLE_NAME');
111
+ const singularFieldName = safeName;
112
+ const pluralFieldName = (0, stringUtils_1.pluralize)(safeName);
113
+ const singularTypeName = hasDuplicate ? safeName : (0, stringUtils_1.capitalize)(safeName);
114
+ const pluralTypeName = (0, stringUtils_1.pluralize)(singularTypeName);
115
+ return {
116
+ fieldName: {
117
+ singular: singularFieldName,
118
+ plural: pluralFieldName,
119
+ },
120
+ typeNames: {
121
+ singular: singularTypeName,
122
+ plural: pluralTypeName,
123
+ },
124
+ };
125
+ }
126
+ getItemResolver(table) {
127
+ const revisionId = this.context.revisionId;
128
+ return async (_, { id }, ctx) => {
129
+ const { data: response, error } = await this.proxyCoreApi.api.row(revisionId, table.id, id, { headers: ctx.headers });
130
+ if (error)
131
+ throw this.toGraphQLError(error);
132
+ return response;
133
+ };
134
+ }
135
+ createItemField(options, node) {
136
+ return {
137
+ type: new type_1.GraphQLNonNull(node),
138
+ args: {
139
+ id: { type: new type_1.GraphQLNonNull(type_1.GraphQLString) },
140
+ },
141
+ resolve: this.getItemResolver(options.table),
142
+ };
143
+ }
144
+ createListField(options, node) {
145
+ const ConnectionType = this.getListConnection(options, node);
80
146
  return {
81
147
  type: new type_1.GraphQLNonNull(ConnectionType),
82
- args: { data: { type: this.getListArgs(pluralSafetyTableId) } },
83
- resolve: this.getListResolver(table),
148
+ args: { data: { type: this.getListArgs(options.pluralSafetyTableId) } },
149
+ resolve: this.getListResolver(options.table),
84
150
  };
85
151
  }
86
152
  getListResolver(table) {
@@ -97,12 +163,12 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
97
163
  return response;
98
164
  };
99
165
  }
100
- getListConnection(data, safetyTableId, pluralSafetyTableId) {
166
+ getListConnection(options, node) {
101
167
  return new type_1.GraphQLObjectType({
102
- name: `${this.projectName}${pluralSafetyTableId}Connection`,
168
+ name: `${this.projectName}${options.pluralSafetyTableId}Connection`,
103
169
  fields: {
104
170
  edges: {
105
- type: new type_1.GraphQLNonNull(new type_1.GraphQLList(new type_1.GraphQLNonNull(this.getEdgeType(data, safetyTableId, pluralSafetyTableId)))),
171
+ type: new type_1.GraphQLNonNull(new type_1.GraphQLList(new type_1.GraphQLNonNull(this.getEdgeType(options, node)))),
106
172
  },
107
173
  pageInfo: { type: new type_1.GraphQLNonNull(this.context.pageInfo) },
108
174
  totalCount: { type: new type_1.GraphQLNonNull(type_1.GraphQLFloat) },
@@ -118,33 +184,33 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
118
184
  },
119
185
  });
120
186
  }
121
- getEdgeType(data, safetyTableId, pluralSafetyTableId) {
187
+ getEdgeType(options, node) {
122
188
  return new type_1.GraphQLObjectType({
123
- name: `${this.projectName}${pluralSafetyTableId}Edge`,
189
+ name: `${this.projectName}${options.pluralSafetyTableId}Edge`,
124
190
  fields: {
125
191
  node: {
126
- type: new type_1.GraphQLNonNull(this.getNodeType(data, safetyTableId, pluralSafetyTableId)),
192
+ type: new type_1.GraphQLNonNull(node),
127
193
  },
128
194
  cursor: { type: new type_1.GraphQLNonNull(type_1.GraphQLString) },
129
195
  },
130
196
  });
131
197
  }
132
- getNodeType(data, safetyTableId, pluralSafetyTableId) {
198
+ getNodeType(options) {
133
199
  return new type_1.GraphQLObjectType({
134
- name: `${this.projectName}${pluralSafetyTableId}Node`,
200
+ name: `${this.projectName}${options.pluralSafetyTableId}Node`,
135
201
  fields: () => ({
136
202
  versionId: { type: new type_1.GraphQLNonNull(type_1.GraphQLString) },
203
+ createdId: { type: new type_1.GraphQLNonNull(type_1.GraphQLString) },
137
204
  id: { type: new type_1.GraphQLNonNull(type_1.GraphQLString) },
138
205
  createdAt: { type: new type_1.GraphQLNonNull(types_1.DateTimeType) },
139
- data: {
140
- type: this.getSchema(`${this.projectName}${safetyTableId}`, data.schema),
141
- },
206
+ updatedAt: { type: new type_1.GraphQLNonNull(types_1.DateTimeType) },
207
+ [DATA_KEY]: this.getSchemaConfig(options.table.schema, DATA_KEY, `${this.projectName}${options.safetyTableId}`),
142
208
  }),
143
209
  });
144
210
  }
145
- getSchema(name, schema, postfix = '') {
211
+ mapSchemaTypeToGraphQL(typeName, schema, postfix = '') {
146
212
  if ('$ref' in schema) {
147
- throw new common_1.InternalServerErrorException(`endpointId: ${this.context.endpointId}, unssuported $ref in schema: ${JSON.stringify(schema)}`);
213
+ throw new common_1.InternalServerErrorException(`endpointId: ${this.context.endpointId}, unsupported $ref in schema: ${JSON.stringify(schema)}`);
148
214
  }
149
215
  switch (schema.type) {
150
216
  case 'string':
@@ -154,9 +220,9 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
154
220
  case 'boolean':
155
221
  return new type_1.GraphQLNonNull(type_1.GraphQLBoolean);
156
222
  case 'object':
157
- return new type_1.GraphQLNonNull(this.getObjectSchema(`${name}${postfix}`, schema));
223
+ return new type_1.GraphQLNonNull(this.getObjectSchema(`${typeName}${postfix}`, schema));
158
224
  case 'array':
159
- return new type_1.GraphQLNonNull(new type_1.GraphQLList(this.getSchema(`${name}${postfix}`, schema.items, 'Items')));
225
+ return new type_1.GraphQLNonNull(new type_1.GraphQLList(this.mapSchemaTypeToGraphQL(`${typeName}${postfix}`, schema.items, ITEMS_POSTFIX)));
160
226
  default:
161
227
  throw new common_1.InternalServerErrorException(`endpointId: ${this.context.endpointId}, unknown schema: ${JSON.stringify(schema)}`);
162
228
  }
@@ -172,12 +238,76 @@ let GraphQLSchemaConverter = GraphQLSchemaConverter_1 = class GraphQLSchemaConve
172
238
  const capitalizedSafetyKey = (0, stringUtils_1.hasDuplicateKeyCaseInsensitive)(ids, key)
173
239
  ? key
174
240
  : (0, stringUtils_1.capitalize)(key);
175
- const type = this.getSchema(`${name}${capitalizedSafetyKey}`, itemSchema);
176
- fields[key] = { type };
241
+ fields[key] = this.getSchemaConfig(itemSchema, key, `${name}${capitalizedSafetyKey}`);
177
242
  return fields;
178
243
  }, {}),
179
244
  });
180
245
  }
246
+ getSchemaConfig(schema, field, typeName) {
247
+ const foreignKeyConfig = this.tryGettingForeignKeyFieldConfig(schema, field);
248
+ if (foreignKeyConfig) {
249
+ return foreignKeyConfig;
250
+ }
251
+ const foreignKeyArrayConfig = this.tryGettingForeignKeyArrayFieldConfig(schema, field);
252
+ if (foreignKeyArrayConfig) {
253
+ return foreignKeyArrayConfig;
254
+ }
255
+ const type = this.mapSchemaTypeToGraphQL(typeName, schema);
256
+ return {
257
+ type,
258
+ };
259
+ }
260
+ tryGettingForeignKeyFieldConfig(schema, field) {
261
+ const isForeignKey = !('$ref' in schema) && schema.type === 'string' && schema.foreignKey;
262
+ if (isForeignKey) {
263
+ return {
264
+ type: new type_1.GraphQLNonNull(this.context.nodes[schema.foreignKey].node),
265
+ resolve: this.getFieldResolver(schema.foreignKey, field),
266
+ };
267
+ }
268
+ return null;
269
+ }
270
+ tryGettingForeignKeyArrayFieldConfig(schema, field) {
271
+ if (!('$ref' in schema) &&
272
+ schema.type === 'array' &&
273
+ !('$ref' in schema.items) &&
274
+ schema.items.type === 'string' &&
275
+ schema.items.foreignKey) {
276
+ return {
277
+ type: new type_1.GraphQLNonNull(new type_1.GraphQLList(new type_1.GraphQLNonNull(this.context.nodes[schema.items.foreignKey].node))),
278
+ resolve: this.getFieldArrayItemResolver(schema.items.foreignKey, field),
279
+ };
280
+ }
281
+ return null;
282
+ }
283
+ getFieldResolver(foreignTableId, field) {
284
+ const revisionId = this.context.revisionId;
285
+ return async (parent, _, context) => {
286
+ const { data: response, error } = await this.proxyCoreApi.api.row(revisionId, foreignTableId, parent[field], {
287
+ headers: context.headers,
288
+ });
289
+ if (error)
290
+ throw this.toGraphQLError(error);
291
+ return response;
292
+ };
293
+ }
294
+ getFieldArrayItemResolver(foreignTableId, field) {
295
+ const revisionId = this.context.revisionId;
296
+ return async (parent, _, context) => {
297
+ const ids = parent[field];
298
+ if (!ids?.length)
299
+ return [];
300
+ const promises = ids.map(async (id) => {
301
+ const { data: response, error } = await this.proxyCoreApi.api.row(revisionId, foreignTableId, id, {
302
+ headers: context.headers,
303
+ });
304
+ if (error)
305
+ throw this.toGraphQLError(error);
306
+ return response;
307
+ });
308
+ return Promise.all(promises);
309
+ };
310
+ }
181
311
  get projectName() {
182
312
  return (0, utils_1.getProjectName)(this.context.projectName);
183
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"graphql-schema.converter.js","sourceRoot":"","sources":["../../../../src/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql-schema.converter.js","sourceRoot":"","sources":["../../../../src/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.ts"],"names":[],"mappings":"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"}