summaryrefslogtreecommitdiff
path: root/school/node_modules/graphql/utilities/concatAST.js.flow
blob: 0e0bb5fd860e8545258195935259a399ccae36a2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// @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 };
}