graphql/validation
The graphql/validation
module fulfills the Validation phase of fulfilling a
GraphQL result. You can import either from the graphql/validation
module, or
from the root graphql
module. For example:
import { validate } from "graphql/validation" // ES6
var { validate } = require("graphql/validation") // CommonJS
Overview
function validate
Validates an AST against a provided Schema.var specifiedRules
A list of standard validation rules described in the GraphQL specification.
Validation
validate
function validate(
schema: GraphQLSchema,
ast: Document,
rules?: any[]
): GraphQLError[]
Implements the “Validation” section of the spec.
Validation runs synchronously, returning an array of encountered errors, or an empty array if no errors were encountered and the document is valid.
A list of specific validation rules may be provided. If not provided, the default list of rules defined by the GraphQL specification will be used.
Each validation rules is a function which returns a visitor (see the language/visitor API). Visitor methods are expected to return GraphQLErrors, or Arrays of GraphQLErrors when invalid.
Visitors can also supply visitSpreadFragments: true
which will alter the
behavior of the visitor to skip over top level defined fragments, and instead
visit those fragments at every point a spread is encountered.
specifiedRules
let specifiedRules: Array<(context: ValidationContext) => any>
This set includes all validation rules defined by the GraphQL spec