@luvio/graphql-parser 0.82.1 → 0.83.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.
package/dist/main.d.ts CHANGED
@@ -1,13 +1,13 @@
1
+ import { GraphQLSchema, GraphQLScalarType } from 'graphql';
2
+ import { buildASTSchema } from 'graphql/utilities';
1
3
  import { LuvioDocumentNode, LuvioArgumentNode, LuvioDefinitionNode, LuvioObjectValueNode, LuvioOperationDefinitionNode, LuvioSelectionCustomFieldNode, LuvioSelectionNode, LuvioSelectionObjectFieldNode, LuvioSelectionScalarFieldNode, LuvioValueNode, LuvioFieldNode, LuvioVariableDefinitionNode, LuvioVariableNode, LuvioNamedTypeNode, LuvioListTypeNode, LuvioListValueNode, LuvioTypeNode } from './ast';
2
- import { LuvioGraphQLSchema } from './luvio-schema';
3
4
  export declare function parseAndVisit(source: string): LuvioDocumentNode;
4
- export declare function parseLuvioSchema(source: string, schemaName: string): LuvioGraphQLSchema;
5
- export { LuvioGraphQLSchema };
6
5
  export type { GraphQLObjectType, GraphQLInterfaceType } from 'graphql/type';
7
- export type { ListTypeNode, BooleanValueNode, EnumTypeDefinitionNode, FieldDefinitionNode, FloatValueNode, InterfaceTypeDefinitionNode, IntValueNode, NamedTypeNode, ObjectTypeDefinitionNode, StringValueNode, TypeNode, UnionTypeDefinitionNode, } from 'graphql/language';
8
- export { Kind } from 'graphql/language';
6
+ export type { ListTypeNode, BooleanValueNode, EnumTypeDefinitionNode, FieldDefinitionNode, FloatValueNode, InterfaceTypeDefinitionNode, IntValueNode, NamedTypeNode, ObjectTypeDefinitionNode, StringValueNode, TypeNode, UnionTypeDefinitionNode, DocumentNode, } from 'graphql/language';
7
+ export { parse, Kind } from 'graphql/language';
9
8
  export { isScalarType } from 'graphql/type';
9
+ export { stripIgnoredCharacters } from 'graphql/utilities';
10
10
  /**
11
11
  * @deprecated - Schema-backed adapters will use standard graphql types re-exported from @luvio/graphql
12
12
  */
13
- export { LuvioDocumentNode, LuvioArgumentNode, LuvioDefinitionNode, LuvioObjectValueNode, LuvioOperationDefinitionNode, LuvioSelectionCustomFieldNode, LuvioSelectionNode, LuvioSelectionObjectFieldNode, LuvioSelectionScalarFieldNode, LuvioValueNode, LuvioFieldNode, LuvioVariableDefinitionNode, LuvioVariableNode, LuvioNamedTypeNode, LuvioListTypeNode, LuvioListValueNode, LuvioTypeNode, };
13
+ export { LuvioDocumentNode, LuvioArgumentNode, LuvioDefinitionNode, LuvioObjectValueNode, LuvioOperationDefinitionNode, LuvioSelectionCustomFieldNode, LuvioSelectionNode, LuvioSelectionObjectFieldNode, LuvioSelectionScalarFieldNode, LuvioValueNode, LuvioFieldNode, LuvioVariableDefinitionNode, LuvioVariableNode, LuvioNamedTypeNode, LuvioListTypeNode, LuvioListValueNode, LuvioTypeNode, GraphQLSchema, GraphQLScalarType, buildASTSchema, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luvio/graphql-parser",
3
- "version": "0.82.1",
3
+ "version": "0.83.0",
4
4
  "description": "GraphQL parser for Luvio GraphQL adapter support",
5
5
  "main": "./dist/luvioGraphqlParser.js",
6
6
  "module": "./dist/luvioGraphqlParser.mjs",
@@ -1,7 +1,7 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
3
  exports[`Luvio GraphQL Schema Parsing default implementation can parse github api 1`] = `
4
- LuvioGraphQLSchema {
4
+ LuvioGraphQLDSL {
5
5
  "schema": GraphQLSchema {
6
6
  "__validationErrors": undefined,
7
7
  "_directives": Array [
@@ -1995,7 +1995,7 @@ LuvioGraphQLSchema {
1995
1995
  `;
1996
1996
 
1997
1997
  exports[`Luvio GraphQL Schema Parsing default implementation can parse star wars api 1`] = `
1998
- LuvioGraphQLSchema {
1998
+ LuvioGraphQLDSL {
1999
1999
  "schema": GraphQLSchema {
2000
2000
  "__validationErrors": undefined,
2001
2001
  "_directives": Array [
package/src/main.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import { parse } from 'graphql/language';
2
+ import { GraphQLSchema, GraphQLScalarType } from 'graphql';
2
3
  import { buildASTSchema } from 'graphql/utilities';
4
+
3
5
  import {
4
6
  LuvioDocumentNode,
5
7
  LuvioArgumentNode,
@@ -20,7 +22,6 @@ import {
20
22
  LuvioTypeNode,
21
23
  } from './ast';
22
24
  import { transform } from './document';
23
- import { LuvioGraphQLSchema, LuvioSchema } from './luvio-schema';
24
25
 
25
26
  /*
26
27
  Deprecated - Remove after existing usages are removed.
@@ -30,16 +31,6 @@ export function parseAndVisit(source: string): LuvioDocumentNode {
30
31
  return transform(ast);
31
32
  }
32
33
 
33
- export function parseLuvioSchema(source: string, schemaName: string): LuvioGraphQLSchema {
34
- const schema = buildASTSchema(parse(source));
35
- return new LuvioSchema({
36
- schema,
37
- schemaName,
38
- });
39
- }
40
-
41
- export { LuvioGraphQLSchema };
42
-
43
34
  export type { GraphQLObjectType, GraphQLInterfaceType } from 'graphql/type';
44
35
  export type {
45
36
  ListTypeNode,
@@ -54,9 +45,11 @@ export type {
54
45
  StringValueNode,
55
46
  TypeNode,
56
47
  UnionTypeDefinitionNode,
48
+ DocumentNode,
57
49
  } from 'graphql/language';
58
- export { Kind } from 'graphql/language';
50
+ export { parse, Kind } from 'graphql/language';
59
51
  export { isScalarType } from 'graphql/type';
52
+ export { stripIgnoredCharacters } from 'graphql/utilities';
60
53
 
61
54
  /**
62
55
  * @deprecated - Schema-backed adapters will use standard graphql types re-exported from @luvio/graphql
@@ -79,4 +72,7 @@ export {
79
72
  LuvioListTypeNode,
80
73
  LuvioListValueNode,
81
74
  LuvioTypeNode,
75
+ GraphQLSchema,
76
+ GraphQLScalarType,
77
+ buildASTSchema,
82
78
  };
@@ -1,18 +0,0 @@
1
- import type { GraphQLScalarType, GraphQLSchema } from 'graphql';
2
- interface LuvioGraphQLSchemaParams {
3
- schema: GraphQLSchema;
4
- schemaName: string;
5
- }
6
- export interface LuvioGraphQLSchema {
7
- schema: Readonly<GraphQLSchema>;
8
- schemaName: Readonly<string>;
9
- customScalars: GraphQLScalarType[];
10
- }
11
- export declare class LuvioSchema implements LuvioGraphQLSchema {
12
- schema: Readonly<GraphQLSchema>;
13
- schemaName: Readonly<string>;
14
- customScalars: GraphQLScalarType[];
15
- constructor(luvioSchemaParams: Readonly<LuvioGraphQLSchemaParams>);
16
- private extractCustomScalars;
17
- }
18
- export {};
@@ -1,35 +0,0 @@
1
- import type { GraphQLScalarType, GraphQLSchema } from 'graphql';
2
- import { isScalarType } from 'graphql';
3
-
4
- interface LuvioGraphQLSchemaParams {
5
- schema: GraphQLSchema;
6
- schemaName: string;
7
- }
8
-
9
- export interface LuvioGraphQLSchema {
10
- schema: Readonly<GraphQLSchema>;
11
- schemaName: Readonly<string>;
12
- customScalars: GraphQLScalarType[];
13
- }
14
-
15
- export class LuvioSchema implements LuvioGraphQLSchema {
16
- // INVARIANT - Do not mutate the source schema, or add special AST or schema syntax,
17
- // just store additional information alongside it. In this way - we can accept this extra data in basically any format (RAML, JSON, YML)
18
- schema: Readonly<GraphQLSchema>;
19
- schemaName: Readonly<string>;
20
- customScalars: GraphQLScalarType[] = [];
21
-
22
- constructor(luvioSchemaParams: Readonly<LuvioGraphQLSchemaParams>) {
23
- this.schemaName = luvioSchemaParams.schemaName;
24
- this.schema = luvioSchemaParams.schema;
25
- this.extractCustomScalars();
26
- }
27
-
28
- private extractCustomScalars() {
29
- Object.values(this.schema.getTypeMap()).forEach((def) => {
30
- if (isScalarType(def) && def.astNode !== undefined) {
31
- this.customScalars.push(def);
32
- }
33
- });
34
- }
35
- }