125 lines
3.6 KiB
Python
125 lines
3.6 KiB
Python
"""GraphQL Utilities
|
|
|
|
The :mod:`graphql.utilities` package contains common useful computations to use with
|
|
the GraphQL language and type objects.
|
|
"""
|
|
|
|
# Produce the GraphQL query recommended for a full schema introspection.
|
|
from .get_introspection_query import get_introspection_query, IntrospectionQuery
|
|
|
|
# Get the target Operation from a Document.
|
|
from .get_operation_ast import get_operation_ast
|
|
|
|
# Get the Type for the target Operation AST.
|
|
from .get_operation_root_type import get_operation_root_type
|
|
|
|
# Convert a GraphQLSchema to an IntrospectionQuery.
|
|
from .introspection_from_schema import introspection_from_schema
|
|
|
|
# Build a GraphQLSchema from an introspection result.
|
|
from .build_client_schema import build_client_schema
|
|
|
|
# Build a GraphQLSchema from GraphQL Schema language.
|
|
from .build_ast_schema import build_ast_schema, build_schema
|
|
|
|
# Extend an existing GraphQLSchema from a parsed GraphQL Schema language AST.
|
|
from .extend_schema import extend_schema
|
|
|
|
# Sort a GraphQLSchema.
|
|
from .lexicographic_sort_schema import lexicographic_sort_schema
|
|
|
|
# Print a GraphQLSchema to GraphQL Schema language.
|
|
from .print_schema import (
|
|
print_introspection_schema,
|
|
print_schema,
|
|
print_type,
|
|
print_value, # deprecated
|
|
)
|
|
|
|
# Create a GraphQLType from a GraphQL language AST.
|
|
from .type_from_ast import type_from_ast
|
|
|
|
# Convert a language AST to a dictionary.
|
|
from .ast_to_dict import ast_to_dict
|
|
|
|
# Create a Python value from a GraphQL language AST with a type.
|
|
from .value_from_ast import value_from_ast
|
|
|
|
# Create a Python value from a GraphQL language AST without a type.
|
|
from .value_from_ast_untyped import value_from_ast_untyped
|
|
|
|
# Create a GraphQL language AST from a Python value.
|
|
from .ast_from_value import ast_from_value
|
|
|
|
# A helper to use within recursive-descent visitors which need to be aware of
|
|
# the GraphQL type system
|
|
from .type_info import TypeInfo, TypeInfoVisitor
|
|
|
|
# Coerce a Python value to a GraphQL type, or produce errors.
|
|
from .coerce_input_value import coerce_input_value
|
|
|
|
# Concatenate multiple ASTs together.
|
|
from .concat_ast import concat_ast
|
|
|
|
# Separate an AST into an AST per Operation.
|
|
from .separate_operations import separate_operations
|
|
|
|
# Strip characters that are not significant to the validity or execution
|
|
# of a GraphQL document.
|
|
from .strip_ignored_characters import strip_ignored_characters
|
|
|
|
# Comparators for types
|
|
from .type_comparators import is_equal_type, is_type_sub_type_of, do_types_overlap
|
|
|
|
# Assert that a string is a valid GraphQL name.
|
|
from .assert_valid_name import assert_valid_name, is_valid_name_error
|
|
|
|
# Compare two GraphQLSchemas and detect breaking changes.
|
|
from .find_breaking_changes import (
|
|
BreakingChange,
|
|
BreakingChangeType,
|
|
DangerousChange,
|
|
DangerousChangeType,
|
|
find_breaking_changes,
|
|
find_dangerous_changes,
|
|
)
|
|
|
|
__all__ = [
|
|
"BreakingChange",
|
|
"BreakingChangeType",
|
|
"DangerousChange",
|
|
"DangerousChangeType",
|
|
"IntrospectionQuery",
|
|
"TypeInfo",
|
|
"TypeInfoVisitor",
|
|
"assert_valid_name",
|
|
"ast_from_value",
|
|
"ast_to_dict",
|
|
"build_ast_schema",
|
|
"build_client_schema",
|
|
"build_schema",
|
|
"coerce_input_value",
|
|
"concat_ast",
|
|
"do_types_overlap",
|
|
"extend_schema",
|
|
"find_breaking_changes",
|
|
"find_dangerous_changes",
|
|
"get_introspection_query",
|
|
"get_operation_ast",
|
|
"get_operation_root_type",
|
|
"is_equal_type",
|
|
"is_type_sub_type_of",
|
|
"is_valid_name_error",
|
|
"introspection_from_schema",
|
|
"lexicographic_sort_schema",
|
|
"print_introspection_schema",
|
|
"print_schema",
|
|
"print_type",
|
|
"print_value",
|
|
"separate_operations",
|
|
"strip_ignored_characters",
|
|
"type_from_ast",
|
|
"value_from_ast",
|
|
"value_from_ast_untyped",
|
|
]
|