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.
20 lines
488 B
20 lines
488 B
4 months ago
|
import { Kind } from '../language/kinds.mjs';
|
||
|
/**
|
||
|
* 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) {
|
||
|
const definitions = [];
|
||
|
|
||
|
for (const doc of documents) {
|
||
|
definitions.push(...doc.definitions);
|
||
|
}
|
||
|
|
||
|
return {
|
||
|
kind: Kind.DOCUMENT,
|
||
|
definitions,
|
||
|
};
|
||
|
}
|