You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

18 lines
555 B

// @flow strict
import type { DocumentNode } from '../language/ast';
/**
* Provided a collection of ASTs, presumably each from different files,
* concatenate the ASTs together into batched AST, useful for validating many
* GraphQL source files which together represent one conceptual application.
*/
export function concatAST(
documents: $ReadOnlyArray<DocumentNode>,
): DocumentNode {
let definitions = [];
for (const doc of documents) {
definitions = definitions.concat(doc.definitions);
}
return { kind: 'Document', definitions };
}