@luvio/graphql-parser 0.158.7 → 5.42.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/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/types/index.d.ts +0 -0
- package/dist/types/v1/__tests__/gql.spec.d.ts +1 -0
- package/dist/types/v1/__tests__/utils.d.ts +4 -0
- package/dist/types/v1/index.d.ts +6 -0
- package/dist/v1/index.js +2629 -0
- package/dist/v1/index.js.map +1 -0
- package/package.json +24 -21
- package/dist/cjs/luvioGraphqlParser.js +0 -11537
- package/dist/cjs/types/argument-node.d.ts +0 -4
- package/dist/cjs/types/ast.d.ts +0 -95
- package/dist/cjs/types/constants.d.ts +0 -12
- package/dist/cjs/types/directive-node.d.ts +0 -5
- package/dist/cjs/types/document.d.ts +0 -3
- package/dist/cjs/types/field-node.d.ts +0 -4
- package/dist/cjs/types/fragment-spread-node.d.ts +0 -4
- package/dist/cjs/types/fragment.d.ts +0 -3
- package/dist/cjs/types/inline-fragment-node.d.ts +0 -4
- package/dist/cjs/types/main.d.ts +0 -18
- package/dist/cjs/types/metaschema.d.ts +0 -10
- package/dist/cjs/types/operation/index.d.ts +0 -3
- package/dist/cjs/types/operation/query/index.d.ts +0 -6
- package/dist/cjs/types/type-node.d.ts +0 -3
- package/dist/cjs/types/util/language.d.ts +0 -9
- package/dist/cjs/types/value-node.d.ts +0 -4
- package/dist/cjs/types/variable-definition.d.ts +0 -4
- package/dist/cjs/types/visitor.d.ts +0 -4
- package/dist/esm/luvioGraphqlParser.js +0 -11516
- package/dist/esm/types/argument-node.d.ts +0 -4
- package/dist/esm/types/ast.d.ts +0 -95
- package/dist/esm/types/constants.d.ts +0 -12
- package/dist/esm/types/directive-node.d.ts +0 -5
- package/dist/esm/types/document.d.ts +0 -3
- package/dist/esm/types/field-node.d.ts +0 -4
- package/dist/esm/types/fragment-spread-node.d.ts +0 -4
- package/dist/esm/types/fragment.d.ts +0 -3
- package/dist/esm/types/gql.d.ts +0 -47
- package/dist/esm/types/inline-fragment-node.d.ts +0 -4
- package/dist/esm/types/main.d.ts +0 -18
- package/dist/esm/types/metaschema.d.ts +0 -10
- package/dist/esm/types/operation/index.d.ts +0 -3
- package/dist/esm/types/operation/query/index.d.ts +0 -6
- package/dist/esm/types/type-node.d.ts +0 -3
- package/dist/esm/types/util/language.d.ts +0 -9
- package/dist/esm/types/value-node.d.ts +0 -4
- package/dist/esm/types/variable-definition.d.ts +0 -4
- package/dist/esm/types/visitor.d.ts +0 -4
- /package/dist/{cjs/types → types/v1}/gql.d.ts +0 -0
package/dist/esm/types/ast.d.ts
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import type { DocumentNode, OperationDefinitionNode, FieldNode, ArgumentNode, IntValueNode, ListValueNode, ObjectValueNode, FloatValueNode, StringValueNode, BooleanValueNode, NullValueNode, EnumValueNode, VariableNode, DirectiveNode, VariableDefinitionNode, NonNullTypeNode, ListTypeNode, NamedTypeNode, FragmentSpreadNode, InlineFragmentNode, FragmentDefinitionNode, DefinitionNode, TypeNode } from 'graphql/language';
|
|
2
|
-
/**
|
|
3
|
-
* Luvio specific custom GraphQL AST
|
|
4
|
-
*
|
|
5
|
-
* - Omit Location
|
|
6
|
-
* - flatten NameNode for easier value access
|
|
7
|
-
* - Add luvioSelections for custom selections
|
|
8
|
-
* - LuvioSelectionCustomFieldNode for fields with custom client side directives
|
|
9
|
-
*/
|
|
10
|
-
export interface LuvioDocumentNode extends Omit<DocumentNode, 'loc' | 'definitions'> {
|
|
11
|
-
definitions: LuvioDefinitionNode[];
|
|
12
|
-
}
|
|
13
|
-
export type LuvioDefinitionNode = LuvioOperationDefinitionNode | LuvioFragmentDefinitionNode;
|
|
14
|
-
export interface LuvioOperationDefinitionNode extends Omit<OperationDefinitionNode, 'loc' | 'name' | 'variableDefinitions' | 'directives' | 'selectionSet'> {
|
|
15
|
-
name?: string;
|
|
16
|
-
variableDefinitions?: LuvioVariableDefinitionNode[];
|
|
17
|
-
directives?: LuvioDirectiveNode[];
|
|
18
|
-
luvioSelections: LuvioSelectionNode[];
|
|
19
|
-
}
|
|
20
|
-
export interface LuvioVariableDefinitionNode extends Omit<VariableDefinitionNode, 'loc' | 'variable' | 'type' | 'defaultValue' | 'directives'> {
|
|
21
|
-
variable: LuvioVariableNode;
|
|
22
|
-
type: LuvioTypeNode;
|
|
23
|
-
defaultValue?: LuvioValueNode;
|
|
24
|
-
directives?: LuvioDirectiveNode[];
|
|
25
|
-
}
|
|
26
|
-
export interface LuvioVariableNode extends Omit<VariableNode, 'loc' | 'name'> {
|
|
27
|
-
name: string;
|
|
28
|
-
}
|
|
29
|
-
export type LuvioSelectionNode = LuvioFieldNode | LuvioFragmentSpreadNode | LuvioInlineFragmentNode;
|
|
30
|
-
export type LuvioFieldNode = LuvioSelectionScalarFieldNode | LuvioSelectionObjectFieldNode | LuvioSelectionCustomFieldNode;
|
|
31
|
-
export interface LuvioArgumentNode extends Omit<ArgumentNode, 'loc' | 'name' | 'value'> {
|
|
32
|
-
name: string;
|
|
33
|
-
value: LuvioValueNode;
|
|
34
|
-
}
|
|
35
|
-
export interface LuvioFragmentSpreadNode extends Omit<FragmentSpreadNode, 'loc' | 'name' | 'directives'> {
|
|
36
|
-
name: string;
|
|
37
|
-
directives?: LuvioDirectiveNode[];
|
|
38
|
-
}
|
|
39
|
-
export interface LuvioInlineFragmentNode extends Omit<InlineFragmentNode, 'loc' | 'typeCondition' | 'directives' | 'selectionSet'> {
|
|
40
|
-
typeCondition?: LuvioNamedTypeNode;
|
|
41
|
-
directives?: LuvioDirectiveNode[];
|
|
42
|
-
luvioSelections: LuvioSelectionNode[];
|
|
43
|
-
}
|
|
44
|
-
export interface LuvioFragmentDefinitionNode extends Omit<FragmentDefinitionNode, 'loc' | 'name' | 'variableDefinitions' | 'typeCondition' | 'directives' | 'selectionSet'> {
|
|
45
|
-
name: string;
|
|
46
|
-
variableDefinitions?: LuvioVariableDefinitionNode[];
|
|
47
|
-
typeCondition: LuvioNamedTypeNode;
|
|
48
|
-
directives?: LuvioDirectiveNode[];
|
|
49
|
-
luvioSelections: LuvioSelectionNode[];
|
|
50
|
-
}
|
|
51
|
-
export type LuvioValueNode = LuvioVariableNode | IntValueNode | FloatValueNode | StringValueNode | BooleanValueNode | NullValueNode | EnumValueNode | LuvioListValueNode | LuvioObjectValueNode;
|
|
52
|
-
export interface LuvioListValueNode extends Omit<ListValueNode, 'loc' | 'values'> {
|
|
53
|
-
values: LuvioValueNode[];
|
|
54
|
-
}
|
|
55
|
-
export interface LuvioObjectValueNode extends Omit<ObjectValueNode, 'loc' | 'fields'> {
|
|
56
|
-
fields: {
|
|
57
|
-
[name: string]: LuvioValueNode;
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
export interface LuvioDirectiveNode extends Omit<DirectiveNode, 'loc' | 'name' | 'arguments'> {
|
|
61
|
-
name: string;
|
|
62
|
-
arguments?: LuvioArgumentNode[];
|
|
63
|
-
}
|
|
64
|
-
export type LuvioTypeNode = LuvioNamedTypeNode | LuvioListTypeNode | LuvioNonNullTypeNode;
|
|
65
|
-
export interface LuvioNamedTypeNode extends Omit<NamedTypeNode, 'loc' | 'name'> {
|
|
66
|
-
name: string;
|
|
67
|
-
}
|
|
68
|
-
export interface LuvioListTypeNode extends Omit<ListTypeNode, 'loc' | 'type'> {
|
|
69
|
-
type: LuvioTypeNode;
|
|
70
|
-
}
|
|
71
|
-
export interface LuvioNonNullTypeNode extends Omit<NonNullTypeNode, 'loc' | 'type'> {
|
|
72
|
-
type: LuvioNamedTypeNode | LuvioListTypeNode;
|
|
73
|
-
}
|
|
74
|
-
export interface LuvioSelectionScalarFieldNode extends Omit<FieldNode, 'kind' | 'loc' | 'alias' | 'name' | 'arguments' | 'directives' | 'selectionSet'> {
|
|
75
|
-
kind: 'ScalarFieldSelection';
|
|
76
|
-
alias?: string;
|
|
77
|
-
name: string;
|
|
78
|
-
}
|
|
79
|
-
export interface LuvioSelectionObjectFieldNode extends Omit<FieldNode, 'kind' | 'loc' | 'alias' | 'name' | 'arguments' | 'directives' | 'selectionSet'> {
|
|
80
|
-
kind: 'ObjectFieldSelection';
|
|
81
|
-
alias?: string;
|
|
82
|
-
name: string;
|
|
83
|
-
arguments?: LuvioArgumentNode[];
|
|
84
|
-
directives?: LuvioDirectiveNode[];
|
|
85
|
-
luvioSelections?: LuvioSelectionNode[];
|
|
86
|
-
}
|
|
87
|
-
export interface LuvioSelectionCustomFieldNode extends Omit<LuvioSelectionObjectFieldNode, 'kind'> {
|
|
88
|
-
kind: 'CustomFieldSelection';
|
|
89
|
-
type: string;
|
|
90
|
-
}
|
|
91
|
-
export declare function isOperationDefinitionNode(input: DefinitionNode): input is OperationDefinitionNode;
|
|
92
|
-
export declare function isFragmentDefinitionNode(input: DefinitionNode): input is FragmentDefinitionNode;
|
|
93
|
-
export declare function isNamedTypeNode(input: TypeNode): input is NamedTypeNode;
|
|
94
|
-
export declare function isListTypeNode(input: TypeNode): input is ListTypeNode;
|
|
95
|
-
export declare function isNonNullTypeNode(input: TypeNode): input is NonNullTypeNode;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export declare const CUSTOM_DIRECTIVE_CONNECTION = "connection";
|
|
2
|
-
export declare const CUSTOM_DIRECTIVE_RESOURCE = "resource";
|
|
3
|
-
export declare const NODE_KIND_CUSTOM_FIELD_SELECTION = "CustomFieldSelection";
|
|
4
|
-
export declare const NODE_KIND_FIELD = "Field";
|
|
5
|
-
export declare const NODE_KIND_FRAGMENT_SPREAD = "FragmentSpread";
|
|
6
|
-
export declare const NODE_KIND_INLINE_FRAGMENT = "InlineFragment";
|
|
7
|
-
export declare const NODE_KIND_LIST_TYPE = "ListType";
|
|
8
|
-
export declare const NODE_KIND_NAMED_TYPE = "NamedType";
|
|
9
|
-
export declare const NODE_KIND_NON_NULL_TYPE = "NonNullType";
|
|
10
|
-
export declare const NODE_KIND_OBJECT_FIELD_SELECTION = "ObjectFieldSelection";
|
|
11
|
-
export declare const NODE_KIND_SCALAR_FIELD_SELECTION = "ScalarFieldSelection";
|
|
12
|
-
export declare const NODE_TYPE_CONNECTION = "Connection";
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { DirectiveNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioDirectiveNode } from './ast';
|
|
3
|
-
import type { TransformState } from './operation/query';
|
|
4
|
-
export declare function transform(node: DirectiveNode, transformState: TransformState): LuvioDirectiveNode;
|
|
5
|
-
export declare function isCustomDirective(node: DirectiveNode): boolean;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { FragmentSpreadNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioFragmentSpreadNode } from './ast';
|
|
3
|
-
import type { TransformState } from './operation/query';
|
|
4
|
-
export declare function transform(node: FragmentSpreadNode, transformState: TransformState): LuvioFragmentSpreadNode;
|
package/dist/esm/types/gql.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Exposes a tagged template literal to parse graphql operation string
|
|
3
|
-
* "gql" is the only publicly exposed method
|
|
4
|
-
* @module gql
|
|
5
|
-
*/
|
|
6
|
-
import type { DefinitionNode, DocumentNode } from 'graphql/language';
|
|
7
|
-
export type AstResolver = (astReference: any) => DocumentNode | undefined;
|
|
8
|
-
/**
|
|
9
|
-
* we should look into optimizing this before it turns into a memory hog
|
|
10
|
-
* weakmaps, or limiting the size of the cache, or something
|
|
11
|
-
*/
|
|
12
|
-
export declare const docMap: Map<string, DocumentNode>;
|
|
13
|
-
/**
|
|
14
|
-
* Opaque reference map to return keys to userland
|
|
15
|
-
* As a user shouldn't have access to the Document
|
|
16
|
-
*/
|
|
17
|
-
export declare const referenceMap: WeakMap<Object, DocumentNode>;
|
|
18
|
-
/**
|
|
19
|
-
* Returns document node if cached or else update the cache and return the document node
|
|
20
|
-
* @param inputString - operation string
|
|
21
|
-
* @returns DocumentNode
|
|
22
|
-
*/
|
|
23
|
-
export declare function parseDocument(inputString: string): DocumentNode | null;
|
|
24
|
-
export declare function updateReferenceMapWithKnownKey(doc: DocumentNode, key: object): void;
|
|
25
|
-
export declare function updateReferenceMapAndGetKey(doc: DocumentNode): object;
|
|
26
|
-
/**
|
|
27
|
-
* Insert string and fragment substitutions with the actual nodes
|
|
28
|
-
* @param inputString
|
|
29
|
-
* @param substitutions - string | fragment DocumentNode
|
|
30
|
-
* @returns { operation string, fragment docs [] }
|
|
31
|
-
*/
|
|
32
|
-
export declare function processSubstitutions(inputString: ReadonlyArray<string>, substitutions: (string | object)[]): {
|
|
33
|
-
operationString: string;
|
|
34
|
-
fragments: DefinitionNode[];
|
|
35
|
-
} | null;
|
|
36
|
-
/**
|
|
37
|
-
*
|
|
38
|
-
* @param astReference - ast reference passed from user land
|
|
39
|
-
*/
|
|
40
|
-
export declare const astResolver: AstResolver;
|
|
41
|
-
/**
|
|
42
|
-
*
|
|
43
|
-
* @param literals - operation query string
|
|
44
|
-
* @param subs - all other substitutions
|
|
45
|
-
* @returns an opaque reference to the parsed document
|
|
46
|
-
*/
|
|
47
|
-
export declare function gql(literals: ReadonlyArray<string> | string, ...subs: (string | object)[]): object | null;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { InlineFragmentNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioInlineFragmentNode } from './ast';
|
|
3
|
-
import type { TransformState } from './operation/query';
|
|
4
|
-
export declare function transform(node: InlineFragmentNode, transformState: TransformState): LuvioInlineFragmentNode;
|
package/dist/esm/types/main.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { GraphQLSchema, GraphQLScalarType, execute, buildSchema, extendSchema, getNamedType, isObjectType, validateSchema, NameNode, GraphQLError, ObjectValueNode, defaultFieldResolver, type ASTNode, type DefinitionNode } from 'graphql';
|
|
2
|
-
import { buildASTSchema } from 'graphql/utilities';
|
|
3
|
-
import { LuvioDocumentNode, LuvioArgumentNode, LuvioDefinitionNode, LuvioObjectValueNode, LuvioOperationDefinitionNode, LuvioSelectionCustomFieldNode, LuvioSelectionNode, LuvioSelectionObjectFieldNode, LuvioSelectionScalarFieldNode, LuvioValueNode, LuvioFieldNode, LuvioVariableDefinitionNode, LuvioVariableNode, LuvioNamedTypeNode, LuvioListTypeNode, LuvioListValueNode, LuvioTypeNode } from './ast';
|
|
4
|
-
export type { GraphQLObjectType, GraphQLInterfaceType, GraphQLDirective, GraphQLUnionType, GraphQLNamedType, } from 'graphql/type';
|
|
5
|
-
export type { ListTypeNode, BooleanValueNode, EnumTypeDefinitionNode, FieldDefinitionNode, FloatValueNode, InterfaceTypeDefinitionNode, IntValueNode, NamedTypeNode, ObjectTypeDefinitionNode, StringValueNode, TypeNode, UnionTypeDefinitionNode, DocumentNode, OperationDefinitionNode, FieldNode, ArgumentNode, ValueNode, SelectionNode, SelectionSetNode, FragmentDefinitionNode, DirectiveNode, ObjectFieldNode, ScalarTypeDefinitionNode, InputObjectTypeDefinitionNode, InlineFragmentNode, FragmentSpreadNode, VariableDefinitionNode, ListValueNode, VariableNode, } from 'graphql/language';
|
|
6
|
-
export { ASTVisitor, parse, Kind, print, visit } from 'graphql/language';
|
|
7
|
-
export { isScalarType } from 'graphql/type';
|
|
8
|
-
export { stripIgnoredCharacters } from 'graphql/utilities';
|
|
9
|
-
export { gql, astResolver } from './gql';
|
|
10
|
-
export type { AstResolver } from './gql';
|
|
11
|
-
/**
|
|
12
|
-
* @deprecated - Schema-backed adapters will use standard graphql types re-exported from @luvio/graphql
|
|
13
|
-
*/
|
|
14
|
-
export { LuvioDocumentNode, LuvioArgumentNode, LuvioDefinitionNode, LuvioObjectValueNode, LuvioOperationDefinitionNode, LuvioSelectionCustomFieldNode, LuvioSelectionNode, LuvioSelectionObjectFieldNode, LuvioSelectionScalarFieldNode, LuvioValueNode, LuvioFieldNode, LuvioVariableDefinitionNode, LuvioVariableNode, LuvioNamedTypeNode, LuvioListTypeNode, LuvioListValueNode, LuvioTypeNode, GraphQLSchema, GraphQLScalarType, NameNode, GraphQLError, ASTNode, DefinitionNode, ObjectValueNode, buildASTSchema, execute, buildSchema, extendSchema, getNamedType, isObjectType, validateSchema, defaultFieldResolver, };
|
|
15
|
-
/**
|
|
16
|
-
* @deprecated In favor of gql tagged template literal
|
|
17
|
-
*/
|
|
18
|
-
export declare function parseAndVisit(source: string): LuvioDocumentNode;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Add metaschema annotations to their corresponding custom notation counterparts
|
|
3
|
-
* @module metaschemaMapper
|
|
4
|
-
*/
|
|
5
|
-
import type { DocumentNode } from 'graphql/language';
|
|
6
|
-
/**
|
|
7
|
-
* Accepts a document node and replaces the legacy custom directives with metaschema directives "in-place"
|
|
8
|
-
* @param doc
|
|
9
|
-
*/
|
|
10
|
-
export declare function metaschemaMapper(doc: DocumentNode): void;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { OperationDefinitionNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioOperationDefinitionNode } from '../../ast';
|
|
3
|
-
export interface TransformState {
|
|
4
|
-
variablesUsed: Record<string, true>;
|
|
5
|
-
}
|
|
6
|
-
export declare function transform(node: OperationDefinitionNode): LuvioOperationDefinitionNode;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
declare const isArray: (arg: any) => arg is any[];
|
|
2
|
-
declare const create: {
|
|
3
|
-
(o: object | null): any;
|
|
4
|
-
(o: object | null, properties: PropertyDescriptorMap & ThisType<any>): any;
|
|
5
|
-
}, keys: {
|
|
6
|
-
(o: object): string[];
|
|
7
|
-
(o: {}): string[];
|
|
8
|
-
};
|
|
9
|
-
export { isArray as ArrayIsArray, keys as ObjectKeys, create as ObjectCreate, };
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { VariableDefinitionNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioVariableDefinitionNode } from './ast';
|
|
3
|
-
import type { TransformState } from './operation/query';
|
|
4
|
-
export declare function transform(variableDefinitions: VariableDefinitionNode, transformState: TransformState): LuvioVariableDefinitionNode;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { ASTNode } from 'graphql/language';
|
|
2
|
-
import type { LuvioSelectionNode } from './ast';
|
|
3
|
-
import type { TransformState } from './operation/query';
|
|
4
|
-
export declare function selectionSetVisitor(ast: ASTNode, luvioSelectionPath: LuvioSelectionNode[], transformState: TransformState): void;
|
|
File without changes
|